基于单片机的uCOS-II平台驱动程序的设计(附程序代码)☆
来源:56doc.com 资料编号:5D1713 资料等级:★★★★★ %E8%B5%84%E6%96%99%E7%BC%96%E5%8F%B7%EF%BC%9A5D1713
资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用. 密 保 惠 帮助
资料介绍
摘 要:近年来,嵌入式系统的应用已经越来越普及,对人类社会产生了巨大的影响。μC/OS-II作为一种高可靠性的实时嵌入式操作系统已经被广泛使用在实际中,并且其具有简单易学、便于移植等特点。本文综述了嵌入式系统发展现况,分析了μC/OS-II内核及其应用在8051单片机上的特点,并介绍了μC/OS-II编写驱动的方法和规则。本设计以Keil C51为开发环境,通过修改函数使其可重入、修改堆栈设计等步骤,将μC/OS-II移植到了89C51单片机上,并编写了单片机上的LED模块、键盘模块及串行通讯模块的驱动,验证了移植μC/OS-II的正确性。
关键词:μC/OS-II;8051单片机;移植;驱动程序 The Drivers Programming of μC/OS-II Based on Micro Controller Unit
Abstract: Recent years, the use of embedded system was becoming more and more popular and the big influence has been made to human society. μC/OS-II has been applied in many equipment as a kind of real-time embedded operating system with high reliability, also it featured with easy-studying and easy to porting. The essay introduced the present situation of embedded system and analyses core of μC/OS-II, characteristic of which applied on 8051 uicro controller unit. It contains the ways and rules of writing drivers for μC/OS-II. This work is based on Keil C51 and ports μC/OS-II to 89C51 micro controller unit by means of several progresses such as altering functions for reentry and altering design of stacks, the work also programs drivers of LED module, keyboard module and COM module on micro controller unit.
Keywords: μC/OS-II; 8051 MCU; Porting; Driver
嵌入式系统简述 嵌入式系统(Embedded system),是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”,根据英国电机工程师协会的定义,嵌入式系统为控制、监视或辅助设备、机器或用于工厂运作的装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。由于嵌入式系统通常进行大量生产。所以单个的成本节约,能够随着产量进行成百上千的放大。 第一个被大家认可的现代嵌入式系统是麻省理工学院仪器研究室的查尔斯•斯塔克•德雷珀开发的阿波罗导航计算机。在两次月球飞行中他们在太空驾驶舱和月球登陆舱都是用了这种惯性制导系统。如今,嵌入式系统的应用已经非常广泛,无论是军事还是民用领域,在航空电子、工业自动化、汽车控制、医疗设备、计算机网络设备、多媒体电器、家用电器、无线通讯等设备上无处不存在嵌入式系统的身影。 嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成。嵌入式系统上的操作系统称为嵌入式操作系统(Embedded operating system)。它们通常被设计得非常紧凑有效,抛弃了运行在它们之上的特定的应用程序所不需要的各种功能。嵌入式操作系统多数也是实时操作系统。 早在20世纪60年代,就已经有人开始研究和开发嵌入式操作系统。但直到最近,它才在国内被越来越多的提及,在通信、电子、自动化等需要实时处理的领域所日益显现的重要性吸引了人们越来越多的注意力。但是,人们所谈论的往往是一些著名的商业内核,诸如VxWorks、PSOS等。这些商业内核性能优越,但价格昂贵,且主要用于16位和32位处理器中。对于国内广泛使用的51系列8位单片机,则可以选择开源的μC/OS-II。从学习嵌入式系统的角度,硬件上选择51单片机,软件上选择μC/OS-II,即简单又全面,学习成本也比较低廉。
μC/OS-II简介 μC/OS-II由Micrium公司提供,是一个可移植、可固化的、可裁剪的、占先式多任务实时内核,作者是Micrium公司总裁Jean J.Labrosse。由于μC/OS-II的绝大部分代码是用ANSI C写的,因此可以较为方便的移植到多种微处理器,微控制器和数字处理芯片中(目前已经移植到超过100种以上的微处理器应用中)。同时,该系统源代码开放、整洁、一致,注释详尽,适合系统开发。μC/OS-II已经通过联邦航空局(FAA)商用航行器认证,符合航空无线电技术委员会(RTCA)DO-178B标准,虽然这一特性对用户的需求并不一定实用,但却可在一定程度上证明该系统的稳定和安全性。 需要注意的是,μC/OS-II并不是免费的,开发和研究者可以通过购买该系统作者的μC/OS-II的书籍,而得到μC/OS-II源代码,但是仅可以作为个人和学校学习使用,所有和μC/OS-II直接和间接相关的商业目的行为,则必须购买使用μC/OS-II及系列产品的商业授权。
目 录 第1章 绪论 1 1.1设计概述 1 1.1.1 嵌入式系统简述 1 1.1.2 μC/OS-II简介 1 1.1.3 μC/OS-II的特点 2 1.2 硬件设计 3 1.2.1 51系列单片机简介 3 1.2.2 STC89C516RD+基本特性 3 1.3 ΜC/OS-II分析 4 1.3.1 μC/OS-II基本结构 4 1.3.2 μC/OS-II基本特性 6 1.3.3 μC/OS-II移植到51单片机的特点 7 1.4 编写ΜC/OS-II驱动程序的方法和规则 7 1.4.1 方法 7 1.4.2 规则 8 1.5 开发环境 9 1.5.1 硬件环境 9 1.5.2 89C51实验板 9 1.5.3 具有串口的PC机 9 (毕业设计) 1.5.4 软件环境 9 第2章 系统设计 11 2.1 基本移植过程 11 2.1.1 建立基本系统 11 2.1.2 修改可重入函数 11 2.1.3 修改OS_CPU.H 12 2.1.4 修改OS_CPU_C.C 13 2.1.5 修改OS_CPU_A.ASM 14 2.1.6 其它修改 15 2.2 键盘及LED驱动程序 15 2.2.1 键盘模块简介 15 2.2.2 LED模块简介 15 2.2.3 编程思路 16 2.2.4 相关代码 16 2.3 基于中断的串口驱动程序 19 2.3.1 串口通讯模块简介 19 2.3.2 编程思路 19 2.3.3 程序功能 20 2.3.4 程序特点 20 2.3.5 相关代码 20 第3章 系统调试 22 3.1 硬件系统调试 22 3.1.1 实验板线路连接 22 3.2 软件系统调试 22 3.2.1 编译、连接并调试程序 22 3.2.2 固化程序并运行 23 3.2.3 注意事项 25 第4章 总结与展望 26 4.1 总结 26 4.2 展望 26 毕业设计体会 27 致谢 28 参考文献 29 英文翻译资料 30 |