Professional Documents
Culture Documents
Các Bư C TH C Thi 2 Task Và Đ NG B Task
Các Bư C TH C Thi 2 Task Và Đ NG B Task
Các Bư C TH C Thi 2 Task Và Đ NG B Task
- Tạo Queue: cho phép các task có thể kết nối với nhau, nó là một FIFO
buffer được định nghĩa bởi độ dài (số phần tử mà buffer có thể lưu trữ) và
kích thước dữ liệu (kích thước của các thành phần trong buffer).
+Tạo Queue dùng hàm:
osMessageQDef(myQueue01, 16, uint8_t);
myQueue01: Tên của message queue
16: Số lượng item trong queue
Uint8_t : Size của item trong queue
+Tạo message và cấp phát bộ nhớ dùng osMessageCreate() , hàm này sẽ trả về
một handle/ID được sử dụng bởi một API khác liên quan tới việc tạo
message queue.
myQueue01Handle = osMessageCreate(osMessageQ(myQueue01), NULL);
osMessageQ(myQueue01): Định nghĩa message queue
NULL: Task ID ở đây không sử dụng thì ta sẽ set NULL
- Đồng bộ gửi nhận giữa các Task với nhau.
+Gửi nhận data từ các task khác với message queue bằng cách dùng hàm
osMessagePut và osMessageGet