嵌入式操作系统应用研究.pdf

上传人:asd****56 文档编号:70338160 上传时间:2023-01-19 格式:PDF 页数:4 大小:188.62KB
返回 下载 相关 举报
嵌入式操作系统应用研究.pdf_第1页
第1页 / 共4页
嵌入式操作系统应用研究.pdf_第2页
第2页 / 共4页
点击查看更多>>
资源描述

《嵌入式操作系统应用研究.pdf》由会员分享,可在线阅读,更多相关《嵌入式操作系统应用研究.pdf(4页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第 2 8卷第 1期 2 0 0 5年 3月 V o1 28 N O1 M ar 2 005 The Appl i c a t i o n Re s e a r c h o f Em be dd e d Ope r a t i ng S y s t e m s Y ANG Ji n gw U N a i l i n g (D e p a r t me n t o f El e c t r o n i c E n g i n e e r i n gS o u t h e a s t U n i v e r s i t yNa n j i n g 2 1 0 0 9 6 P R Ch i n a)

2、Ab s t r a c t:Ac c o r d i n g t O d e s i g n i n g t h e h a r d wa r e o f e mb e d d e d t e a c h i n g e x p e r i me n t f l a t,t h e t r a ns p l a n t a t i o n p r o c e S S o f u c os-I I i s a n a l y s e d,a n d i t s t r a n s p l a n t a t i o n wa y a r e p r o v i d e d Th e p r o

3、 b l e ms c o n c e r n e d a b o u t t h e t r a n s p l a n t a t i o n p r o c e s s a r e s u mma r i z e d Al l t h e a b o v e p r o v i d e s u g g e s t s f o r A RM 7TDM I s e r i e s CPU The ba s i c f unc t i ons m a de by har dwa r e dr i ve r pr o gr am,t he d e s i gn met ho d a b o u

4、t GUI a n d t h e e x c e l l e n t g r a p h i c s s o f t wa r e v C GUI f o r e mb e d d e d s y s t e m a r e s i mp l y i n t r o d u c e d,The a ppl i c at i o n t r en d of e m be d de d ope r a t i ng s ys t e m s i s po i nt e d Ke y w o r d s:“C OS I I;t r a n s p l a n t a t i o n;d r i v

5、 e r GUI EEACC:1 13 0B 嵌 入 式 操 作 系统 应 用研 究 杨 静,吴乃陵(东 南 大学 电子工 程 系 南 京 2 1 0 0 9 6)摘 要:结合嵌入式教学实验平台硬件设计,分析了 C O S I I 的移植过程,给出了移植的思路 总结了移植过程中应 注意的问题,为 AR M7 TDMI 系列外理器移植提供借鉴。并简要介绍了硬件驱动程序应完成 的功能,图形用户界面的开 发 以及优 秀 的嵌 入 式系统 图形 软件 C GU1,最后 指 出 了嵌 入 式操作 系 统应 用趋 势。关 键 词:C OS I I;移植;驱动;图形用户接口 中图分类 号:TP 3 0 2

6、文献标识码:A 文章编 号:1 0 0 5 9 4 9 0(2 0 0 5)0 1 0 2 0 4 0 3 在 我 国高校 电工 电子 信息类 教学 中,嵌 入式 系统正逐 步取代 单 片机,本论 文 结合课 程配 套 的 嵌 入式 系统实验室 的建设讨论嵌 入式操 作系统 移 植 与应用。u C OS-I I 是一个源 码公开的实时操 作 系统,程序 开发人员可 以改写源代 码,使之 符合 自己的要求。C OSI I的程序 结 构清 晰,移植 简单,应用广 泛,在性 能上可与许多高端商业 软件 媲美。u C OS-I I 对 于 嵌入 式应 用,理 解 R TOS 是非 常有必要,是 大专

7、院校 学 生学 习实 时操作 系 统 的极 好素材。UCOS I I是个 移 植性 非 常强 的操 作 系统,只要有 处理器 的 C编译器 支持 可重入 型代 码,支 持 中断和定 时 中断,使 用 C语 言 就 可 以开 关 中 断,有堆 栈及 CP U 内部 寄存 器人 栈、出栈 指令 就 能 移植。C OS I I 的产品定位在低端 的嵌 入式 系统 中,能提 供 简单 的多任 务 功 能,占用 ROM、RAM 及 C P U 资源非常少,适用于 8、1 6、3 2 b i t 单 片机或 DS P,但 UC OS I I目前不 支持 时 间片 调 度,最 高优先级 任务 未运行完,就会

8、导致其 他低 优 先级 的任务无法得到 C P U 的使用权。C OS-I I 是 一个 实时 操作 系统 微 内核,通 常要想在 内核 上进 行应 用程 序 的开 发,需要 开 发 人员在实时 内核 的基 础上建立 自己的实时操 作系 统。首先需 要将 u C OSI I移植 到 自己 的硬 件 收 稿 日期:2 0 0 4 0 9 2 7 作 者简 介:杨静(1 9 7 5 ),女,硕士 研究 生,主要 从 事嵌入 式 系统研 究,q i n mu y i O 0 8 8 1)1 6 3 c o r D 。维普资讯 http:/ 第 1期 杨静,吴乃陵:嵌 入 式操作 系统应 用研 究 2

