1、1 基于C/OS- II的键盘驱动的实现 第一章 绪论 一嵌入式系统简介 嵌入式系统着眼于应用,己被人们定义为“以应用为中心、以计算机技术为基础、软 件硬件可裁减、适应于应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机 系统” 。 嵌入式系统是将先进的计算机技术、半导体技术、电子技术和各个行业的具体应用 相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新 的知识集成系统。 嵌入式系统具有一般计算机组成的共性,都是由硬件和软件组成的。嵌入式系统的硬 件部分,是以嵌入式处理器为中心,配合存储器、I/O 设备、通信模块、扩展设备接口以及 电源等必要的辅助接口
2、组成。嵌入式系统软件部分,一般是按 3 层划分的:设备驱动层、实 时操作系统层、 应用程序层。嵌入式系统的硬件是嵌入式系统的基础,决定了嵌入式系统 的运算速度和扩展功能等, 提供了嵌入式软件运行的物理平台和通信接口; 嵌入式系统的软 件是嵌入式系统的灵魂,包括嵌入式操作系统和嵌入式应用软件,决定了硬件的操作模式, 通过操作系统和应用程序发挥硬件装置的功能。 嵌入式系统是应用于特定环境下,面对专业领域、针对特定用途的系统,所以与通用 计算机系统的多样化和适用性不同。与通用计算机系统相比,它具有以下显著的特点: 1) 嵌入式系统通常是面向特定应用的,是“专用”的计算机系统; 2) 嵌入式系统一般使
3、用实时操作系统; 3) 嵌入式系统是技术密集、资金密集、高度分散、不断创新的知识集成系统; 4) 嵌入式系统具有功耗低、体积小、集成度高、成本低的特点; 5) 嵌入式系统的硬件和软件通过量体裁衣、去除冗余,可以用较少的软硬件资源实 现较高的性能; 6) 嵌入式系统与具体的行业应用相结合; 7) 嵌入式系统的软件一般都固化在非易失性存储器中,提高了执行速度和系统可靠 性。 二本课题的主要研究工作 本课题采用高性能嵌入式处理器 S3C2410X 和C/OS-II 操作系统,开发了一个轻型 嵌入式串行通信系统。具体的工作主要有: 1. 键盘的驱动编程。 2. C/OS-II 的移植,这是本课题的重点
4、所在。操作系统内核移植是在 ARM 公司的 ADS1.2 集成开发环境下完成的。 2 3. 在应用层裁剪移植一个用于监视的图形用户界面(GUI) 。 4. 在操作系统的上层编写一个用于人机交互的键盘驱动程序、 LCD 液晶显示驱动程序和 相关的功能运用程序等。 3 第二章 基于C/OS-II 的键盘驱动的总体规划与设计 嵌入式系统设计的基本原则是“物尽其用” ,与通用计算机相比,嵌入式系统的硬件和 软件都必须高效率地设计, 量体裁衣, 去除冗余, 力争在同样的硅片面积上实现更高的性能, 以满足应用系统对功能、可靠性、成本、体积和功耗的要求。 2.1 系统的设计要求 本设计将一个实时操作系统移植
5、到 ARM 嵌入式微处理器后,利用操作系统中提供的系 统资源调用把串口及其他外设当成普通文件进行操作, 读写方便, 从而在进行相应软件开发 的过程中,提高系统编程效率,简化调试的复杂程度,实现基于 ARM 嵌入式微处理器为核 芯的串口通信,除此之外,按照嵌入式系统的软、硬件结构组成, 将图形用户界面GUI和实 时操作系统整合后移植到 ARM 微控制器上。系统实现的功能如下: (1)激活超级终端 0,敲击 PC 机的键盘,将字符通过 PC 机的串口发送给 ARM 开发板 的串口 0;通过 ARM 芯片处理后,在开发板上的 LCD 上同步显示。 (2)利用开发板上的键盘输入字符,同样可在 LCD
6、上显示,并发送给 PC 机。 (3)系统还应考虑日后的升级和功能扩展,留下可开发的硬件空间。 2.2 系统的硬件和软件选型 2.2.1 系统硬件平台的选择 嵌入式开发的硬件平台的选择主要是嵌入式处理器的选择。 在一个系统中使用什么样的 嵌入式处理器内核主要取决于应用的领域、 用户的需求、 成本问题、 开发的难易程度等因素。 目前非常流行的ARM核有ARM7TDMI, StrongARM, ARM720T, ARM9TDMI, ARM922T, ARM940T, ARM946T,ARM966T,ARM10TDMI等。自V5版本以后,ARM公司提供Piccolo DSP的核心给芯片 设计者,用于设计ARM DSP的SOC(System On Chip)结构芯片。此外,ARM核还获得了许多 实时操作系统(Real Time Operating System)供应商的支持,比较知名的实时操作系统有: Windows CE、Linux、pSOS、VxWorks、Nucleus、EPOC、C/OS-II、BeOS等。 S3C2410A微处理器是一款由韩国SamSung电子公