嵌入式实时操作系统uc_OS_在MSP430F149上的移植应用
于MSP430F149单片机的实时多任务操作系统

关键词:RTOS、任务调度、MSP430
1 RTOS的基本概念
实时多任务操作系统(RTOS-Real Time Operating System)是根据操作系统的工作特性而言的。实时是指物理进程的真实时间。实时操作系统是指具有实时性,能支持实时控制系 统工作的操作系统。首要任务是调度一切可利用的资源完成实时控制任务,重要特点是要满足对时间的限制和要求。
mov.w #(栈底 + 2) , r11
clr.w Task_Tick(r10) ;清0时钟滴嗒数
mov.w #任务首地址 , 0(r11) ;把任务地址压入堆栈
mov.w SR , -2(r11) ;把标志寄存器放入任务栈
mov.w r11 , Task_SP(r10)
5) 不支持信号量、邮箱功能;
6) 任务状态只有三种:运行(Executing),就绪(Ready),挂起(Suspended);
7) 系统占用RAM量=((任务个数+1)×4)+6个字节,不包括任务堆栈;
8) 代码量少,目前版本的代码共有87行汇编代码,256字节目标代码;
6) OS_Task_Unlock:解锁任务调度,和上面的子程序功能相反。
7) OS_Task_Wakeup:唤醒指定优先级的任务,并产生一次任务调度,如果被唤醒任务的优先级比当前运行的任务的优先级高,就会任务切换到被唤醒的任务中,否则等待下一个调度时机。
3.3 主要功能的实现
a) 任务初始化
1) 采用占先式内核,即高优先级的任务可以从低优先级任务"抢"回CPU控制权;
2) 每个任务都单独开辟一个任务栈;
3) 每个任务占十几到几百个字节的任务堆栈,任务栈的大小可以根据任务中现场数据、局部变量和嵌套调用的情况估算;
嵌入式实时操作系统μC/OS-Ⅱ在C8051F020上的移植

嵌入式实时操作系统μC/OS-Ⅱ在C8051F020上的移植郭雨梅;闫磊
【期刊名称】《沈阳工业大学学报》
【年(卷),期】2004(26)6
【摘要】通过对嵌入式实时操作系统应用背景的分析,简略介绍了源代码开放的嵌入式实时操作系统μC/OS-Ⅱ及微控制器C8051F020的特点,详细阐述了
μC/OS-Ⅱ在C8051F020上的移植;进一步讨论了移植过程中所遇到的问题,并对需要编写的相关函数进行深入细致的分析,提出了相应的示意性代码,在此基础上,根据系统的要求改进了原有的堆栈结构.
【总页数】1页(P695-695)
【关键词】μC/OS-Ⅱ;嵌入式实时操作系统;C8051F020;堆栈;代码;微控制器;移植;分析;问题;要求
【作者】郭雨梅;闫磊
【作者单位】沈阳工业大学信息科学与工程学院,沈阳110023
【正文语种】中文
【中图分类】TP316;TP368
【相关文献】
1.嵌入式实时操作系统μC/OS-Ⅱ在C8051F020上的移植 [J], 郭雨梅;闫磊
2.嵌入式实时操作系统μC/OS-Ⅱ在LPC2131上的移植 [J], 凌筱清;刘宪鹏
3.嵌入式实时操作系统μC/OS-Ⅱ在LPC2378上的移植及应用 [J], 孙继如;郭敏;
张宇翔;王明利
4.嵌入式实时操作系统μC/OS-Ⅱ在DSP上的移植 [J], 皇甫睿;宋志刚
5.嵌入式实时操作系统μC/OS-Ⅱ在MPC5604B上的移植 [J], 罗先银;吴光强因版权原因,仅展示原文概要,查看原文内容请购买。
嵌入式实时操作系统UC/OS-Ⅱ及在DSP上的移植