9、 O 5 目标板 上,然后 才 可 以针 对 实 际 的 应 用 需 求 对 u c osI I 进行功能扩展,包括底层 的硬件驱动、文件 系统、用 户图形接 口(GUI)等,从而建立 一个 实 用 的 RTOS。1 嵌 入 式 ARM 教 学 实验 平 台简 介 本 系统是专 门针对嵌入式 系统教学设计 的学 习平 台,该 系统 包 含 丰富 的硬件 资源 和详尽 的教 学 实验 教 程,适 合 教 学 和不 同层 次 人 员 的学 习。该 教学实验平 台由基本 模 块和扩 展模 块 组成,系 统 核 心 模 块:内 核 为 ARM7 TDMI的 C P U,F L AS H,S DRAM。

10、系统 扩展模 块 主要有:键 盘 鼠 标,以太 网 接 口,US B接 口,AD C、DAC转 换,异 步 串行(UAR T)接 口,并 行 口,七 段 数码 显示 管,LE D指 示 灯,点 阵 液 晶 显 示 模 块 L C M 或 L C D 等,如 图 1所示。操作 系统可运行 r,c os-I I或“C L i n u x嵌 入 式 实 时 操 作 系 统,微 处 理 器 采 用 ARM7 TDMI(一S)系 列 的微 处 理 器。软件 部 分 由基础 实验 和 B OOTL OADE R及 操作 系统 实验 组成。圆圆 It t 1 嵌入 式 ARM 教 学 实验 平 台硬 件模

11、块I t t 2 实时操作 系统 C OS I I的移植 基于上述 的嵌 入式 教 学实 验硬 件平 台,首 先 需要 移植操作 系统 内核到微处理器上并运行。目 前 已有 r,c osI I移植 到 5 1系列单 片机上,尽 管其 实时性 很 好,但 由 于 5 1系 列单 片机 R OM、R AM 空 间 有 限,需 要外 扩 R OM、RAM(甚 至分 页扩展 存储 器)及很 多 外 围芯 片,执行速 度慢,整 体价格 高;ARM7 TDMI 是 目前低 端 的 ARM 核,比如 L P C 2 1 0 X系列在 小型 化应用 方 面可替 代某 些 高速、高价格 的 8、1 6 b i

