- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
消息驱动机制下的MCU操作系统的设计.pdf
山西电子技术 软件技术
2010年第1期
文章编号:1674-4578(2010)01-0061-01
消息驱动机制下的MCU操作系统的设计
孙菁,唐池连
(中山职业技术学院,广东中山528403)
摘要:好的嵌入式系统需要软件系统与硬件系统的完美配合,良好的人机界面以及消息驱动机制在一个功
能丰富的系统中也是必不可少的。以Windows操作系统的消息机制为指导,在单片机系统的开发上做出了新的尝
试,将消息机制引入到AVR嵌入式系统的设计中,不仅提高了MCU的处理效率,也利于电子产品的后期完善与升级。
关键词:事件驱动;消息驱动;算法
中图分类号: 文献标识码:A
O引言 2消息驱动机制下的AVR操作系统设计
开发嵌入式系统,除了配置项目需要的各项硬件资源和 消息驱动和事件驱动相比一个最大的优点在于,它避免
设计外围设备的驱动模块,还要考虑如果构建一个完整的软 了由于查询或中断直接处理任务而影响了其它事件的服务。
件操作系统,并按照一定的规则和逻辑结构来编写高层软 通过建立动态连接库,中断源将消息投递到消息队列中后
件。在此基础上还需要一个可靠的任务调度制度来保证所 转而去执行其它任务,不会将时间消耗在某一个任务上,具
有代码的协调运行。在一般的单片机系统中,调度制度常采 体的工作则是由主函数中消息循环中的派遣函数来指向某
取前后台方式,也就是大循环和中断来处理数据并做出反应 一个具体的处理函数,再返回处理结果。
也就是事件驱动机制。对于多任务的嵌入式系统来说,采用 消息是由系统捕获的并放在系统队列中去的。主函数
支持多任务调度的消息驱动机制是个不错的选择。当然,两
种方式没有绝对的优与劣,选用时可根据产品体系规模,性
能的具体要求来选择。 处理函数中将对各类可能出现的消息进行识别和响应,最终
l事件驱动与消息驱动的比较 完成程序的各类功能。
WritePointer写函
Besd
对于一个单任务或少任务的操作系统来说,可以把系统 数人口地址 Pojnler写函
数人口地址
设计成如下图I所示: WritePointer写函 Read
Pointer写函
数参数 消 数参数
=口 息
中断标志判断 队
列
后台循环
图1前后台机制
查询方式的事件驱动中,因为查询时间是固定的,任务
越多,查询一周的时间就越长,一般不适宜在多任务,复杂的
圈2消息队列
系统中使用;而中断方式的事件驱动中,中断服务程序提供
文档评论(0)