数字时钟的嵌入式系统的设计

更新时间:2023-12-18 03:36:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、 概述

随着信息化、智能化、网络化的发展以及计算机技术的发展,嵌入式技术也获得了广阔的发展空间,嵌入式技术目前已成为通信和消费类产品的共同发展方向。嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统,对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。

嵌入式技术的应用到处可见,应用十分广泛。如家庭中的数字电视、机顶盒、DVD、超级VCD智能手机等;办公室中的复印机、打印机、扫描仪、键盘灯;手持设备也用到了嵌入式技术,包括MP3、GPS手机、数码相机、数码摄像机等;汽车电子产品:电子地图、导航、车载GPS等。其他领域,如通信、机器人等都应用到了嵌入式技术,由此可以看出,嵌入式系统的发展已日趋成熟了。

随着计算机技术、信息技术和网络技术以及其他技术的发展,嵌入式系统将向着更加小、更快速、功耗更低以及互联网的方向发展。

本系统的功能是可调数字时钟,LED显示时间,通过键盘和触摸屏均可以校对时钟。

二、系统的研究及实现 (一)嵌入式系统的概况

嵌入式系统被定义为:以应用为中心,以计算机技术为基础、软件硬件可剪裁、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统是现代多学科互相融合的产物,嵌入式系统无多余软件,并且以固态化出现,硬件亦无多余存储器,有可靠性高、成本低、体积小、功耗少等特点。嵌入式系统又是知识密集,投资规模大,产品更新换代快,且具有不断创新特征、不断发展的系统。

嵌入式系统主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统组成,它是集软硬件于一体的可独立工作的“器件”。嵌入式处理器主要由一个单片机或微控制器组成。而这些嵌入式微处理器目前多是8位、16位和32位的,与64位的高性能处理器相比,具有很强的经济性。相关支撑硬件包括显示卡、存储介质、通讯设备、IC卡或信用卡的读取设备等。嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多使用闪存作为存储介质。嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统等、标准化浏览器和应用软件等。

(二)软硬件的设计

1 硬件环境概述

嵌入式系统主要由嵌入式微处理器和操作系统组成。硬件主要包括:微处理器,ROM,DRAM,人机交互接口,A/D、D/A转换电路,触摸屏等。

嵌入式系统的核心部件是各种类型的嵌入式处理器,嵌入式开发硬件平台的选择主要是嵌入式处理器的选择。在一个系统中使用什么样的嵌入式处理器内核主要取决于应用的领域、用户的需求、成本、开发的难易程度等因素。确定了使用哪种嵌入式处理器内核以后,接下来就是综合考虑系统外围设备的需求情况一选择一款合适的处理器。

本系统采用基于ARM的S3C44B0X的微处理器,通过系统总线将CPU、电源管理模块、存储器、控制器、LCD控制器、中断控制器连接在一起,通过外设总线和A/D转换器、看门狗定时器、通过I/O控制器、PWM定时器等连接在一起。S3C44B0X的160个引脚中,71个引脚可以通过编程的方法定义多功能输入/输出引脚。I/O端口有两种编制方式,键盘模块输入数字型数据或选择控制设备的操作模式,LCD通过数据总线寄存器及使能信号与处理器连接实现触摸屏驱动X、Y通道连接。

2 软件环境概述

嵌入式系统的软件一般由嵌入式操作系统和应用软件组成,编译过程是一起进行的。而操作 系统的软件又与硬件紧密相关,必须与具体应用相结合才能发挥其优势,即必须结合实际系 统的需求进行合理的裁剪。所以,如果能够建立相对通用的软硬件基础,然后在其上开发出 需要的系统,是一种比较好的发展模式。从某种程度上来说,嵌入式系统是指能够运行操作系统的软硬件综合体。

就实时嵌入式操作系统(operation system)而言,它可大致分为商用嵌入式OS与 源码开放的嵌入式OS,前者如WindRiver公司的Vxworks、ISI公司的pSOS和Q uantum公司的QNX等,后者如免费的嵌入式Linux,以及本文中所用到的uC/OS Ⅱ。尽管这些嵌入式RTOS形式多样,但一般都具有以下特点:

1)可裁剪的微内核结构,高效的多任务优先级管理,μs级的中断处理(Windows下 的中断最快是55μs/次),更加有利于工业控制效率的提高; 2)支持多处理器并行处理及任务间通信(这一点对于电力系统并行计算有可借鉴之处);

3)具有共享内存,有利于实时数据库的实现;

4)灵活的引导方式(支持从ROM/flash/本地盘/网络引导),引导操作系

统事件 更短,甚至可以一上电在秒级的时间内就跳转至用户程序处等等。

从这些特点可看出,在工业控制等领域以嵌入式RTOS作为软件平台将比Windows、UNI X、OS/2等商用操作系统更有其特殊的优势。例如东北电网的SCADA与EMS中就采 用了VXM实时操作系统。

目前国际上已有几百个成熟的实时嵌入式操作系统,而我国在这方面起步较晚。这里将比较 两种实时操作系统以说明选择uC/OS-Ⅱ的原因。

uCLinux是专为无MMU微处理器打造的嵌入式Linux操作系统。它是由Linux2. 0内核发展来的,内核代码小于512 kb。uC/OS-Ⅱ内核编译过后大约为6~1 0kb。uC/OS-Ⅱ内核是针对实时系统的要求设计实现的,可以满足较高 的实时性要求。而uCLinux仅针对嵌入式处理器进行了改良,实时性不如uC/OS-Ⅱ优越。uCLinux继承了Linux内核的特点,支持文件系统和网络能力,并 提供了一些API接口函数,而uC/OS-Ⅱ只是一个实时内核,要建立一个 实用的系统,还需要进行扩展。

由于该系统设计对实时性要求很高,所以本文选择uC/OS-Ⅱ内核进行移植。 嵌入式系统中,软件和硬件紧密配合,协调工作,共同完成系统预定的功能。根据OSI的七层模型可以确定链路层和物理层有硬件实现,其他各层由 软件实现,如图1。

图1:OSI模型和系统软硬件划分

(三)系统的实现

由于嵌入式应用软件是通过并发的任务来运作的,应用软件开发的系统设计将系统划分为多个并发执行的任务,通过相互间通信建立联系。根据需求划分任务是比较重要的一步,通用部分可以划分为各个功能子模块。

本文中设计的保护测控系统,划分成数据采集、液晶操作、键盘处理、循环计算程序、保护 量计算、继电器出口等任务,每一个任务根据相互之间的关系及数据流设置优先级以及执行 频率,这些设 置好之后都由内核实现调度和任务之间的通信。

同时还要根据实际情况设置中断的优先级。在以uC/OS-Ⅱ为操作系统的项目中,系统 可能要处理各种不同的中断请求,如果某个中断处理程序需要调用uC/OS-Ⅱ的各种Post函数向任务发出消息,那么uC/OS-Ⅱ中的中断服务程序的写法是:

1)保存全部CPU寄存器;

2)调用OSIntEnter或OSIntNesting直接加1; 3)执行用户代码做中断服务; 4)调用OSIntExit; 5)恢复所有CPU寄存器; 6)执行中断返回指令。

这种方式实际上是将这个中断处理加入了任务调度系统,也就是说这个中断可以引起任务的 切换,也叫“标准中断”。如果在中断处理中没有调用各种Post函数的话,则可以用原 来没有操作系统时的写法: 1)保存中断处理程序需要用到的CPU寄存器; 2)执行中断处理;

3)恢复保存了的CPU寄存器; 4)执行中断返回指令。

按照这种方法定义的中断永远不会引起任务切换,称为“快中断”。

API函数 用户应用程序 驱动程序(与硬件中的设备对应) 硬件(LCD、USB、FLASH和网卡等) 基于uC/OS-II的RTOS内核 图2:系统结构

三、结束语

本系统中还有许多问题存在,还不能确定是否可以应用,只是一个设计的思想,由于我刚接触嵌入式系统,对其了解的不是深,只能算是一个大概框架,没有写明具体怎样实现以及结果如何。

本文来源:https://www.bwwdw.com/article/jdv5.html

Top