12、t 单 片机。L P C 2 1 0 X是 带有一个 支持实 时仿 真核 跟踪 的 ARM7 TDMI S C P U,并 嵌 入 了 1 2 8 k B高 速 F L AS H 存储 器,1 6 k 6 4 k b y t e静态 RAM 1 。不需 要扩 展外 部 存储 器 就可 实现 c osI I 操 作 系统 内核 的移 植。根据文献 1 ,AR M7 TDMI(一s)系 列 的处 理器完全满足移植 要求。内核将应用 系统 和底层硬件 有机地结合 成一 个实 时系统,要 使 同一个 操作 系统 能适 用 于 不 同 的硬件体系,就 需要 在 内核 和硬 件之 间有 一 个 中 间层,

13、即与处 理器 相关 的代码。移 植 C Os I I 就是改 写处理器 相关 的代 码,即修 改下 面 3个 文 件(编译 器使 用 ADS v 1 2),可根 据 r,c os i i 示意性代码编写L 2 。1)Os C P U H 文件 中的代码 根据 ADS编译器 的特性,这 些代码包括 系统 数据类 型定义,栈增长方 向定义,关 中断和 开 中断 定 义,系统软 中断的定 义等等。2)OSCPUC C文件 中的 C函数“C OS I I移植要 求编 写 1 O个 简单 的 C函 数,唯 一必要 的是任 务堆栈 初始 化 函数 OS T a s k S t k l n i t(),其

14、他 的 9个 Ho o k函数 须 声 明但 不 一 定包含任何代码。按照一定的顺序 初始化任 务堆 栈。3)OSCPUA AS M 文件 中四个 函数 OS S t a r t Hi g h Rd y()。OS S t a r t()函 数 调 用 OS S t a r t Hi g h Rd y()来 运 行 进人 就 绪 态任 务 中优 先级最高 的任务。软 中断功能 号为 1。r,c os I I 的源代码 中已经 声 明 了函数 OS S t a r t Hi g h R d y (),为了不改动 源代 码,就 多加 了一 次 调用 L 2 ,实 际运 行 OS S t a r t

15、Hi g h Rd y 2。OS Ct x S w()。其 功 能 是 实 现 任 务 级 任 务 切 换,软 中断功 能 号 为 0。任 务 切换 是 通 过 软 中 断 指令 S WI 使处理器进入 管理模 式 2 ,而用户 程序 处于用 户模 式。任务切换程序会 在管理模式 和 系 统模 式间来 回切换。切换 过程:保 存 优先 级 低 的 任务的环境变量(主要是寄存器 的值),将 当前 S P 保存 在 当前任务 的 OS TCB中,最高 优先级 任 务 的堆栈指 针装入 C P U 的 S P寄存器 中,恢 复最 高 优先级任务 的环境 变量。0S l n t Ct x S w()。

16、原本 中断 级 任 务切 换 是 要 通 过 OS l n t C t x S w 函 数 来 完 成 的,但 ARM 的 I RQ 中断处理 比较特 殊(一个 人 口多个 中断 源),所 以此 函数 中不 能进行切换。而是放到 了所 有 中 断服 务程 序返 回时 判断 是否进行 任 务切 换。OS I n t C t x S w2函数 中的切换 实际上是 为 了重用 下 面 的 0S C t x S w 函数。为保 持 uc 0s I I 其它 文件 的完 整性,另外用 函数 OS I n t C t x S w2来进 行 中断 圆 维普资讯 http:/ 2 0 6 电 子 器 件 级任

17、务 切换 。Os Ti c k I s R()。“C Os I I 要 求 系统能产 生 1 0 1 0 0 Hz的时钟节拍,该 时钟 节拍 由硬件 定时 器 0的 匹配 通道 0产 生 时钟节 拍,中断后直 接进 入 OS Ti c k I S R调 用 系统 时钟 节拍 服 务 函数。抢 占式操作 系统均需要 一个定时器作 时钟节拍循环 中断,保证更 高优先级任务能 够及时得到 C P U。3移 植 c os-I I 应 注意 的 问题 ARM 体 系结构支 持 7种 处理 器模 式。除用 户模式外,其他 模 式均 为 特权模 式。系统 模式 与 用 户模式一样,不 能 由异常进入,然而它