应用 于 各种 系统 中,性能 值得 信 赖 。
2 可 移 植性 好 _ 2
U / — 绝大 多数 源 码 用ANS C OSI I I C写成 ,与 处
能 随时 被 中断 ,这是 多任务运 行 的基 本要 求 。 2 . 3可裁 剪及 可 固化 以 T 30 26 目 标 C U时 , UCOSI的 MS 2 C 0 为 P / — I
关 键 词 :UC O — 移植 / SI I 中 图分 类号 :M7 9 T 6
T 3 0 2 6DS 。 MS 2 C 0 P
Ke y wor :UC/ I Trns a t TM S3 ds O —I a pl n 20C2 SP 06D
文献标识码 : B
1前 言 .
广州 南方 电力集 团科技 发 展有 限 公司 詹兴 俊
Gun z o na gP we ru ce c a g h uNa fn o r o pS i e&T cn lg e eo me t o L d Z a njn G n eh oo yD v lp n . t. h nXigu C
维普资讯
嵌 人式实时操 作系统U / — 及在DS 上的移植 COSI I P
嵌 入 式 实 时 操 作 系统UC OSI 在 DS 上 的 移 植 / —及 I P
UC/ S・IEm be ・ e I sa tOp r to yse a t r ns l n o DSP O ・ I d- t yp n t n e a i n S t m nd isT a p a t t
Ab t a t I i p p r t e f a e fUC/ —I si t d c d b if , h y a d n t e o st n p a t o TM S 2 C2 6 s r c : n t s a e , h e t so h ur OS I i r u e r l t e wa n o i sf ri a s ln n o ey c t r t 30 0 DS r n l z d i ea l a dt e o e ai n st t no / —I n T S 2 C2 6 DS a e n a s a i ae . P a ea a y e d t i n p r t i i f n , h o ua o UC OS I i M 3 0 0 Ph sb e lo v l td d
嵌入式实时操作系统uc/OSⅡ在MSP430F149上的移植应用

su c cde i etd n p l d Th sse o re o s tse a d a pi . e e ytm a o t h w y d l t k s f r ein ise d f te ta iin lfr a d a k ru d e o . d ps e a o mut a ot e d sg n ta o h r dt a o n b c go n mb d t is wa o id s f r d sg .1h y e ot  ̄ ei wa n _e wa ma e te ytm mo lrz d tC o ec me h s o c mig o h rd t n y a d o s p te ra—i a k s h sse duaie ,i a n v ro te h r o n fte ta ii a wa t ol n b o tu h e tme . l
维普资讯
科 黑江— — 龙— 技式实时操作系统 u/ SI在 cO I MS 4 0 9上 的移植 应 用 P 3F 4 1
李 锐
( 南京 邮 电 大 学 , 苏 南 京 2 0 o ) 江 10 0
摘 要 : 绍 了使 用 T 公 司 的超 低 功 耗 MS 4 0单 片 机 与 u/ S I 相 结 合 设 计 数 据 采 集 控 制 系统 的 方 法 , 于编 译 器 I 31A 版 本 详 细 讨 介 I P3 cO I 基 AR ,0 论 了 u/ S I在 MS 4 0 1 9上 的移 植 的 实现 过 程 , 出 了在 u / S I 的 移 植 过程 中 的 重 点 和 难 点 问 题 , 出 了 H/ S I在 MS 4 0上 移 植 的 一 c O I P 3F4 指 c O I 得 C 0 I P3
嵌入式实时操作系统μCOS-II 摘要

