嵌入式系统软件设计数码管循环显示设计Word格式文档下载.docx
《嵌入式系统软件设计数码管循环显示设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《嵌入式系统软件设计数码管循环显示设计Word格式文档下载.docx(23页珍藏版)》请在冰豆网上搜索。
通过嵌入式系统软件设计的基本原理,该报告对数码管循环显示计数做了简单的设计与介绍。
【关键词】嵌入式,数码管,循环显示
abstract
basedonembeddedcomputertechnologyisthecoreoftheembeddedsystemafternetworktechnology,andnewtechnologydevelopmentpartytoanITfield.Becausetheembeddedsystemhassmallvolume,strongperformance,lowpowerconsumption,highreliability,andgearedtotheneedsofindustryspecificapplicationssuchasprominentfeatures,hasbeenwidelyusedinmilitarydefense,consumerelectronics,informationappliances,networkcommunications,industrialcontrolandotherfields.Thewideapplicationofembeddedisubiquitous.Intermsofdailynecessitiesaroundus,allkindsofelectronicwatches,telephones,mobilephones,pdas,washingmachines,TVsets,electricricecooker,microwaveoven,airconditionerhastheexistenceoftheembeddedsystem,ifweliveinaworldfullofembeddedintothetype,isliterally.Accordingtothestatistics,ofgeneralfamilyexpensescarembeddedcomputerabove24,inmorethan60luxurycars.Itisassumedthatpeopleindailycontactwithembeddedcomputerisexpectedtoreach2005over600.ItisnowonderthatthebigcarHenryFord,theseniormanagersalsodeclared,\"
fordsold'
computingcapacityhasexceededtheIBM\"
thustheapplicationofembeddedcomputerindustryscale,depthandapplicationscope.Throughthebasicprincipleofembeddedsystemsoftwaredesign,thereportofdigitaltubeloopdisplaycountthesimpledesignandintroduction.
【keywords】embedded,digitaltube,cyclicdisplay
目录
第一章嵌入式系统开发与应用概述1
1.1嵌入式系统开发与应用1
1.2基于ARM的嵌入式开发环境概述2
1.2.1交叉开发环境2
1.2.2模拟开发环境2
1.2.3评估电路板3
1.2.4嵌入式操作系统3
1.3各种ARM开发工具简介4
1.3.1ARM的SDT4
1.3.2EmbestIDE5
第二章EmbestARM开发系统6
2.1EmbestARM开发系统简介6
2.2集成开发环境的平台构建7
2.2.1开发平台硬件组成7
2.2.2软件系统组成10
第三章IIC总线控制的数码管循环显示设计11
3.1八段数码管的原理11
3.1.1.八段数码管11
3.1.2电路原理12
3.2软件程序设计13
3.2.1设计思想14
3.2.2基于数码管计数器的开发原理14
3.3基于EmbestIDE数码管循环显示软件仿真15
3.3.1仿真环境15
3.3.2基于数码管显示的仿真结果16
总结19
参考文献20
附录21
1.LED测试程序21
2.IIC总线读写程序21
第一章嵌入式系统开发与应用概述
1.1嵌入式系统开发与应用
目前,市面上已有几千种嵌入式芯片可供选择。
由于面向应用的需要,许多产品设计人员还是根据自己产品特点设计自己的嵌入式芯片。
通常设计人员首先获得嵌入式微处理器核的授权,然后增加他们应用产品所需的专门特点的接口模块。
例如,针对数码像机处理器有可能加一个电荷耦合芯片;
对网络应用产品处理则可能加一个以太网接口,而嵌入式微处理器核应用会越来越多,选用不同的核,会使电路的性能差别很大。
ARM系列处理器核是英国先进RISC机器公司(AdvancedRISCMachines,ARM)的产品。
ARM公司自成立以来,一直以IP(IntelligenceProperty)提供者的身份向各大半导体制造商出售知识产权,而自己从不介入芯片的生产销售,它提供一些高性能、低功耗、低成本和高可靠性的RISC处理器核、外围部件和系统级芯片的应用解决设计方案。
ARM处理器核具有低功耗、低成本等卓越性能和显著优点,越来越多的芯片厂商早已看好ARM的前景。
ARM处理器核得到了众多的半导体厂家和整机厂商的大力支持,在32位嵌入式应用领域获得了巨大的成功,如Intel、Motorola、IBM、NS、Atmel、Philips、NEC、OKI、SONY等世界上几乎所有的半导体公司获得ARM授权,开发具有自己特色的基于ARM的嵌入式系统芯片。
1.2基于ARM的嵌入式开发环境概述
ARM技术是高性能、低功耗嵌入式芯片的代名词,在嵌入式尤其是在基于嵌入式Internet方面应用广泛。
因此,学习嵌入式系统的开发应用技术,应该是基于某种ARM核系统芯片应用平台基础上进行,在讲述嵌入式系统开发应用之前,应该对基于ARM的嵌入式开发环境进行了解,本节主要对如何构造ARM嵌入式开发环境等基本情况进行介绍。
1.2.1交叉开发环境
作为嵌入式系统应用的ARM处理器,其应用软件的开发属跨平台开发,因此需要一个交叉开发环境。
交叉开发是指在一台通用计算机上进行软件的编辑编译,然后下载到嵌入式设备中进行运行调试的开发方式。
用来开发的通用计算机可以选用比较常见的PC机、工作站等,运行通用的Windows或Unix操作系统。
开发计算机一般称宿主机,嵌入式设备称为目标机,在宿主机上编译好的程序,下载到目标机上运行,交叉开发环境提供调试工具对目标机上运行的程序进行调试。
交叉开发环境一般由运行于宿主机上的交叉开发软件(最少必须包含编译调试模块)、宿主机到目标机的调试通道组成。
1.2.2模拟开发环境
在很多时候为保证项目进度,硬件和软件开发往往同时进行,这时作为目标机的硬件环境还没有建立起来,软件的开发就需要一个模拟环境来进行调试。
模拟开发环境建立在交叉开发环境基础之上,是对交叉开发环境的补充。
这时,除了宿主机和目标机之外,还需要提供一个在宿主机上模拟目标机的环境,使得开发好的程序直接在这个环境里运行调试。
模拟硬件环境是非常复杂的,由于指令集模拟器与真实的硬件环境相差很大,即使用户使用指令集模拟器调试通过的程序也有可能无法在真实的硬件环境下运行,因此软件模拟不可能完全代替真正的硬件环境,这种模拟调试只能作为一种初步调试,主要是用作用户程序的模拟运行,用来检查语法、程序的结构等简单错误,用户最终还必须在真实的硬件环境中实际运行调试,完成整个应用的开发。
1.2.3评估电路板
评估电路板,也称作开发板,一般用来作为开发者学习板、实验板,可以作为应用目标板出来之前的软件测试、硬件调试的电路板。
尤其是对应用系统的功能没有完全确定、初步进行嵌入式开发且没有相关开发经验的非常重要。
开发评估电路板并不是ARM应用开发必须的,对于有经验的工程师完全可以自行独立设计自己的应用电路板和根据开发需要设计实验板。
好的评估电路板一般文档齐全,对处理器的常用功能模块和主流应用都有硬件实现,并提供电路原理图和相关开发例程
与源代码供用户设计自己的应用目标板和应用程序作参考。
选购合适于自己实际应用的开发板可以加快开发进度,可以减少自行设计开发的工作量。
1.2.4嵌入式操作系统
随着嵌入式应用的迅猛发展,以前不怎么知名的嵌入式操作系统概念开始流行起来,以至很多初学者认为嵌入式开发必须采用嵌入式操作系统。
实际上,一个嵌入式应用是否采用嵌入式操作系统,采用哪种嵌入式操作系统完全由项目的复杂程度、实时性要求、应用软件规模、目标板硬件资源以及产品成本等因素决定。
早期的嵌入式系统并没有操作系统,只不过有一个简单的控制循环而已,对很简单的嵌入式系统开发来说,这可能满足开发需求。
随着嵌入式系统在复杂性上的增长,一个操作系统显得重要起来,有些复杂的嵌入式系统也许是因为设计者坚持不要操作系统才使系统开发过程非常复杂。
嵌入式操作系统一般可以提供内存管理、多任务管理、外围资源管理,给应用程序设计带来很多好处,但嵌入式操作系统同时也会占用一定的系统资源,并且要在用户自己的目标板上运行起来,并基于操作系统来设计自己的应用程序,也会相应地带来很多新的问题。
所以对于不太复杂的应用完全可以不用操作系统,而对于应用软件规模较大的场合,采用操作系统则可以省掉很多麻烦。
嵌入式操作系统是嵌入式开发中一个非常大的课题,目前已有专门的书籍做详细讲解,这里就不进行讨论了。
1.3各种ARM开发工具简介
用户选用ARM处理器开发嵌入式系统时,选择合适的开发工具可以加快开发进度,节省开发成本,用户在建立自己的基于ARM嵌入式开发环境时,可供选择的开发工具是非常多的,目前世界上有几十多家公司提供不同类别的ARM开发工具产品,根据功能的不同,分别有编译软件、汇编软件、链接软件、调试软件、嵌入式操作系统、函数库、评估板、JTAG仿真器、在线仿真器等。
有些工具是成套提供的,有些工具则需要组合使用。
在本节中,我们将简要介绍几种比较流行的ARM开发工具,包括ARMSDT、ARMADS、Multi2000、EmbestIDEforARM等集成开发环境以及OPENice32-A900仿真器与Multi-ICE仿真器等。
1.3.1ARM的SDT
ARMSDT的英文全称是ARMSoftwareDevelopmentKit,是ARM公司()为方便用户在ARM芯片上进行应用软件开发而推出的一整套集成开发工具。
ARMSDT经过ARM公司逐年的维护和更新,目前的最新版本是2.5.2,但从版本2.5.1开始,ARM公司宣布推出一套新的集成开发工具ARMADS1.0,取ARMSDT而代之,今后将不会再看到ARMSDT的新版本。
ARMSDT由于价格适中,同时经过长期的推广和普及,目前拥有最广泛的ARM软件开发用户群体,也被相当多的ARM公司的第三方开发工具合作伙伴集成在自己的产品中,比如美国EPI公司的JEENI仿真器。
1.3.2EmbestIDE
英文全称是EmbestIntegratedDevelopmentEnvironment,是深圳市英蓓特信息技术有限公司()推出的一套应用于嵌入式软件开发的新一代集成开发环境。
EmbestIDE是一个高度集成的图形界面操作环境,包含编辑器、编译汇编链接器、调试器、工程管理、Flash编程等工具,其界面风格同MicrosoftVisualStudio(见下图)。
EmbestIDEforARM目前支持所有基于ARM7和ARM9核的处理器。
将来可通过升级软件实现对新的ARM核的支持。
图2-1MicrosoftVisualStudio
EmbestIDEforARM运行的主机环境为Windows/98/NT/2000/XP,支持的开发语言包括标准C和汇编语言。
EmbestIDEforARM本身配JTAG仿真器(EmbestJTAGEmulator/PowerICE/UnetICE)。
EmbestIDEforARM主要特性:
●工程管理器:
图形化的工程管理工具,负责应用源程序的文件组织和管理,提供编译、链接、库文件的设置窗口,可在一个工作区中同时管理多个应用软件和库工程。
●源码编辑器:
标准的文本编辑功能,支持语法关键字、关键字色彩显示等;
提供C语言程序的函数列表及函数定位功能;
IDE同时提供了高效的FindinFiles引擎,可迅速查找定位指定的字符串信息。
●编译工具:
集成著名优秀自由软件GNU的GCC编译器,运行在Win32环境;
同时兼容ARMSDT2.51编译器,可以方便ARMSDT及ADS的用户在EmbestIDE下编译工程代码。
IDE提供了图形化的编译器开关设置界面,用户可以简单、直观、快捷地完成工程编译选项设置。
编译信息的输出,条理清晰,可迅速定位产生语法错误的源文件行。
●调试器:
提供对ARMAXD调试器的支持,可以方便使用EmbestJTAG仿真器调试ARMSDT及ADS环境的工程代码。
源码级调试,提供了图形和命令行两种调试方式,可进行断点设置、单步执行、异常处理,可查看修改内存、寄存器、变量等,可查看函数栈,可进行反汇编等;
支持ARM指令或Thumb指令调试。
●调试设备:
EmbestJTAG仿真器,连接到主机的通讯接口可以是DB25的LPT口、USB接口或Enternet接口,另外一端是IDC插头,连接到目标板的JTAG接口。
用户可以使用EmbestIDEforARM配合EmbestJTAG仿真器进行应用软件的开发,EmbestIDEforARM同时也支持一些国内外常用的JtagCable线。
●脱机调试:
EmbestIDEforARM带ARM指令集模拟器,用户可以在PC上模拟调试ARM应用软件。
●丰富的例程:
提供ADI、Atmel、Samsung、CirrusLogic、OKI、Philips、Sharp等多家公
第二章EmbestARM开发系统
2.1EmbestARM开发系统简介
EmbestARM系统包括EmbestIDE集成开发环境,EmbestJTAG仿真器,Flash编程器,EmbestEduKit-III开发板、各种连接线、电源适配器以及实验指导书等。
基本实验模型示意图如2-2所示:
图2-2实验模型构建图
2.2集成开发环境的平台构建
2.2.1开发平台硬件组成
(1)PC机
装有windows98/NT/2000/XP系统和EmbestIDE集成开发环境
(2)EmbestJTAG仿真器
JTAG仿真器也称为JTAG调试器,是通过ARM芯片的JTAG边界扫描口进行调试的设备。
JTAG仿真器连接比较方便,通过现有的JTAG边界扫描口与ARMCPU核通信,属于完全非插入式(即不使用片上资源)调试,它无需目标存储器,不占用目标系统的任何端口,而这些是驻留监控软件所必需的。
另外,由于JTAG调试的目标程序是在目标板上执行,仿真更接近于目标硬件,因此,许多接口问题,如高频操作限制、AC和DC参数不匹配,电线长度的限制等被最小化了。
使用集成开发环境配合JTAG仿真器进行开发是目前采用最多的一种调试方式。
EmbestJTAG仿真器如图2-3所示。
(a)EmbestEmulatorforARM(b)EmbestPowerICEforARM
(c)EmbestUnetICEforARM
图2-3EmbestJTAG仿真器图
(3)EmbestIDE集成开发环境
1)EmbestIDE是一套应用于嵌入式软件开发的新一代集成开发环境。
它提供高效明晰的图形化的嵌入式应用软件开发平台,包括一整套完备的面向嵌入式系统的开发和调试工具:
编辑器、编译器、连接器、调试器、工程管理器等。
EmbestIDE集成开发环境界面风格同MicrosoftVisualStudio,是一套良好的嵌入式软件可视化开发环境。
用户可以很方便的在EmbestIDE集成开发环境中创建和打开工程,建立、打开和编辑文件,编译、连接、运行、调试各种嵌入式应用程序。
EmbestIDE开发环境界面如图2-4EmbestIDE开发环境所示。
图2-4EmbestIDE开发环境
2)EmbestIDE可在Windows98、2000、NT及XP等操作系统上运行,主要支持ARM系列处理器。
对于ARM系列处理器,EmbestIDE目前支持ARM7以及ARM9系列。
EmbestIDEforARM于2001年正式发行,目前的版本为EmbestIDEProforARM2004。
EmbestIDEforARM主要特性如下:
●支持开发语言:
C和汇编。
●界面友好,使用方便:
类似MSVisualStudio的用户界面。
标准的文本编辑功能,支持语法关键字、关键字色彩显示等。
IDE同时提供了高效的FindinFiles引擎,可迅速查找定位指定的字符串信息。
集成著名优秀自由软件GNU的GCC编译器,并经过优化和严格测试,运行在Win32环境;
同时兼容ARMSDT2.51编译器,可以方便ARMSDT及ADS的用户在EmbestIDE下编译工程代码。
提供对ARMAXD调试器的支持,可以方便使用EmbestJTAG仿真器调试ARMSDT及ADS环境的工程代码。
源码级调试,提供了图形和命令行两种调试方式,可进行断点设置、单步执行、异常处理,可查看修改内存、寄存器、变量等,可查看函数栈,可进行反汇编等。
支持ARM/Thumb指令调试。
EmbestJTAG仿真器,连接到主机的通信接口可以是DB25的LPT口、USB接口或Ethernet接口,另外一端是IDC插头,连接到目标板的JTAG接口。
用户可以使用EmbestIDE配合EmbestJTAG仿真器进行应用软件的开发,EmbestIDE同时也支持一些国内外常用的JtagCable线。
EmbestIDEforARM带ARM指令集模拟器,用户可以在PC上模拟调试ARM应用软件。
提供ADI、Atmel、Samsung、CirrusLogic、OKI、Philips、Sharp等多家公司ARM处理器的调试程序示例和使用说明。
●联机帮助:
中、英文两种版本的在线帮助文档。
(4)EmbestEduKit-III开发板
EmbestEduKit-III开发板是实验系统的主要硬件平台,它是英蓓特公司开发的一款全功能ARM开发板,基于Samsung公司的S3C44B0X处理器(ARM7TDMI),资源丰富。
硬件系统包含了嵌入式系统开发应用所需的大部分设备,如串口、以太网口、USB口、音频输出、LCD及TSP触摸屏、5*4的小键盘、固态硬盘、大容量的Flash和SDRAM等等。
用户不仅可以在该硬件平台上完成实验系统提供的实验例子,还可以参考该平台设计自己的目标系统。
该硬件平台如图2-5所示:
2-5实验系统硬件平台
2.2.2软件系统组成
(1)EmbestIDE:
嵌入式开发环境
(2)Windows中的超级终端
(3)EmbestonlineFlashProgrammerforARM:
烧些相关文件到NorFlash中的工具。
(4)Editplus2:
源程序编辑、查看工具。
第三章IIC总线控制的数码管循环显示设计
3.1八段数码管的原理
3.1.1.八段数码管
嵌入式系统中,经常使用八段数码管来显示数字或符号,由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。
(1)结构
八段数码管由八个发光二极管组成,其中七个长