18、 是特权模 式,不 受用户模 式 的 限制。可 将用 户 任务 选 在用 户模式或者 系统模式。如果移植时采用 软 中断方 式,任 务要设 在用 户模式,因为软 中断是 为 了让用 户模式切换 到 特权 模式,必 须 采用 软 中断进 入 特 权模式 才能开关 中断;在 用户模 式 时是 不 允许对 I RQ、F I Q 的 中断 允 许 位、模 式 位 等 进 行修 改操 作,所 以将 任务模 式定 为用户 模式 相 对来 说是 安 全 的;还 有,启 动 代 码 中初 始化 堆 栈 退 出后 的模 式,最好是 与用户任 务的模式相 同。如果不 采用软 中断 方式,用 户 任 务设 在 系统

19、 模 式,启动代码 中初 始化堆栈退 出后在 系统模 式。这 种方式移植 节省 了模式 间进行切换 的开销。因 此从提高 效率 的角 度来 看,建议 将 用 户任务 应该 设 置在 系统模式,这 样 开关 中断和任 务 切换 都会 简单些。如果启 动代码 中初始化堆栈 退 出后在用 户模 式时,要 注意 在 切换 到 当前 最 高 优先 级任 务 时,是 否能够恢 复到 系统模式。还 有启动代 码 中初始 化任 务 堆 栈 时,对 寄存 器 内容压人或 弹 出栈可 以是任 意顺 序 的,只要 能 保证 数据人栈后 下次取 出来 的是正确的。但 要 以 简 洁、快 速的 出入 栈,容 易 维护,

20、执 行效 率 高 为 目 的。另外,系统发 生 中断 将环 境变 量保 存 的栈 结 构 与保存任 务 的堆栈 结构 应该 一 致,这样 就 可 以 在 中断返 回后 将就绪态任 务 中最高优先级 的任务 运行 起来。4驱动程序和图形用户界面 v C OS-I I移植 完成 以后,就要 在 这个 实 时 内核之上编 写接 口驱动程 序。由于嵌人 式产 品是 针 对特殊 的用途 而 设计 的,有 很强 的专 一 性。因 此,在编写 驱 动 程 序 时 内容 更精 简,更 具 有 稳定 性,编写 出的 驱动 模块 更小。编写 驱 动程序 应 完 成 以下基本 功能:对设 备初 始化和释放;把数 据

21、从 内核传送 到硬件 和 从硬 件 读取 数 据;读 取 应 用程 序传送 给设备 文件 的数据 和 回送应 用程 序 请 求的数据;检侧 和处 理设 备 出现 的错 误。实 现 了以上功 能 以后,一个 嵌人 式 操作 系统 就基 本 构成 了。如果要 开发图形用 户界面,工 作量极 大,加上 不 同用 户对界 面 的要 求 也不 尽相 同,因此 用 户界 面 已成 为计算 机软件 中最 困难 的部分 之一。目前 采用方 法较 多的 是将 现有 的合 适 的 GUI移植 到 微 处 理 器 上。C GUI 是美 国 Mi c r i u m 公 司 出品的一 款针 对嵌入 式系统 的优秀图形

22、软件。与 v c os一样,ff C GUI 具有源码 公 开、可移 植、可 裁减、稳 定 性 和可靠性 高 的特 点。采 用 ff C GUI,开发 人 员 可 以很方便地 在液晶上显示文本、曲线、图形 以及各 种窗 口对象 如按 钮、编辑 框、滑 动 条 等,可 完全 产 生类似 于 Wi n d o ws的显 示 效果。另 外,ff C GUI 提供 了在 VC下 的仿 真 库,这 使 得 用户 完 全 可 以 在 Wi n d o ws 下 仿 真 ff C GUI的各 种效 果。采 用 ff C GUI,可 以大 大 降 低嵌 入 式 系统 中显 示 设 计 的难 度,ff C GU

