- 0
- 0
- 约3.47千字
- 约 19页
- 2019-02-14 发布于上海
- 举报
内核实验七(消队列)
* * * * * * * 肇庆学院嵌入式嵌入式系统应用研究所 内核实验(七) 消 息 队 列 实验目的 掌握嵌入式实时操作系统μC/OS-II中消息队列机制的基本原理和使用方法。 消息队列是μC/OS-II中的一种通讯机制,它可以使一个任务或者中断服务子程序向另一个任务发送以指针方式定义的变量。因具体的应用有所不同,每个指针指向的数据结构变量也有所不同。 消息队列原理 7个应用任务: TA0TA1TA2TA3TA4TA5TaskCon(控制任务) 创建队列 以FIFO方式释放消息 以LIFO方式释放消息 清空消息队列、查询消息队列 删除消息队列 实验设计 #define OS_LOWEST_PRIO 11 /*任务优先级不可以大于11*/ #define OS_TASK_CREATE_EN 1 /*允许使用OSTaskCreate()*/ #define OS_MAX_TASKS 8 /*最多可以创建8个任务*/ #define OS_TASK_STAT_EN 0 /* 禁止统计任务*/ 操作系统配置 #define OS_Q_EN 1 /*是否允许使用消息队列功能*/ #define OS_Q_DEL_EN 1 /*是否允许使用OSQDel()*/ #define OS_Q_FLUSH_EN 1 /*是否允许使用 OSQFlush()*/ #define OS_Q_POST_EN 1 /*是否允许使用 OSQPost()*/ 操作系统配置 #define OS_TICKS_PER_SEC 200 /*设置每秒之内的时钟节拍数目*/ #define OS_MAX_EVENTS 2 /*最多可以有2个事件*/ #define OS_Q_POST_FRONT_EN 1 /*是否允许使用OSQPostFront()*/ #define OS_Q_QUERY_EN 1 /*是否允许使用OSQQuery()*/ OSTaskCreate():建立一个新任务 本实验中所用到的μC/OS-II相关函数 OSQCreate() :建立一个消息队列 OSQPend() :等待消息 OSQPostFront() :向消息队列发送消息 OSQPost():向消息队列发送消息 OSQQuery() :取得消息队列的信息 OSQDel() :删除消息队列 OSTimeDlyHMSM():将一个任务延时若干时间 OSQFlush ():清空消息队列 1、建立队列和创建起始任务TaskStart OSTaskCreate(TaskStart, (void *)0, TaskStartStk[TASK_STK_SIZE - 1], 0); q1 = OSQCreate(Msg1[0],6); q2 = OSQCreate(Msg2[0],6); 源程序说明 TaskStart负责: 安装时钟中断服务例程 ucos_x86_idt_set_handler(0x20,(void *)OSTickISR,0x8e00); 初始化操作系统时钟 ucos_timer_init(); 创建应用任务 TaskStartCreateTasks(); 源程序说明 2、创建任务 for (i = 0; i N_TASKS; i++) { OSTaskCreate(Taskq1, (void *)TaskData1[i], TaskStk1[i][TASK_STK_SIZE - 1], i+1); } for (i = 0; i N_TASKS; i++) { OSTaskCreate(Taskq2, (void *)TaskData2[i], TaskStk2[i][TASK_STK_SIZE - 1], i+4); } OSTaskCreate(TaskCon, (void *)0, TaskConStk[TASK_STK_SIZE - 1],i+4); 源程序说明 void Taskq1 (void *pdata) { …… for (;;) {
您可能关注的文档
最近下载
- 2025年上海高考英语复习必背考纲词汇手册默写.docx VIP
- 西门子6RA70系列全数字直流调速装置手册.pdf VIP
- 幼小衔接拼音基础练习《韵母教学》教学PPT课件(完整版).pdf VIP
- 《纳米保鲜技术》课件.pptx VIP
- 妇产科研究生毕业英语考试题.pdf VIP
- 2025年IGCCODE国际散装运输液化气体船舶构造和设备规则.pdf VIP
- 2026年社会工作者职业资格考试题库(附答案和详细解析)(0118).docx VIP
- 世界地图世界地图中文版世界地图高清版全图.pdf VIP
- 汉文化启蒙教育读本成语接龙(上).pdf VIP
- DB50_T 1941-2025 困境儿童家庭监护能力评估规范.pdf VIP
原创力文档

文档评论(0)