OS_EVENT *SemaphorePtr; OS_MEM *PartitionPtr; INT8U Partition[100][32]; OS_STK TaskStk[1000]; void main(void) { INT8U err; OSInit(); ... SemaphorePtr = OSSemCreate(100); PartitionPtr = OSMemCreate(Partition, 100, 32, err); OSTaskCreate(Task, (void *)0, TaskStk[999], err); OSStart(); } void Task (void *pdata) { INT8U err; INT8U *pblock; for (;;) { OSSemPend(SemaphorePtr, 0, err); pblock = OSMemGet(PartitionPtr, err); /* 使用内存块 */ ... OSMemPut(PartitionPtr, pblock); OSSemPost(SemaphorePtr); } } 谢 谢 各 位 学习动物精神 11、机智应变的猴子:工作的流程有时往往是一成不变的,新人的优势在于不了解既有的做法,而能创造出新的创意与点子。一味 地接受工作的交付, 只能学到工作方法 的皮毛,能思考应 变的人,才会学到 方法的精髓。 学习动物精神 12、善解人意的海豚:常常问自己:我是主管该怎么办才能有助于更好的处理事情的方法。在工作上善解人意, 会减轻主管、共 事者的负担,也 让你更具人缘。 * 任务、ISR和消息邮箱的关系 邮箱的系统服务(1) OSMboxCreate():创建一个邮箱 在创建邮箱时,须分配一个ECB,并使用其中的字段OSEventPtr指针来存放消息的地址; OS_EVENT *OSMboxCreate(void *msg); msg:指针的初始值,一般情形下为NULL。 OSMboxPend():等待一个邮箱中的消息 若邮箱为满,将其内容(某消息的地址)返回;若邮箱为空,当前任务将被阻塞,直到邮箱中有了消息或等待超时; OSMboxPend (OS_EVENT *pevent, INT16U timeout, INT8U *err); 邮箱的系统服务(2) OSMboxPost():发送一个消息到邮箱中 如果有任务在等待该消息,将其中的最高优先级任务从等待列表中删除,变为就绪状态; OSMboxPost(OS_EVENT *pevent, void *msg); OSMboxAccept():无等待地请求邮箱消息 若邮箱为满,返回它的当前内容;若邮箱为空,返回空指针; OSMboxAccept (OS_EVENT *pevent); OSMboxQuery():查询一个邮箱的状态 OSMboxQuery (OS_EVENT *pevent, OS_MBOX_DATA *pdata); 样例程序(1) OSMboxCreate()函数 OS_EVENT *CommMbox; void main(void){ ... OSInit(); ... CommMbox = OSMboxCreate((void*)0); ... OSStart(); } OSMboxPend()函数 void CommTask(void *pdata) { INT8U err; void *msg; pdata = pdata; for (;;) { ... msg =OSMboxPend(CommMbox, 10, err); if(err == OS_NO_ERR) { /* 收到消息时的代码 */ } else { /* 未收到消息时的代码*/ } } 样例程序(2) OSMboxPost()函数 OS_EVENT *CommMbox; INT8U CommRxBuf[100]; void CommTaskRx(void *pdata) { INT8U err; ... for (;;) {
您可能关注的文档
- 04财政平衡法.ppt
- 10出版物成本和定价.ppt
- 11图像编码技术.ppt
- 15类高考动词分类-配高考真题,超级全面.ppt
- 2010年特岗教师招聘考试教育学百题.doc
- 2010秋农村政策法规.doc
- 2011学年高三英语作文学生范文.doc
- 2011年07月自学考试行政管理学试题和答案.doc
- 2011年江苏省公共基础知识A类真题及答案解析.doc
- 2011管理报告.doc
- 人教版九年级英语Unit 4曾害怕课件3a-4c.pdf
- 雅思口语考题回顾:朗阁海外考试研究中心2019年10月10日Part 1考题总结.pdf
- 2026届高三地理一轮复习课件小专题河流袭夺.pptx
- 【名师原创】复习专题5 三角函数 作者:合肥市第八中学 蒲荣飞名师工作室.docx
- 高中数学一轮复习 微专题2 抽象函数.docx
- 高中数学——复习专题4 空间向量与立体几何.docx
- 高中数学一轮复习 微专题3 空间几何体中的截面、轨迹问题.docx
- 高中数学一轮复习 微专题4 空间几何体的最值、范围问题.docx
- 导流洞施工质量通病防治手册.docx
- 江苏省徐州市第一中学、徐市第三中学等五校2026届高三上学期12月月考历史试题含答案.docx
原创力文档

文档评论(0)