23、I 针 对不 同的 液 晶控 制 器 提 供 了 多种驱动 程序,如 KS 0 7 1 3、S E Dl 3 3 5、T6 9 6 3等控 制器都有对应 的液 晶驱动程序 。但 在 很多 情况 下,用 户采用的液 晶,ff C GUI 并没有 提 供其 对应 的驱动程序。这 里针对本试 验平 台所选 用 的液 晶 模块编写 了驱动程序。5嵌入 式 操 作 系统 应 用趋 势 标准 Li n u x的核心 支持 虚 拟 存 储器,它 控 制 着处理器 的 内存 管理 单 元(MMU),将 虚 拟 内 存 地址 映射 为物理 内存地址。支持虚 拟存储 器 的操 作 系统具有许 多优 点:可运 行

24、比物 理 内存 大 的 程 序、可运行部分 加 载 的程序、缩短 启 动 时 间、减 轻 程序 员分配和管理 内存 的负担、实现代 码共享、提 供 内存保护 等。然 而有 许 多嵌 入式 C P U 中取 消 了 MMU 部 件,C L i n u x正 是 专 门 为 这 类 C P U 设计 的。没有 MMU 部件 将 引起 一 系列 的 问题:ff C L i n u x在装入程 序 时,必 须 一 次性 的 分 配 足够 的、连续 的物理 内存,程序 的实际加载地址 需 要加 载器完成一 个地 址重 定位 的过程。此 外,由于不 能使用磁盘 交换 空 间,系统 将更 易 于面 临 物理

25、 内 存耗 尽 的 窘 境 等 等。而 Wi n d o ws 系 列 嵌 入 式 操(下转 第 2 l 0页)维普资讯 http:/ 2 l 0 电 子 器 件 2 8卷 ADS7 8 43一Cl e a r Bi t(0,A DS7 8 43一CS);u d e l a y(DELAY);f o r(i n t i=0;i i)0 x 1)ADS 78 4 3一S e t Bi t(0,ADS 7 8 43一DI N);数据位 为 1 e l s e ADS7 8 4 3一Cl e a r Bi t(0A DS7 8 43一DI N);数 据位 为 0 u d e l a y(DELA Y

26、);ADS 7 8 43 Se t Bi t(0,AD S 7 84 3一CL K);时 钟变 高 微 处理器读 取 X坐标值 函数(读 取 Y 坐标 值 函数相类似,控制字 为 0 x 9 0)i nt A DS7 84 3一t smeasurex(v o i d)c h a ri i nt t ou c h d a t a=0;ADS7 8 43一Cl e a r Bi t(0,ADS78 4 3一CS);片选 端 置低 电平 ud e l a y(DELAY);A DS7 8 43一d i n(0 x D 0);向 ADS 7 8 4 3发送 读 X 坐 标控 制 字 0 x D 0 A

