电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

基于实时操作系统μcos-ii的应用程序开发

23页
  • 卖家[上传人]:xzh****18
  • 文档编号:56611866
  • 上传时间:2018-10-14
  • 文档格式:PPT
  • 文档大小:105.50KB
  • / 23 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、2004年2月,1,第三讲: 基于实时操作系统 C/OS-II的应用程序开发 主讲:王哲华 2004年2月,浙江大学先进控制研究所 浙大中控技术有限公司技术中心开发七部,嵌入式实时操作系统设计技术,2004年2月,2,What is C/OS-II?,u: Micro C:control uC/OS : 适合于小的、控制器的操作系统 小巧 公开源代码,详细的注解 可剥夺实时内核 可移植性强 多任务 确定性,2004年2月,3,概要,内核结构-任务以及调度机制任务间通信多任务的实现FF通信板物理层驱动接口函数;,2004年2月,4,任务task,典型的一个无限循环。 void mytask(void *pdata) for (;) do something;waiting;do something; 支持64个任务,每个任务一个特定的优先级。优先级越高,数字越小 系统占用了两个任务,空闲任务和统计任务。,2004年2月,5,任务的状态,运行,就绪,等待,挂起可以有多个准备就绪的任务,但一个时刻只有一个任务可以运行,OSHighRdy,2004年2月,6,任务的调度-OSSched,uC/

      2、OS是占先式实时多任务内核,优先级最高的任务一旦准备就绪,则拥有CPU的所有权开始投入运行。 uC/OS中不支持时间片轮转法,每个任务的优先级要求不一样且是唯一的,所以任务调度的工作就是:查找准备就绪的最高优先级的任务并进行上下文切换。,2004年2月,7,任务间通信手段,提供OS_ENTER_CRITICAL和OS_EXIT_CRITICAL来对临界资源进行保护。 OSSchedLock( )禁止调度,保护任务级的共享资源。 提供了经典操作系统任务间通信方法:信号量、邮箱、消息队列、事件标志。,2004年2月,8,信号量semaphore,uC/OS中信号量由两部分组成:信号量的计数值和等待该信号任务的等待任务表。信号量的计数值可以为二进制, 也可以是其他整数。 系统通过OSSemPend( )和OSSemPost( )来支持信号量的两种原子操作P()和V()。P()操作减少信号量的值,如果新的信号量的值不大于0,则操作阻塞;V()操作增加信号量的值。,2004年2月,9,中断与时钟节拍,我们知道:当发生中断时,首先应保护现场,将CPU寄存器入栈,再处理中断函数,然后恢复现场,将CP

      3、U寄存器出栈,最后执行中断返回RETI指令实现中断返回。 uC/OS中提供了OSIntEnter() 和OSIntExit() 告诉内核进入了中断状态。OSIntNesting 时钟节拍是一种特殊的中断,操作系统的心脏。首先32位的整数OSTime加一。对任务列表进行扫描,判断是否有延时任务应该处于准备就绪状态,最后进行上下文切换。,2004年2月,10,多任务的启动,首先创建任务 最后调用OSStart开始多任务调度 void main( ) OSInit( );OSTaskcreat( )OSStart(); ,2004年2月,11,任务的格式,每个任务不能占用全部CPU的资源 需要有等待,或延时等系统调用 典型的一个无限循环。 void mytask(void *pdata) for (;) do something;waiting;do something; ,2004年2月,12,揭开神秘的面纱任务调度全程追踪,For example1 创建2个任务,每个任务仅仅是进行延时,延时不同的时间片,不同优先级 void Task1(void) void Task2(void) wh

      4、ile(1) while(1) blinkled1(); blinkled2();OSTimeDly(25); OSTimeDly(50); ,2004年2月,13,主程序,void main() sysinit();OSInit ();OSTaskCreate ( Task1, (void *) ,2004年2月,14,什么也不做的空闲任务,只是为了消耗CPU的时间片 void OSTaskIdle ( ) for (;) OS_ENTER_CRITICAL();OSIdleCtr+;OS_EXIT_CRITICAL(); ,2004年2月,15,时间,任务一,任务二,OSStart,Time Tick,Time Tick,1,25,50,Time Tick,空闲任务,2004年2月,16,总结,不存在一个内核任务/实体,内核的管理是通过调用系统函数来实现的。 每个任务有自己的堆栈空间。内核对任务的占先式调度不会干扰每个任务的总的运行结果。,2004年2月,17,FF通信板物理层驱动接口函数,发送接口函数;接收接口函数;链路层时钟接口函数;串口通信接口函数;,2004年2月,18,发

      5、送接口函数,数据发送是一个单独的任务FB3050SendTask,定义在test1.c中; 发送函数DLLSendProcess在DLL.c中定义; 发送数据包缓冲区FFSendDataBuf256在Ram.h中定义; 发送数据包长度变量senddatalength定义在fb3050.h中;,2004年2月,19,接收接口函数,数据接收是一个单独的任务DLPDURecvTask,定义在test1.c中; 接收函数DLLRecvProcess在DLL.c中定义; 接收数据包环形缓冲区队列RecvDLPDUTbl10 在DLL.h中定义; 接收数据包结构格式为DLPDU,定义在DLL.h ;,2004年2月,20,DLPDU数据结构,typedef struct /* The structure of DLL PDU */INT8U FCode; / frame codeINT8U FControl; / frame controlINT8U Length; / data lengthINT8U AddrType; / address typeINT8U DestAddr4; / destination addressINT8U SourAddr4; / source addressINT8U SourAddr24; / second source addressINT8U Param2; / parametersINT8U UserData256; / user data DLPDU;,2004年2月,21,链路层时钟接口函数,FB3050芯片内部自带三个定时器,计时单位分别为一个字节、1/32ms和1ms; 设置时钟SetFB3050Timer;取消时钟DisableFB3050Timer;定义在fb3050.c;,2004年2月,22,串口通信接口函数,发送是单独的任务,包括Uart0SendTask和Uart1SendTask中,定义在test1.c中; 发送数据包缓冲区分别为Uart0SendBuf128和Uart1SendBuf128,定义在Ram.h中,其中第一个字节存放数据包长度; 接收数据放在Uart0RecvBuf128和Uart1RecvBuf128,消息Uart0RxSem;,2004年2月,23,谢 谢!,

      《基于实时操作系统μcos-ii的应用程序开发》由会员xzh****18分享,可在线阅读,更多相关《基于实时操作系统μcos-ii的应用程序开发》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇 农村发展调研报告_1范文 2022年电脑说明文作文合集六篇 2022年防溺水初中生演讲稿 2021最新36岁儿童学习与发展指南心得体会 2022年新生迎新晚会策划书模板 20 xx年教育系统计划生育工作总结 英语定语讲解ppt课件 2021年4s店客服工作计划范文 2022年小学优秀作文700字四篇
     
    收藏店铺
    相关文档 更多>
    正为您匹配相似的精品文档
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.