数字时钟的嵌入式系统的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于嵌入式操作系统的数字电子钟系统设计
一.嵌入式背景介绍
随着信息化、智能化、网络化的发展以及计算机技术的发展,嵌入式技术也获得了广阔的发展空间,嵌入式技术目前已成为通信和消费类产品的共同发展方向。嵌入式技术的应用到处可见,应用十分广泛。如家庭中的数字电视、机顶盒、DVD、超级VCD智能手机等;办公室中的复印机、打印机、扫描仪、键盘灯;手持设备也用到了嵌入式技术,包括MP3、GPS手机、数码相机、数码摄像机等;汽车电子产品:电子地图、导航、车载GPS等。其他领域,如通信、机器人等都应用到了嵌入式技术,由此可以看出,嵌入式系统的发展已日趋成熟了。
嵌入式系统被定义为:以应用为中心,以计算机技术为基础、软件硬件可剪裁、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统是现代多学科互相融合的产物,嵌入式系统无多余软件,并且以固态化出现,硬件亦无多余存储器,有可靠性高、成本低、体积小、功耗少等特点。嵌入式系统又是知识密集,投资规模大,产品更新换代快,且具有不断创新特征、不断发展的系统。
嵌入式系统主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统组成,它是集软硬件于一体的可独立工作的“器件”。嵌入式处理器主要由一个单片机或微控制器组成。而这些嵌入式微处理器目前多是8位、16位和32位的,与64位的高性能处理器相比,具有很强的经济性。相关支撑硬件包括显示卡、存储介质、通讯设备、IC卡或信用卡的读取设备等。嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多使用闪存作为存储介质。嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统等、标准化浏览器和应用软件等。
随着计算机技术、信息技术和网络技术以及其他技术的发展,嵌入式系统将向着更加小、更快速、功耗更低以及互联网的方向发展。
本系统的功能是可调数字时钟,LED显示时间,通过键盘和触摸
屏均可以校对时钟。
通过对本课题的设计达到如下目的:
1.熟悉ARM芯片cortex-m3定时/计数器,中断的应用。
2.掌握给予嵌入式操作系统us/os的编程方法。
3.熟悉时钟时,分,秒计时方法,掌握编程技巧。
4.掌握键盘的基本工作原理,键的识别,键抖动和重键问题的解决,键盘工作方法和键盘程序的编程。
5.掌握七段码LED的结构,七段码LED的工作方式和显示程序的编程。
二.软硬件的设计
1.设计要求
利用cortex-m3,uc/os,七段码LED,按键及常用外围器件,设计一个基于嵌入式操作系统的数字电子钟系统,具体要求如下:
(1).设计基于嵌入式操作系统的数字电子钟系统的硬件框图。
(2).设计定时程序。
(3).在LED上显示时间,通过按键切换,分别显示时,分,秒,设计显示程序。
(4).可用键盘进行校对时间,设计键盘程序。
2.硬件环境概述
嵌入式系统主要由嵌入式微处理器和操作系统组成。硬件主要包括:微处理器,ROM,DRAM,人机交互接口,A/D、D/A转换电路,触摸屏等。
嵌入式系统的核心部件是各种类型的嵌入式处理器,嵌入式开发硬件平台的选择主要是嵌入式处理器的选择。在一个系统中使用什么样的嵌入式处理器内核主要取决于应用的领域、用户的需求、成本、开发的难易程度等因素。确定了使用哪种嵌入式处理器内核以后,接下来就是综合考虑系统外围设备的需求情况一选择一款合适的处理器。
本系统采用基于ARM的S3C44B0X的微处理器,通过系统总线将CPU、电源管理模块、存储器、控制器、LCD控制器、中断控制器连接在一起,通过外设总线和A/D转换器、看门狗定时器、通过I/O控
制器、PWM定时器等连接在一起。S3C44B0X的160个引脚中,71个引脚可以通过编程的方法定义多功能输入/输出引脚。I/O端口有两种编制方式,键盘模块输入数字型数据或选择控制设备的操作模式,LCD通过数据总线寄存器及使能信号与处理器连接实现触摸屏驱动X、Y通道连接。
硬件设计原理图如下:
STM32原理图如下图:
3.软件环境概述
嵌入式系统的软件一般由嵌入式操作系统和应用软件组成,编译过程是一起进行的。而操作系统的软件又与硬件紧密相关,必须与具体应用相结合才能发挥其优势,即必须结合实际系统的需求进行合理的裁剪。所以,如果能够建立相对通用的软硬件基础,然后在其上开发出需要的系统,是一种比较好的发展模式。从某种程度上来说,嵌入式系统是指能够运行操作系统的软硬件综合体。
就实时嵌入式操作系统(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仅针对嵌入