27、DS 78 4 3 Cl e a r Bi t(0ADS7 8 43 CLK)l ud e l a y(DELAY):wh i l e(!(GPLR0 GPI Obi t(ADS7 8 43一BUSY)p t i n t k(“B US Y1 n”);AD$7 8 4 3 Cl e a r Bi t(O,ADS7 8 43 CLK);f o r(i=0;i 1 5;i+)读取 坐标 值 t o u e h u d a t a =3;对最后 4位 自动 置 0处 理 r e t ur n(t o uc hd a t a 0 x f f f);4驱动模块 的安装 在 L i n u x操作系统 中

28、,对 于 已编 好 的设 备 驱 动程序,利用编译 工具 将 驱动 程序 编译 成 驱 动模 块。对于驱动模 块 的安装,一种 方法 是 重 新编 译 L i n u x内核将驱 动 程序 加 载 到 系统 内核,另 一种 方法就 是利用 i n mo d和 r mmo d函数 动态 地 装 载 和 卸 载 设 备 驱 动 模 块。我 们 在 I n t e l xs c a l e P XA2 5 5评估板上利 用重 新编译 L i n u x内核 的方 法 将触摸屏控 制器 ADS 7 8 4 3的 驱动 模 块加 载 到 系统 内核。运行后 取得 了理想 的效 果。5 结 束 语 触摸屏

29、 已成 为现代嵌入式设 备人机交互 的首 选输入设备,触 摸屏 控制 器 的驱 动程 序设 计 当然 也就成 为 嵌 入式 设 备 研 发 的 必需 工 作。本 文 以 ADS 7 8 4 3为例介 绍 了在 嵌 入 式 L i n u x操 作 系 统 中触 摸屏 控制器驱动程序设计 的编程方 法。对 于 在嵌 入式 L i n u x操 作系统下进行其 它设备 的驱 动 开发具有一定 的启示 作用。参 考 文 献:E 1 陈章龙 唐 志强 涂 时 亮,嵌 入 式 技术 与 系统-I n t e l XS e a l e 结构 与开发 M 北京:航 天航 空大学 出版 社,2 0 0 4 2

30、 3 毛 德 操 胡 希 明 著 ,嵌 入 式 系 统 采 用 公 开 源 代 码 和 S t r o n g ARM XS e a l e处 理器 M 浙 江大学 出版 社,2 0 0 3 3 魏永 明,骆 刚,姜君 译 ,L i n u x设 备 驱动 程 序 M 中 国电 力 出 版 社,2 0 0 2 (上 接 第 2 0 6页)作 系 统 友 好 的 用 户 界 面 和 为 程 序 员 所 熟 悉 的 AP I,并捆 绑 1 E、Of f i c e等应 用程 序,正逐 渐 获得 更 大 的市 场份 额。因此 Wi n C E或 标准 L i n u x操 作 系统作 为开发嵌入式

31、产品具有 巨大的潜力。目前 有 c osI I 和 u C Li n u x等嵌 入 式操 作系统 是不需要 内存 管理 单元(MMU)支持 的操 作 系统,可 运 行 于 ARM7 TDMI硬 件 平 台之 上。ARM7 TDM1 系 列 的处 理器 不 带 MMU 功 能,不 支 持 Wi n CE或标 准 L i n u x操 作 系统。用 户 如果 希 望使 用 Wi n CE或标 准 L i n u x等操作 系统 以减 少 软件 开 发时 间,就需要 选择 AR M7 2 0 T 以上带 有 MMU(Me mo r y Ma n a g e me n t Un i t)功 能 的

32、ARM 芯 片 。6 结 语 应 用嵌入式 系统可 以提高 产 品的 可靠 性,降 低研发周期。C OS-I I 具有很好 的实 时性 和很 小 的代 码量,本文基 于 ARM 教学试 验硬 件平 台,重点 分析 了 C OS-I I 的移植,给 出了移植 的思 路,总 结 了 移 植 过 程 中 应 注 意 的 问 题,为 ARM7 TD MI 系列 处 理器 移 植 提 供 借 鉴,最 后 简 要介 绍了驱动程序应 完成的功能及 优秀图形 软件 C GUI,并 指出了嵌入式操作 系统应用趋 势。参考文献:1 周 立功 等编ARM 微 控 制器基 础 与实验 M 广 州周 立 功 单 片机 发展有 限公 司,2 0 0 3 2 J e a n J L a b r o s s e 嵌入式实时操作 系统 c o s I I(第 z 版)M 邵贝 贝等译北 京:北京 航空航天 大学 出版 社,2 0 0 3 3 杜春 雷 编 著ARM 体 系 结 构 与 编 程 M 清 华 大 学 出版 社,2 0 0 3 4 刘滨,王琦,刘 丽丽 p C GUI在 MS GI 9 2 6 4液 晶上 的 移 植 r J 电 子技术 应 用,2 0 0 4 维普资讯 http:/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com