2022年系列单片机实时操作系统方案.docx
《2022年系列单片机实时操作系统方案.docx》由会员分享,可在线阅读,更多相关《2022年系列单片机实时操作系统方案.docx(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用基于8051系列单片机的实时操作系统设计1、绪论8051系列单片机系统广泛应用于工控、仪器外表、通信等领域,为了防止其软件开发的重复性工作,提高所编软件的牢靠性,结合自主开发的、基于 AT89C51单片机为核心的硬件平台,实现了一个基于该平台的实时操作系统;该操作系统具有一个基于C语言的、实时多任务的内核,有较好的移植性;单片机在嵌入式微掌握系统应用中具有特别重要的位置;在嵌入式系统中使用实时操作系 统已经成为嵌入式应用的一种趋势,是单片机高水平应用开发的一个标志;一个好的实时操作系统可大大提高掌握产品的研制效率,缩短
2、开发时问,有利于多人的分工协作,用RTOS开发的产品稳固性、牢靠性也会得到提高;2、 硬件平台简介2.1 8051系列微掌握器简介目前,8051 系列芯片已达 400 多种,可分成 3个主要类别 :标准 8051系列、小型 8051系列和扩展 8051系列;小型 8051系列是8051系列芯片中低成本的类别,端口管脚数目少,不支持片外储备器,主要应用在低成本的消费类产品;扩展8051 系列是 8051芯片中加有扩展的片上设备,如CAN 总线掌握器、 DAC 、ADC 等,其端口管脚数目比较多,且最近的此类芯片都支持大容量的片 外储备器,主要应用在工业及汽车系统中;本文所述操作系统的硬件平台使用
3、的微掌握器是标准 8051 系列芯片;由于小型以及扩展的 8051系列芯片都是由标准 8051系列芯片衍变而来,所以本 8051系列芯片的嵌入式系统上进行移植;系统也可以在任何基于2.2 硬件平台一个典型的单片机应用系统包括基本部分、输入部分 测控增强部分 和输出部分 外设增强部分 ;基本部分主要是单片机及其外围芯片的扩展 如RAM 和ROM、功能键盘、显示器的配置等,它们是通过内总线连接而成;测控增强部分主要由传感器、变送器、转换器等接口及伺服驱动掌握接口构成;外设增强部分主要是外设接口,它通 过I/O 口或扩展的 I/O 口构成,可接打印机等外设;该实时操作系统是基于 硬件平台上实现的,其
4、结构如图 1所示;AT89C51单片机为核心的单片机系统名师归纳总结 - - - - - - -第 1 页,共 7 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用图1硬件平台结构3、实时操作系统的设计3.1 实时系统的特点对于实时响应时间,不同的应用系统有不同的要求,即使在同一个应用系统内部 , 不同的应用场合也有不同的要求;在实时系统里 , 除了实时响应外,另外一个问题是系统的流通量或吞吐量,实时系统的吞吐量可以定义为 每单位时间系统可以处理的大事个数;实时任务具有截止期,分硬实时、软实时和固实时;硬实时是指假如响应超过了任务 截止期,可能会导致严峻后果;软实
5、时是指虽然响应超过了任务截止期,但仍是有肯定的 价值;固实时是指假如超过了截止期才响应处理,就完全没有价值了;实时任务具有可猜测性,在最坏情形下的任务的执行时间以及所需数据和资源,都要求对最坏情形的猜测与实际的 差别尽可能的小,即使在显现峰值负载时 , 也应满意其截止期;3.2 实时操作系统与实时系统的关系及其特点实时操作系统是实时系统软件的基础,所实现的功能是系统资源的治理和机器功能的 扩充;因此实时操作系统和通用操作系统是有肯定差别的,有其自己的一些重要特点,包 括进程切换快、中断被屏蔽时间短、规模小等;3.3 嵌入式系统的 2种触发方式在嵌入式系统设计时,通常采纳大事触发和时间触发 2种
6、方式来实现;大事触发行为往往通过使用中断实现,大事触发系统在系统总体结构上往往通过供应 多级中断服务程序来支持该功能;假如多个中断源可能在“ 随机的 ”时间间隔产生中断,就 中断响应可能被遗漏;8051的体系结构支持高和低两种不同的中断优先级,将可能显现中 1 断信息丢失的情形;例如,有高优先级的中断 发生,并在极短的时间内又发生了中断 2,这时无论中断 2是高优先级仍是低优先级中断,中断 2的响应都会被推迟,并在一些情形下 如被推迟时间过长等 被完全忽视;因此,在某些与安全相关的应用系统中选用时间触发方法,这样设计人员能预先支配名师归纳总结 - - - - - - -第 2 页,共 7 页精
7、选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用可控的次序,保证一次只处理一个大事,提高了系统的牢靠性并降低 储器的使用量;3.4 调度器的设计CPU的负荷,削减存调度器可以看作是一个简洁的操作系统;从底层的角度来看,调度器可看作是一个由 很多不同任务共享的定时器中断服务程序,答应以周期性或单次方式来调用任务,其分为 合作式调度器与抢占式调度器两大类:合作式调度器供应的是一种单任务的系统结构,比 较简洁,用很少的代码就可实现,每次只需为一个任务安排储备器,具有可猜测性和牢靠 性,但是在当前的程序运行期间,系统对外界的变化不敏锐;抢占式调度器供应了一种多 任务的系统结构
8、,比较复杂,必需为抢占任务的全部中间状态安排储备器,对外部大事的 响应速度快,但其可猜测性和牢靠性较低;实时系统的任务都有一个截止期,单独使用抢占式调度方式或合作式调度方式都不能 完全满意实时系统的要求,必需使用一种混合式调度器,依据实时系统的要求来设置定时器的定时时间 .假设有 2个任务, 1个必需在 20 ms内完成,因此取它们的最大公约数 10 ms内完成,另 1个必需在 30 ms来作为定时器的定时时间;使用定时器 0的模式 1来进行定时,就可以运算出 T0 的初值为 T0D8F0H ,程序实现如下 部分程序 :#define p re_t0H 0xD8 #define p re_t0
9、L 0xF0 / / 依据定时时间运算出的初值 void timer_t0_init void TMOD = 0x10 ; / / 设置定时器 0的工作模式 TH0 = p re_t0H ;TL0 = p re_t0L ; / /送初值 ,定时时间为 10ms TR0 = 1; / / 启动定时 ET0 = 1; / / T0 开中断 EA = 1 ; / / CPU开中断 void attemper_timer0 void interrup t2 using 1 / / 定时器 0的中断服务程序/ /定时时间到 ,判定是否进行任务切换挑选最高优先级的任务来执行,代码略 调度器依据在系统进行初
10、始化时用户的预设值将中断和某些外设设置为抢占式任务,抢占式任务是最高优先权的任务;在调度期间,只有1个抢占式任务,该任务一旦开头运行将连续运行到其完成,以削减任务切换所耗费的时间,因此要求这些中断处理任务和外设处理任务的时间必需小于定时器的时间间隔,尽量更短,否就会影响系统对其他中断的响应或对其他设备的处理 .对于除用户预设的中断和外设之外的大事将采纳分时方式进行处理;3.5 任务及任务间通信每个任务都安排在不同的储备空间,通过指针变量 3 TASK_pnum 来指向任务的首地址;每个任务都有自己的存在状态运行态、就绪态、休眠名师归纳总结 态、挂起态和被中断态和优先级 为明白决任务优先级翻转问
11、题,系统可以通过函数void p 第 3 页,共 7 页- - - - - - -精选学习资料 - - - - - - - - - rio_change un2signed int 3 个人资料整理仅限学习使用task_adr, unsigned char p rio_ st, unsingedchar p rio_ced来动态调整任务的优先级 的数据结构定义如下:typedef struct ,任务间使用信号量或消息队列来进行相互通信;任务unsigned char task_name; / /任务名 unsigned char realtask; / /是否为实时任务 , 0为否 ,其他为
12、是 unsigned char p rio ; / /任务优先级 unsigned char state; / /任务状态 unsigned char err; / /出错信息 unsigned char 3 p tos; / /栈顶指针 unsigned int stk_size ; / /堆栈大小 以字节为单位 TASK ;3.6 中断处理系统中的实时任务不仅包括某些中断处理,仍包括部格外设处理任务;中断是一种硬件机制,用于通知CPU有异步大事发生了,系统对中断T0除外 分2步处理,第 1步是中断响应,第 2步是中断处理 , 共有 3种处理方式;1 在中断发生之前不存在实时任务,并且在中断
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 系列 单片机 实时 操作系统 方案
限制150内