$0000 $0400 $0800
$2000
$4000
1KB 寄存器区 EEPROM RAM
8KB 未定义
1KB 寄存器
2KB EEPROM
8KB RAM
16KB 固定Flash
$3E $8000
8个16KB 页面Flash
16KB 分页Flash
关键词:实时操作系统;μC/OS-II;MC9S12DG128 单片机;移植
中图分类号:TP 368.2
文献标识码:A
Transplantation of Embedded real-time operating system μC/OS-II into S12 MCU (Department of Computer Engineering, Anyang Institute of Technology, Anyang
$38 $39 $3A $3B $3C $3D $3E $3F
$C000
$3F 16KB 固定Flash
$FF00
中断向量区
$FFFF
图 1 MC9S12DGl28 复位后的内存空间分布情况
可以通过设置 INITRG,INITRM,INITEE 寄存器来重新分配各存储器的位置。这些 寄存器只能写一次,建议在初始化时分配存储器的位置。如果映射出现地址重叠时, S12CPU 内部的优先级控制逻辑会自动屏蔽级别较低的资源,保留级别最高的资源。寄存 器具有最高优先级,与其重叠的 RAM 和 EEPROM 此时无效。存储器的优先级如下表所列。
μC/OS-II 的 95%代码是由 ANSI C 写成的,具有很好的移植性。要实现 μC/OS-II 向 S12 的移植,主要是做两方面的工作,一是重新定义内核的大小和功能;二是为内核 编写与硬件相关的代码。μC/OS-II 的文件结构如图 2 所示。
嵌入式实时操作系统μCOS-Ⅱ的移植

嵌入式实时操作系统μCOS-Ⅱ的移植1、引言嵌入式系统由于它具有软件代码小、高度自动化、响应速度快等特点已经使它在许多领域得到广泛的应用[3]。
从家里的洗衣机、电冰箱,到作为交通工具的自行车、小汽车,到办公室里的远程会议系统等。
嵌入式系统通常由硬件环境和操作系统构成。
在嵌入式操作系统的统一调度管理下实现对所有系统资源的合理利用和分配,达到提高系统性能和有效利用有限资源的目的。
μCOS-Ⅱ作为一个源码开放的嵌入式实时操作系统,同时具有良好的可移植性、可裁剪性、可剥夺性、稳定性和可靠性等优点,使其成为许多嵌入式操作系统的首选。
本文将μCOS-Ⅱ在Freescale的8位处理器芯片HC9S08上移植实现。
2、μCOS-Ⅱ系统结构μCOS-Ⅱ是一个完整的可移植可固化可裁剪的抢占式实时多任务内核。
可以在不需要做很大修改的基础上方便的移植到多种处理器上。
条件是:该处理器要具有一定数量的堆栈,能够使用软件中断,产生定时器中断,此外,编译器要支持可重入代码,并且要能使用汇编实现对处理器内部寄存器的相关操作[2][4]。
通过μCOS-Ⅱ的管理,使多个任务之间相互协调,分时的占用CPU,实现充分利用资源和实时等相应的功能。
任务通常是一个死循环,用来完成某一特定的功能;一个任务相当于一个线程。
μCOS-Ⅱ可以管理多达64个任务,每个任务都具有一个唯一的合法优先级。
但是,优先级最低的那个任务已经被系统定义为空闲任务,用户不能使用。
用户可以通过函数OSTaskCreate()来创建任务,通过OSTaskDel()来删除任务。
任务可能有以下五种状态:睡眠态、就绪态、运行态、等待状态、中断服务态。
利用不同的系统函数可以实现任务在各状态之间的转换。
μCOS-Ⅱ通过对就绪表的操作总是选择在就绪任务中优。
嵌入式RTOS在MSP430单片机上的实现

的 优先级 。任 务调 度时 , 先执行 高 优先 级 的任 务 ,
然 后 按 照 优 先 级 由 高 到 低 执 行 任 务 。 如 果 在 某 个 任 务 执 行 中 , 激 发 了 一 个 优 先 级 更 高 的 任 务 , 那 么 在 该 任 务 执 行 结 束 后 , 将 由 任 务 调 度 器 调 度 去 执 行 所 激 发的 高 优 先级 任 务 ,而 不 是顺 序 执行 。 下 面就 C OSI 在 T 公 司生 产 的 M S 4 0 18 / . I I P 3 F 4 芯 片 上 的 移 植 和 应 用 来 探 讨 在 单 片 机 上 实 现 RTOS
至仅 l A 以下 。
节 , 并且能 够根据 自己的需 求进行 移植 和修 改 。特
别 重 要 的 是 C/ .I 过 8年 的 发 展 , 已 经 成 功 OS I 经 地 在 多个行 业得 到 应用 ,保 证 了实 用性 和 可 靠性 。 它 的 出 现 改 变 了 以 前 人 们 在 使 用 RTOS时 的 态 度 , 减 少 了经 济 上 的 顾 虑 , 对 于 国 内 RT OS的 研 究 、推
◇
超 低 功 耗 。 由 于 内 置 了 功 耗 极 低 的 快 速 闪
也 给 国 内 的 R OS应 用 者 带 来 了惊 喜 。 lC OS I 的 T a / . I 最 大 优 点 与 L n x相 同 , 即 其 源 代 码 全 部 公 开 , 使 iu 人 们 在 应 用 它 的 同 时 能 清 楚 地 了 解 内 部 的 实 现 细
可 能 遇到 的 一 些 问题 。
单 片机作 为嵌 入 式信 息产 品的 一个 重要 应用 方
面 , 其 使 用 、 设 计 面 临 着 全 新 的 挑 战 。 一 方 面 , 人 们 对嵌 入 式 产 品 的 要 求 越 来 越 高 的 信 息 产 品 将 成 为 人 们 的 首 选 。 另
基于ucos和MSP430F149温湿度检测系统的设计

基于ucos和MSP430F149温湿度检测系统的设计作者:李长昊吴蕾来源:《中国科技博览》2016年第24期[摘 ;要]介绍了基于UCOS-II和MSP 430 单片机的温湿度检测系统的设计方案. 该系统采用温湿度传感器DHT11实现温湿度检测,将采集到的温湿度信号送到带有ucos操作系统的MSP430F149单片机进行数据分析处理后,在LCD12864液晶进行实时显示,并通过串口传送给PC机。
经实验验证表明,该温湿度检测系统精度高、操作方便、线路简单、易扩展,具有良好的实际应用价值。
[关键词]ucos ;MSP430F149 ;DHT11 ;温湿度检测中图分类号:TP277 文献标识码:A 文章编号:1009-914X(2016)24-0115-02随着时代的发展和社会的不断进步,越来越多的行业需要对温湿度进行检测.针对以上情况,研制可靠且实用的温度和湿度检测系统就显得非常重要。
因此,为了随时可以检测环境的温湿度以进行监测,减少由于温湿度对工程带来的经济损失,笔者设计了一种基于MSP430F149和DHT11温湿度传感器的温湿度测量系统,可以实现对环境温湿度的实时监测和超限报警。
1 总体设计方案本系统采用的主控制单元是美国TI公司开发的16 位超低功耗,高性能微处理器MSP430F149,采用的嵌入式实时操作系统UCOS-II,?与报警模块、液晶显示模块、温湿度采集模块、按键输入模块、通信模块等外围电路一起构成了基于MSP430温湿度检测系统。
该系统具有以下主要功能:①能够检测当前环境的温度、湿度;②能通过LCD液晶显示器显示检测结果;③检测到的温湿度数据可以通过串口(RS232协议)传送给PC机;④设定温湿度上下限值,超过限定值后,可以声光报警功能。
2 硬件设计2.1 主控单元MSP430F149单片机是TI公司推出的功能强大的超低功耗、具有精简指令集(RISC)的16 位混合信号处理器(Mixed Signal Processor)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
栈的上下文保存结构与任务切换的实现密切相
关, 所以, 在设计堆栈的上下文结构的时候, 必须
把能方便和快速地实现任务切换作为一个重要
因素来考虑。
4.3 OSStartHighRdy 的实现。操作系统初始
化后, 开始执行系统内第 1 个最高优先级的任
务。对于第 1 个执行的任务, 不需要进行上下文
保存, 只需恢复任务上下文即可。第 1 个任务的
4.1 开 /关中断的实现。uC/OS- II 和其它所有
超过 40 种不同架构的微处理器上运行。
的实时内核一样, 在访问操作系统的临界区之前
3 硬件系统设计
必须关闭中断, 访问之后开中断。这可以保证 uC/
数据采集控制系统一般都需要有人机交互 OS- II 的临界区代码不会被多个任务或中断服务
子系统, 根据一些信号量来控制一些运动。需要根 程序同时访问, 避免造成共享数据( uC/OS- II 的
4.2 堆栈的初始化
使其适合在上面挂载操作系统。
由于 MSP430F149 上述特点, 使其适合构成 低成本的控制系统, 又由于在实际使用中发现 MSP430F149 的 IO 驱动能力不是很强, 所以设计
图 2 上下文的 保存结构
如下硬件系统( 见图 1) 。
堆栈的初始化函数用于定义当创建任务时,
最高优先级任务堆栈
mov.w @R13, SP
POPALL
j / /从堆
栈弹出任务对应的所有寄存器
reti
j / /效仿一
次中断返回
4.4 任务级上下文切换的实现。任务级上下
文切换是由汇编子程序 OSCtxSw 实现。OSCtxSw
首先保存 R14, R14 中保存的是任务的返回地址。
然 后 再 保 存 其 它 的 寄 存 器 和 CPSR。 接 着 进 入
机中独树一帜。单片集成多通道 12 位 A/D 转换,
用类似的方法可以实现开中断。
片内精密比较器, 多个具有 PWM 功能的定时器, #define OS_EXIT_CRITICAL()
片内 USART, 看门狗定时器, 大量的 IO 端口, 尤
_EINT()
/] 开中断 ] /
其是具有 2KB 的片内 RAM 和 60KB 的 FLASH,
据要求来扩充一些键盘, 显示屏, AD 信号量, 控 全局变量) 的不一致性。
制信号量。
用以下的汇编子程序可以实现关中断:
MSP430F149 是 TI 公司近几年推出的 16 位 #define OS_ENTER_CRITICAL()
单片机, 采用特有的低功耗技术使其在众多单片
_DINT()
/] 关中断 ] /
的代码, 这是因为 μC/OS- Ⅱ在读写处理器寄存 执行的第 1 条指令。R14( LR )中存放的是任务的
器时只能通过汇编语言来实现。
返回地址, 它可存放任务结束函数的地址, 也可存
放零地址( 复位地址) 等, 这取决于具体的应用环
境。R0 寄存器存放的是传递给任务的参数。CPSR
存放的是任务运行时处理器的初始状态。任务堆
CmnCtxSw 标识的程序片断, 主要完成的功能是:
首先将当前任务的堆栈指针保存到任务控制块;
然后调用用户扩展的钩子函数 OSTaskSwHook ()
来完成扩展功能。接着更新全局变量
OSTCBHighRdy、OSTCBCur、 ( 下转 32 页)
- 50-
科苑论谈
术应用到拉深成形的自适应控制系统中去识别 材料的性能参数, 将拉深力、凸模行程、压边力、发 兰厚向应变、发兰收缩比作为 3 层神经网络的输 入变量。材料的性能参数、硬化指数、各向异性系 数和材料其它性能综合指数作为输出层变量。然 后, 计算出摩擦系数和最佳的压边力控制曲线来 控制整个成形过程。
统的稳定性。
图 1 MSP430F149 控制系统硬件框图
2 嵌入式操作系统 uC/OS- II
uC/OS- II 的移植集中在 3 个文件, os_cpu.h,
uC/OS- II 是一个完整的、可移植、固化、裁 os_cup_a.s, os_cpu_c.c。其中 os_cpu.h 主要包含
剪的占先式实时多任务内核[1]。它总是运行最高优 编译器相关的数据类型的定义、堆栈类型的定义
参考文献 [1]吕盾,陈炜. 变压边力控制技术的研究现状和发
展趋势[J]. 模具工业,2006,32(4):37. [2] T.B.Stoughton. Model of drawbead forces in sheet metal forming [C]. J.Proc.of 15th Biennial IDDRG Congress,1988,205- 214. [3] 赵军. 圆锥形件拉深成形智能化的研究[D].哈 尔滨:哈尔滨工业大学,1997. [4] K.Manable et al.Artificial intelligence identi- fication of process parameters and adaptive con- tronl system for deep- drawing process[J].Journal of Materials Processing Technology.1998, 81- 82:421- 426. [5] 雷 昆鸟. 方盒型件拉深成形过程的压边力计 算[D].西安:西北工业大学,2002. [6] He Dannongy Lv Dongy et al. A study of the relation between blank holder forces and ef- fects of lubricants in sheet metal drawing[c]. The 1st International Conference on Die & Mould Technology, Beijing, China, July 26- 28, 2000. p. 553- 557 [7] CAO J,BOYCE M C. A predictive tool for delaying wrinkling and tearing failures in sheet metal forming[J]. Journal of Engineering Materials and Technology, 1997,119(4):354- 365. [8] 王东哲,娄臻亮,张永清. 板材变压边力拉伸成 形方盒件数值模拟[J].上海交通大学学报,2001,35 (10):1543- 1546. [9] Y.Wang, S.A.Majlessi. The design of an opti- mum binder force system for improving sheet metal formability[C]. Proceedings of the 18th Bi- ennial Congress IDDRG, International Deep
信息科学
嵌入式实时操作系统 uc /OS II 在
MSP430F149 上的移植应用
李锐
( 南京邮电大学, 江苏 南京 210000)
摘 要: 介绍了使用 TI 公司的超低功耗 MSP430 单片机与 uc /OS II 相结合设计数据采集控制系统的方法, 基于编译器 IAR3.10A 版本详细讨 论了 uc /OS II 在 MSP430F149 上的移植的实现过程, 指出了在 uc /OS II 的移植过程中的重点和难点问题, 得出了 uc /OS II 在 MSP430 上移植的一 般性方法, 所列源代码经过测试符合应用。采用了多任务的软件设计方式代替了传统的前后台式的嵌入式软件设计方法使得软件系统模块化, 并且 克服了前后台式软件设计的弊端增强了系统的实时性。
CPSR, 恢复其它的寄存器, 开始执行最高优先级
的任务。程序如下:
OSStartHighRdy
call #OSTaskSwHook
mov.b #1, &OSRunningj / /置内核运行标志
mov.w SP, &OSISRStkPtrj / /保护中断
堆栈
mov.w &OSTCBHighRdy, R13 j / /载入
3.变压边力理论的发展趋势 综上所述, 针对在板材成形中的最优变压边 力, 国内外许多学者做出了很多的工作, 也取得了 显著的成就, 但是这些工作更多的集中在圆锥盒 圆筒形等回转类零件以及方盒型零件。对于大型 复杂件的研究还有待深入研究; 对压边力加载曲 线也有多种变化趋势, 是上升的还是下降的压边 力更为有效还没有共识, 主要是因为试验的条件 不一致, 各自得出的结论也各不相同。 4.结束语 与传统的压边力相比, 现代的变压边力技术 能够明显提高复杂件的成型质量和效率, 因此, 深 入研究变压边力理论与技术非常必要。