版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 在核心板上集成了微处理器、在核心板上集成了微处理器、64MB SDRAM64MB SDRAM和和64MB NAND Flash64MB NAND Flash模块及部分支持电路。在系统板模块及部分支持电路。在系统板上设计有与核心板连接的接口,同时又集成有显示上设计有与核心板连接的接口,同时又集成有显示器接口,以太网接口,器接口,以太网接口,USBUSB接口,串口,接口,串口,CFCF卡和卡和IrDAIrDA条形码扫描接口等各种外设及以相应的控制部条形码扫描接口等各种外设及以相应的控制部件,另外还有电源管理与转换等一些附属电路。件,另外还有电源管理与转换等一些附属电路。3131键的专用键盘是采
2、用超低功耗的键的专用键盘是采用超低功耗的MSP430MSP430单片机作为单片机作为控制器来对键盘进行编解码,通过自定义的串行键控制器来对键盘进行编解码,通过自定义的串行键盘口接入系统板。显示部分是采用盘口接入系统板。显示部分是采用192192* *64 LCD64 LCD字符字符型显示器。型显示器。 本章首先介绍了系统硬件部分设计及工作原理,本章首先介绍了系统硬件部分设计及工作原理,在软件部分介绍了在软件部分介绍了Windows CEWindows CE操作系统的移植和定操作系统的移植和定制,驱动程序和支持软件的编制。盘点机除了支持制,驱动程序和支持软件的编制。盘点机除了支持常用的设备,还需
3、要支持串口条形码扫描仪,常用的设备,还需要支持串口条形码扫描仪,CFCF卡卡等设备。等设备。票呛恋目陡衰以咎镁情鲜琐慈姓氏嗜恢员都揖颁剥锐琉拥估谅卢绵叮历枢嵌入式系统 应用实例嵌入式系统 应用实例第1页/共43页2实物图片实物图片便携式盘点设备外观着遵虾瓷泊挫槐亮势乾锣板甫全活声涪痛牙箍狼型界平乓背咕越亢随省蹈嵌入式系统 应用实例嵌入式系统 应用实例第2页/共43页39.2 9.2 硬件平台的设计硬件平台的设计 嵌入式设备的硬件架构一般都是以嵌入式微处嵌入式设备的硬件架构一般都是以嵌入式微处理器为核心,通过处理器接口扩展以及系统硬件的理器为核心,通过处理器接口扩展以及系统硬件的支持,把众多的外
4、设单元集成到整个系统中,并通支持,把众多的外设单元集成到整个系统中,并通过过CPLD CPLD 等逻辑转换器件和其它硬件电路完成对外等逻辑转换器件和其它硬件电路完成对外设模块进行读写和控制操作。设模块进行读写和控制操作。 物流盘点机系统硬件原理框图如图物流盘点机系统硬件原理框图如图9-1abc9-1abc所所示,硬件部分主要包含有核心板,系统板和专用键示,硬件部分主要包含有核心板,系统板和专用键盘及盘及 LCDLCD显示器三个部分。显示器三个部分。 1 1)系统核心板简介)系统核心板简介 核心板是整个系统的核心,集成了盘点机系统核心板是整个系统的核心,集成了盘点机系统的微处理器、的微处理器、S
5、DRAMSDRAM单元、单元、NAND FlashNAND Flash单元以及它单元以及它们所需要的辅助部件,如晶体振荡器(们所需要的辅助部件,如晶体振荡器(12MHZ12MHZ和和32KHZ32KHZ两组),电源模块等等。核心板图和两组),电源模块等等。核心板图和PCBPCB板图板图如图如图9.1b,c9.1b,c所示。所示。两开茬叹敝迹隐宽淳钵鲜钳矢向遗椒垂街湿引铃敌袱逊殴派片健头另逐凛嵌入式系统 应用实例嵌入式系统 应用实例第3页/共43页4图图9.1a9.1a硬件平台示意图硬件平台示意图腔渭沙怀鹿桅楞桓做适估昨搓诵碉驭擦懒嘲糕豫颖绕涕况笔欢练火否秒槽嵌入式系统 应用实例嵌入式系统 应用
6、实例第4页/共43页5 2 2) FlashROMFlashROM程序存储器程序存储器 在核心板中,微处理器采用的是基于在核心板中,微处理器采用的是基于ARM920TARM920T核核的的S3C2410S3C2410微处理器。系统的程序存储器采用的是微处理器。系统的程序存储器采用的是NAND FlashNAND Flash,芯片的型号是,芯片的型号是SamsungSamsung公司的公司的K9F1208K9F1208,容量为容量为64MB64MB,NAND FlashROM NAND FlashROM 接口电路原理如图接口电路原理如图9-29-2所示。所示。 它按页进行自动编程,每一页大小为它
7、按页进行自动编程,每一页大小为528528(512+16512+16)字节,编程的典型时间为)字节,编程的典型时间为200200s s。擦除则。擦除则按照块进行,每一块的大小为按照块进行,每一块的大小为16K16K字节,典型的擦除字节,典型的擦除时间为时间为2ms2ms。它在页面中读取单个数据的时间为。它在页面中读取单个数据的时间为50ns50ns。K9F1208K9F1208总共有总共有4848个引脚,起作用的只有个引脚,起作用的只有8 8根根I IO O口口线、读写控制线和电源线等。线、读写控制线和电源线等。I IO O口是地址、命令输口是地址、命令输入和数据输出输入的复用端口。入和数据输
8、出输入的复用端口。K9F1208K9F1208还提供了还提供了ECCECC错误纠正码,实现坏区检测以及实时映射,这样错误纠正码,实现坏区检测以及实时映射,这样它具有高达它具有高达1010万次的编程擦除周期,数据保存长达万次的编程擦除周期,数据保存长达1010年。在年。在S3C2410S3C2410内部集成有内部集成有NAND FlashNAND Flash控制器,可控制器,可以在硬件上直接与以在硬件上直接与NAND FlashNAND Flash相连。在盘点机中,相连。在盘点机中,NAND FlashNAND Flash被用作装载操作系统镜像以及大容量的被用作装载操作系统镜像以及大容量的数据存
9、储,同时也是系统启动存储器。数据存储,同时也是系统启动存储器。 龚在熟怠哩丧户周涝假仰塔钥焉师柏幌滑吹晴从滋没剔混咳酿暇厉死帚脚嵌入式系统 应用实例嵌入式系统 应用实例第5页/共43页6图图9.1b 9.1b 核心板部分的示意图核心板部分的示意图 核心板是整个系统的核心,集成了盘点机系统的处理器,核心板是整个系统的核心,集成了盘点机系统的处理器,SDRAMSDRAM单元,单元,NAND NAND FlashFlash单元以及它们所需要的辅助部件单元以及它们所需要的辅助部件 菠戊巷某种媒圆妮瘸厄守彩他统鸥先纲了啮宜怀满鞠赖昆惕铺吞掷达淳输嵌入式系统 应用实例嵌入式系统 应用实例第6页/共43页7
10、图图9.1c 9.1c 核心板核心板PCBPCB图(图(6 6层)层)桅淳桅典解翘但泊菩衔扭益饮帽希近佩方卡铝轧礼雍捡乎嘿牟锋嘎岭曲跃嵌入式系统 应用实例嵌入式系统 应用实例第7页/共43页8图图9-2 NAND FlashROM9-2 NAND FlashROM的原理图的原理图举涨砧型笔圃取邑邵怎午铝剖搐舌嘻唱幕仅孕畴屁溶闯鸟蝶保期底椅赎崖嵌入式系统 应用实例嵌入式系统 应用实例第8页/共43页9 3) SDRAM 3) SDRAM随机存储器随机存储器 SDRAMSDRAM被用来运行操作系统以及各类数据的缓存,图被用来运行操作系统以及各类数据的缓存,图9-39-3是核心板是核心板 SDRAM
11、 SDRAM 接口部分的接口部分的原理图,系统采用两片原理图,系统采用两片HY57V561620 16MHY57V561620 16M16Bit SDRAM16Bit SDRAM芯片,共同组成芯片,共同组成32Bit32Bit数据宽度,数据宽度,64MB64MB内存。内存。 HY57V561620HY57V561620是一款是一款4Banks4Banks4M4M16Bit16Bit的的SDRAMSDRAM芯片,采用芯片,采用3.3V3.3V电源供电,比较适电源供电,比较适合嵌入式系统。合嵌入式系统。SDRAMSDRAM与其它的与其它的RAMRAM相比,有许多独特的优点,容量大,功耗低,速度快,
12、相比,有许多独特的优点,容量大,功耗低,速度快,最快可以工作在最快可以工作在166MHz166MHz频率下,通常存储时间为频率下,通常存储时间为10ns10ns。在高速存储系统中。在高速存储系统中SDRAMSDRAM是必不是必不可少的外部存储设备。可少的外部存储设备。SDRAMSDRAM通过通过S3C2410S3C2410片内的片内的SDRAMSDRAM控制器来管理,控制器来管理,SDRAMSDRAM挂接在挂接在BANK6BANK6上。上。 速乱淖瑰饲宣纺枉锦抨澎驭鹏甸采丫殖愧敦眺热痕肛篱淫剁功洋巳鬃廖使嵌入式系统 应用实例嵌入式系统 应用实例第9页/共43页10图图9-39-3核心板核心板S
13、DRAMSDRAM部分的原理电路图部分的原理电路图列季鞭淘字悄帛倒陨写阮底扑裸肿绽拣入乳钞虫隔唐薯联弟佰挖剧唾贰侨嵌入式系统 应用实例嵌入式系统 应用实例第10页/共43页11 4 4)核心板电源)核心板电源 图图9-49-4是核心板电源部分的原理电路图。图中,是核心板电源部分的原理电路图。图中,采用采用MIC5207MIC5207电源芯片将来自系统板的电源芯片将来自系统板的3.3V3.3V电压转换电压转换为两组为两组1.8V1.8V电压供给处理器内核使用。核心板上还有电压供给处理器内核使用。核心板上还有一些辅助电路,包括上拉电阻,滤波电容,以及供处一些辅助电路,包括上拉电阻,滤波电容,以及供
14、处理器使用的主时钟晶振,供外设适用的辅助时钟晶振理器使用的主时钟晶振,供外设适用的辅助时钟晶振等,它们一起构成了等,它们一起构成了ARMARM的最小硬件系统板。系统所的最小硬件系统板。系统所使用的使用的S3C2410S3C2410处理器是一款处理器是一款FBGAFBGA封装的高速处理器,封装的高速处理器,运行时钟频率为运行时钟频率为203MHz203MHz,这种,这种FBGAFBGA封装的高速处理封装的高速处理器需要使用多层电路板设计。本系统核心板工作在高器需要使用多层电路板设计。本系统核心板工作在高速信号下,为了布线方便,减少干扰,采用了六层电速信号下,为了布线方便,减少干扰,采用了六层电路
15、板设计,第二层为接地面,四层为电源面,其他各路板设计,第二层为接地面,四层为电源面,其他各层为信号层。核心板通过标准层为信号层。核心板通过标准144144芯芯SIMMSIMM插座与母板插座与母板连接。核心板是一个最小的连接。核心板是一个最小的ARM9ARM9硬件系统板,具有较硬件系统板,具有较好的通用性,可以作为不同产品开发设计的基础。好的通用性,可以作为不同产品开发设计的基础。莆剥咒顽岗帆偶漾旅垣哗蝉疽界醛卢巍叉巧檄非戚愉脚牵旦普资阔仁傀但嵌入式系统 应用实例嵌入式系统 应用实例第11页/共43页12 图图9.4 9.4 电源原理图电源原理图单疽躬茎脐泽派拜幅蹲峙瞥柏继新统菏念绢滴施拈瑟政除
16、菏言剁冒幂霄勾嵌入式系统 应用实例嵌入式系统 应用实例第12页/共43页.2系统板(应用板)的组成与工作原系统板(应用板)的组成与工作原 系统板起两方面的作用,一方面对核心板提供系统板起两方面的作用,一方面对核心板提供支持。如为核心板供电,提供外设到核心板的连接,支持。如为核心板供电,提供外设到核心板的连接,另一方面为各种外设提供了接口。系统板主要集成有另一方面为各种外设提供了接口。系统板主要集成有RJ-45RJ-45网络接口、网络接口、USB USB 主从设备接口、串行接口、主从设备接口、串行接口、LCDLCD显示器接口、显示器接口、CFCF卡接口、键盘等接口电路。同时,
17、卡接口、键盘等接口电路。同时,还有包含有一些相应的控制转换电路(如可编程器件还有包含有一些相应的控制转换电路(如可编程器件CPLDCPLD)和电源管理部分。核心板和母板之间采用标准)和电源管理部分。核心板和母板之间采用标准SIMMSIMM插槽连接,外设和系统板之间采用相应的外设接插槽连接,外设和系统板之间采用相应的外设接口连接。其中可编程器件口连接。其中可编程器件CPLDCPLD采用的是采用的是AlteraAltera公司公司的的EPM3032ATC44-10EPM3032ATC44-10的的CPLDCPLD芯片。芯片。CPLDCPLD器件可以实现器件可以实现高速的高速的FIFOFIFO或者利
18、用其灵活的可编程性,可以作为核或者利用其灵活的可编程性,可以作为核心板与外部其他功能模块的通用接口(如实现了一个心板与外部其他功能模块的通用接口(如实现了一个IDEIDE接口)。因为接口)。因为S3C2410S3C2410本身没有本身没有CFCF卡(半导体辅卡(半导体辅助存储器中的一种)接口,所以为了连接助存储器中的一种)接口,所以为了连接CFCF卡,必须卡,必须采用转换接口。实际系统中采用了总线接口的采用转换接口。实际系统中采用了总线接口的IDEIDE接接口转换为口转换为CFCF卡接口。卡接口。 变泉猿宦厢镇译坯士绢辰句昏酱夹嚏揖枉妙蝉缩僧燃逾茸咨湃存爵邪舀奔嵌入式系统 应用实例嵌入式系统
19、应用实例第13页/共43页14 系统板上的网络接口芯片采用系统板上的网络接口芯片采用CS8900CS8900网络接口芯片。网络接口芯片。CS8900CS8900芯片是芯片是Cirrus Cirrus LogicLogic公司生产的一种局域网处理芯片,它的封装是公司生产的一种局域网处理芯片,它的封装是100-pin TQFP100-pin TQFP,内部集成了在片,内部集成了在片RAMRAM、10BASE-T10BASE-T收发滤波器,并且提供收发滤波器,并且提供8 8位和位和1616位两种接口。本系统中采用位两种接口。本系统中采用1616位接口方位接口方式。以太网接口原理图如图式。以太网接口原
20、理图如图9-6 9-6 所示,图中所示,图中HR601627HR601627是一种脉冲变压器,在是一种脉冲变压器,在CS8900CS8900的的前端对网络信号进行脉冲波形变换。前端对网络信号进行脉冲波形变换。 矢泊怕十竭呆确冶限或良解础莉跋蜘奠杆剿花窿剂酿艾抑杏体茁月骋针达嵌入式系统 应用实例嵌入式系统 应用实例第14页/共43页15图图9.6 CS89009.6 CS8900网络接口原理图。网络接口原理图。寂停仲巍拐怔啼缝姚褥郑纽炯涯闷惺滞谜零疤魁鳞官衬俺惜维袒亦枢文蓬嵌入式系统 应用实例嵌入式系统 应用实例第15页/共43页16 系统采用了一款专用显示器系统采用了一款专用显示器192192
21、6464型型LCDLCD显示器。该显示器是一种图形点阵液晶显示器。该显示器是一种图形点阵液晶显示器,它主要由行驱动器、列驱动器及显示器,它主要由行驱动器、列驱动器及1921926464全点阵液晶显示器组成。可完成图形显全点阵液晶显示器组成。可完成图形显示,也可以显示示,也可以显示12124 4个个( 16( 161616点阵点阵 ) )汉字,采用汉字,采用3.3V3.3V电源供电,与处理器接口采用电源供电,与处理器接口采用8 8位并行输入输出数据总线和位并行输入输出数据总线和8 8条控制线。条控制线。S3C2410S3C2410处理器内部集成了处理器内部集成了LCDLCD控制器,但是该控控制器
22、,但是该控制器不支持用户选定的显示器,只能采用其他方式接入该款显示器,实际采用的是直接挂制器不支持用户选定的显示器,只能采用其他方式接入该款显示器,实际采用的是直接挂接到处理器的通用接到处理器的通用I/OI/O口上的方式。口上的方式。妆罢槽里和床实楚虞擎母甘服瀑蚌臂伊妒豢升懂乏圾钞享坏眉箱种睛岔辛嵌入式系统 应用实例嵌入式系统 应用实例第16页/共43页17 S3C2410 S3C2410中集成了中集成了3.3V TTL 3.3V TTL 电平的串行接口,可以直接使用。为了与标准电平的串行接口,可以直接使用。为了与标准RS232CRS232C串行设备通信,采用了一块串行设备通信,采用了一块SP
23、3243SP3243芯片用于电平的转换,构成了一个比较完整的串口。芯片用于电平的转换,构成了一个比较完整的串口。 在盘点机的实际应用中,需要外接串行口的条形码扫描仪,该扫描仪采用标准串口在盘点机的实际应用中,需要外接串行口的条形码扫描仪,该扫描仪采用标准串口9 9针针D D型插座,工作时需要通过串口第九针外接型插座,工作时需要通过串口第九针外接5V5V电源。为了方便使用该款扫描仪,设计时电源。为了方便使用该款扫描仪,设计时对串行接口进行了改进,在串口第九针上采用电子开关叠加可控的对串行接口进行了改进,在串口第九针上采用电子开关叠加可控的5V5V电源。在作为标准电源。在作为标准串口使用时,串口使
24、用时,5V5V电源和第九针断开。当外接扫描仪时第九针接入电源和第九针断开。当外接扫描仪时第九针接入5V5V电源,驱动扫描仪正电源,驱动扫描仪正常工作。串口第九针是否接入常工作。串口第九针是否接入5V5V电源在串口驱动程序中实现,应用程序通过串口设置系电源在串口驱动程序中实现,应用程序通过串口设置系统调用函数来控制,接口电路如图统调用函数来控制,接口电路如图 9-8 9-8 所示。所示。 挞挽比芽敬朗作泛谆咨饲救酗劈捐缔姨上创乘臀堆加岿奉跑羞督删撞域仲嵌入式系统 应用实例嵌入式系统 应用实例第17页/共43页18图图 9-8 9-8 串行接口电路串行接口电路茶埔结峨赣坛桂春霖杏寡汛祭央铬乞闹略醉
25、任舒篮整察枫谓采居悦涪涯平嵌入式系统 应用实例嵌入式系统 应用实例第18页/共43页19 本系统中所用的设备较多,其中很多设备需要复位信号来保证正常可靠的复位。为此,本系统中所用的设备较多,其中很多设备需要复位信号来保证正常可靠的复位。为此,在系统板上设计了复位信号模块,该模块采用电阻、电容和二极管构成一个简单适用的复在系统板上设计了复位信号模块,该模块采用电阻、电容和二极管构成一个简单适用的复位电路,在此基础上采用位电路,在此基础上采用74HC1774HC17芯片进行波形调整、信号取反继而生成符合设备需要的芯片进行波形调整、信号取反继而生成符合设备需要的高、低电平两组复位信号,供整个系统使用
26、。复位电路的原理图见图高、低电平两组复位信号,供整个系统使用。复位电路的原理图见图9-99-9所示所示 。 S3C2410S3C2410处理器片内集成有处理器片内集成有USBUSB接口,故系统板只是简单的将此信号引出。接口,故系统板只是简单的将此信号引出。 竹诉恐甲准酉匙毫亥妊逗楔各哨韶驶番缉黄累辣肩朋晾大碗违垛辟绿蔗张嵌入式系统 应用实例嵌入式系统 应用实例第19页/共43页20图图9.8 9.8 复位电路原理图复位电路原理图授键喊柴升袋枝趴眉蔫羊默众贬怔虽棍躇仆铲恤峨毡妄伯综繁齐巢综茨葬嵌入式系统 应用实例嵌入式系统 应用实例第20页/共43页21 盘点机的输入信号则采用外接的串口键盘手动
27、输盘点机的输入信号则采用外接的串口键盘手动输入和串口条形码扫描仪读入方式。串口键盘为自行设入和串口条形码扫描仪读入方式。串口键盘为自行设计的,适合盘点业需要的专用键盘,键盘采用了一款计的,适合盘点业需要的专用键盘,键盘采用了一款1616位低功耗单片机位低功耗单片机MSP430MSP430进行管理。进行管理。 使用盘点机的目的是为了提高盘点效率,对于盘使用盘点机的目的是为了提高盘点效率,对于盘点人员而言,使用最多的就是扫描仪和键盘。扫描仪点人员而言,使用最多的就是扫描仪和键盘。扫描仪上只有一个按键,使用简单。由于键盘的效率对于提上只有一个按键,使用简单。由于键盘的效率对于提高盘点的效率非常重要,
28、所以在盘点机系统中设计一高盘点的效率非常重要,所以在盘点机系统中设计一款最合适盘点使用的键盘是提高盘点效率的重要一环。款最合适盘点使用的键盘是提高盘点效率的重要一环。盘点机是一款便携式设备,键盘不可能做得很大,另盘点机是一款便携式设备,键盘不可能做得很大,另一方面为了便于盘点人员实现盲打,按键的大小不能一方面为了便于盘点人员实现盲打,按键的大小不能太小,特别是频繁使用的按键还应该比计算机标准键太小,特别是频繁使用的按键还应该比计算机标准键盘略大。在这种情况下,按键的个数就有所限制,经盘略大。在这种情况下,按键的个数就有所限制,经过大量实践,最终的键盘设计采用了过大量实践,最终的键盘设计采用了3
29、131键的方案。其键的方案。其中字母和数据键在一般情况下作为数字键使用,配合中字母和数据键在一般情况下作为数字键使用,配合ShiftShift按键输入字母,图按键输入字母,图9-109-10为键盘部分的框图。为键盘部分的框图。 .3专用键盘的设计专用键盘的设计锯皑基俄嘻某马笺厨炊咸晤员备桌腑追絮寇檬味丝潭衔耐现曙氧毡冬吁亚嵌入式系统 应用实例嵌入式系统 应用实例第21页/共43页22 同时,为了使用方便,键盘上还设置了系统休眠、同时,为了使用方便,键盘上还设置了系统休眠、唤醒按键,与键盘接口一起通过排线接入系统板。键唤醒按键,与键盘接口一起通过排线接入系统板。键盘所用的控制器为
30、盘所用的控制器为MSP430F149MSP430F149,这是,这是TITI公司推出的公司推出的一种具有一种具有1616位位RISCRISC结构、超低功耗的工业级混合信号结构、超低功耗的工业级混合信号控制器。这些控制器被设计为可用电池工作,而且可控制器。这些控制器被设计为可用电池工作,而且可以有很长使用时间的应用。以有很长使用时间的应用。CPUCPU中的中的1616个寄存器和常个寄存器和常数发生器使数发生器使MSP430MSP430微控制器能达到最高的代码效率,微控制器能达到最高的代码效率,灵活的时钟源可以使器件达到最低的功率消耗,数字灵活的时钟源可以使器件达到最低的功率消耗,数字控制的振荡器
31、(控制的振荡器(DCODCO)可使器件从低功耗模式迅速唤)可使器件从低功耗模式迅速唤醒,在少于醒,在少于6 6s s的时间内激活到活跃的工作方式。程的时间内激活到活跃的工作方式。程序中使用序中使用MSP430F149MSP430F149的外部中断的外部中断I/OI/O口作为键盘扫描口作为键盘扫描的信号线,经过编码后,通过片内内置的串口输出到的信号线,经过编码后,通过片内内置的串口输出到系统板。该芯片在系统板。该芯片在1.8-3.6V1.8-3.6V电压,电压,1MHz1MHz的时钟条件的时钟条件下运行,耗电电流在下运行,耗电电流在0.1-4000.1-400A A之间(因不同的工作之间(因不同
32、的工作模式而不同)。模式而不同)。CPUCPU平时至于节电模式,按键时触发平时至于节电模式,按键时触发中断信号,中断信号,CPUCPU立即被唤醒,处理完键盘事件后,立即被唤醒,处理完键盘事件后,CPUCPU再次进入省电模式。再次进入省电模式。拖锥冠景悲傈酋验柑竞辱损痛惕绷獭沦渔瑞灯眼辟嚏塌氧陆案更协茫再瘁嵌入式系统 应用实例嵌入式系统 应用实例第22页/共43页23图图9-109-10为键盘部分的框图为键盘部分的框图疗宁癌得键笼桐叠溺辕忧壮亏瘴粳梅牧督贯砧为驻械逛滋寞他悉澜仟掇安嵌入式系统 应用实例嵌入式系统 应用实例第23页/共43页24系统 板图10M以太网网卡CS8900条形码扫描仪RS
33、232接口网络传输RJ45接口JTAG调试接口键盘RS232接口LCD显示器接口电源模块MAX603么门诊物携离历勘蚀民瓤旁奴峪仇签踌期婉习袜接啤人匀六懂前束秧诊忘嵌入式系统 应用实例嵌入式系统 应用实例第24页/共43页259.3 9.3 软件系统的设计软件系统的设计 系统的软件系统主要包括嵌入式操作系统选型、定制及系统的软件系统主要包括嵌入式操作系统选型、定制及裁减、硬件驱动程序和用户应用程序方面。裁减、硬件驱动程序和用户应用程序方面。 .1操作系统的定制与实现操作系统的定制与实现 Window CE Window CE 具有良好的图形交互界面,便于开发调试上层具有良好的图
34、形交互界面,便于开发调试上层图形应用程序,所以本便携式盘点机的操作系统选用了图形应用程序,所以本便携式盘点机的操作系统选用了Windows CEWindows CE。 Microsoft Windows CE .NET Microsoft Windows CE .NET 是支持多平台的、可定制的是支持多平台的、可定制的3232位嵌入式操作系统。支持多线程、完全抢占执行和多任务。位嵌入式操作系统。支持多线程、完全抢占执行和多任务。不仅适用于工业上的嵌入式设备,同时支持高度便携性的个不仅适用于工业上的嵌入式设备,同时支持高度便携性的个人计算设备,如掌上电脑、人计算设备,如掌上电脑、PDA PDA
35、和移动通信设备等。和移动通信设备等。Windows Windows CE .NETCE .NET在设计上采用完全的模块化结构,可以根据硬件平台在设计上采用完全的模块化结构,可以根据硬件平台和应用目的灵活的进行定制。对于应用程序的开发者来说,和应用目的灵活的进行定制。对于应用程序的开发者来说,Windows CE .NET Windows CE .NET 提供了同提供了同 Windows Windows 环境相似的各种开发环境相似的各种开发环境。环境。Microsoft Win32 APIMicrosoft Win32 API、ActiveX ActiveX 控件、消息队列、控件、消息队列、CO
36、M COM 接口、接口、ATL ATL 和和MFCMFC,这对于提高编程者的效率和从其他,这对于提高编程者的效率和从其他 Windows Windows 平台上移植成功的应用程序很有好处。平台上移植成功的应用程序很有好处。Windows Windows CE .NET CE .NET 内建了对多媒体、通信(内建了对多媒体、通信(TCP/IPTCP/IP、SNMPSNMP、TAPI TAPI 等)等)和安全的支持,并且提供了和安全的支持,并且提供了Windows Windows 用户熟悉的常用的应用用户熟悉的常用的应用程序。程序。Windows CE Windows CE 通过通过 Active
37、Sync ActiveSync 实现了目标设备同台实现了目标设备同台式计算机之间的通信。式计算机之间的通信。 帝断屿暑驰径乃席衔丁却狮辽窥锨师劲益篡雀婿涸众韧很畸拯明吱彩冷编嵌入式系统 应用实例嵌入式系统 应用实例第25页/共43页26 1 1)NAND FlashROMNAND FlashROM存储空间的分配存储空间的分配 系统核心板上使用系统核心板上使用 NAND FlashROMNAND FlashROM芯片内部分为芯片内部分为4 4个平个平面,每个平面包含面,每个平面包含10241024个块,每块包含个块,每块包含3232页,每页页,每页512512字节。字节。芯片的读写以页为单位,擦
38、除以块为单位。故存储器的分配芯片的读写以页为单位,擦除以块为单位。故存储器的分配以块为单位以块为单位(16KB)(16KB)。存储器分为两个大小相同的大区。存储器分为两个大小相同的大区, ,即系统即系统区和用户区,均为区和用户区,均为20482048块。用户区供用户保存用户程序和数块。用户区供用户保存用户程序和数据使用。系统区又具体分为三个区段:据使用。系统区又具体分为三个区段:( 1 1)NBootNBoot区(区(0-10-1块):块): 大小为大小为2 2块(块(32KB32KB),其前),其前4KB4KB是系统启动代码,用于引是系统启动代码,用于引导导EBootEBoot(调试状态)或
39、者(调试状态)或者Windows CEWindows CE(发行状态)内核,(发行状态)内核,其他部分可以保存启动中可能需要的程序或者数据。其他部分可以保存启动中可能需要的程序或者数据。(2 2)EBootEBoot区(区(2-82-8块):块): 大小为大小为7 7块(块(112K112K),一般在调试时使用,主要作用是格),一般在调试时使用,主要作用是格式化式化NAND FlashNAND Flash,通过网络下载,通过网络下载Windows CEWindows CE内核等。内核等。(3 3)Windows CEWindows CE区(其他块):保存区(其他块):保存Windows CEW
40、indows CE的系统文件。的系统文件。9.3.1 Win CE9.3.1 Win CE操作系统的定制和实操作系统的定制和实现现旨倚铅北姻搞脂搭絮睡碘磁霹悉瓢雪又沁瞳拥谦长伍诸侄妊斌藕吠洲骸茹嵌入式系统 应用实例嵌入式系统 应用实例第26页/共43页272 2)Win CEWin CE操作系统的定制和实现操作系统的定制和实现 搭建基于搭建基于Windows CEWindows CE操作系统的平台需要完成以操作系统的平台需要完成以下主要步骤:下主要步骤:(1 1)导入和硬件平台相关的)导入和硬件平台相关的.cec.cec文件;文件;(2 2)利用标准开发向导,根据)利用标准开发向导,根据Win
41、dows CEWindows CE的架构创的架构创建一个平台;建一个平台;(3 3)利用附加项和目录特征客户化平台;)利用附加项和目录特征客户化平台;(4 4)为特定的目标设备创建一个自引导程序和板级支)为特定的目标设备创建一个自引导程序和板级支持包(持包(Board Suport PackageBoard Suport Package););(5 5)加入)加入BSPBSP文件编译操作系统镜像文件,通过以太文件编译操作系统镜像文件,通过以太网将镜像文件下载到目标设备,并调试平台。网将镜像文件下载到目标设备,并调试平台。(6 6)平台搭建并调试成功,为平台应用程序开发者导)平台搭建并调试成功,
42、为平台应用程序开发者导出软件开发工具包(出软件开发工具包(SDKSDK)。)。 这样程序开发者就可以利用这样程序开发者就可以利用EVCEVC开发应用软件了。开发应用软件了。倡雅潘炽疤脾醛乳做擦啪猖熬煤刀肇呐诌兆恍调谜家施页司展惰拆径猪齐嵌入式系统 应用实例嵌入式系统 应用实例第27页/共43页28 通常,在开发平台的时候,首先将通常,在开发平台的时候,首先将OSOS镜像文件下镜像文件下载到一个硬件平台,比如基于载到一个硬件平台,比如基于PCPC硬件的硬件的Windows CEWindows CE开发平台(开发平台(CEPCCEPC)。)。Platform BuilderPlatform Bui
43、lder包含了包含了CEPCCEPC和很多其他硬件开发平台的自引导程序和板级支持包和很多其他硬件开发平台的自引导程序和板级支持包(BSPsBSPs)。在硬件开发平台上把平台提炼和调试之后)。在硬件开发平台上把平台提炼和调试之后使之适合目标设备的要求。在下载镜像文件到目标设使之适合目标设备的要求。在下载镜像文件到目标设备前要先创建自引导装入程序和原始设备制造商备前要先创建自引导装入程序和原始设备制造商(OEMOEM)适应层()适应层(OALOAL)。)。 OALOAL是介于内核和目标平台固件之间的一个层。是介于内核和目标平台固件之间的一个层。为了使为了使Windows CEWindows CE系
44、统能够运行在多种硬件平台上,系统能够运行在多种硬件平台上,微软又提出了一个新的概念微软又提出了一个新的概念OEMOEM适配层适配层(OAL)(OAL)。这个这个OEMOEM适配层适配层(OAL)(OAL)处于处于Windows CEWindows CE内核和硬件平内核和硬件平台中间,它可以将特定设备的硬件特性与台中间,它可以将特定设备的硬件特性与Windows Windows CECE内核功能隔离开,从而使内核功能隔离开,从而使Windows CEWindows CE的内核可以的内核可以通过这个硬件隔离层提供的标准抽象接口来实现与硬通过这个硬件隔离层提供的标准抽象接口来实现与硬件平台的通讯。件
45、平台的通讯。OALOAL的存在可以隐藏各种与硬件有关的存在可以隐藏各种与硬件有关的细节,屏蔽不同平台硬件的差异,保证的细节,屏蔽不同平台硬件的差异,保证Windows Windows CECE上层内核的独立性,从而增强了整个系统的可移植上层内核的独立性,从而增强了整个系统的可移植性。性。平疼筷领揽跌住籽檬班擂争概猪包刽漳追肌铂棕娘拜忿占较效契胯俊眼纤嵌入式系统 应用实例嵌入式系统 应用实例第28页/共43页29 这一特性对于这一特性对于Windows CEWindows CE上层应用设计的程序员上层应用设计的程序员来说无疑是一个福音,但是对于来说无疑是一个福音,但是对于Windows CEWi
46、ndows CE在特定在特定平台的移植以及底层硬件驱动设计的开发者来说,却平台的移植以及底层硬件驱动设计的开发者来说,却面临着巨大的困难。面对一个结构复杂、功能强大、面临着巨大的困难。面对一个结构复杂、功能强大、设计先进的操作系统,如何全面认识设计先进的操作系统,如何全面认识OALOAL设计结构、设计结构、如何实现如何实现OALOAL与特定硬件平台正确交互以及如何建立与特定硬件平台正确交互以及如何建立OALOAL与上层内核连接等关键技术,在系统设计和移植与上层内核连接等关键技术,在系统设计和移植时都是一个严峻的考验。时都是一个严峻的考验。OALOAL提供的功能与底层硬件提供的功能与底层硬件的控
47、制和通信密不可分,不同的硬件平台会有不同的的控制和通信密不可分,不同的硬件平台会有不同的OALOAL实现。与其它处理器平台移植一样,实现。与其它处理器平台移植一样,S3C2410S3C2410处处理 器 的理 器 的 O A LO A L 需 要 在 系 统 体 系 结 构 、 板 级 支 持 包需 要 在 系 统 体 系 结 构 、 板 级 支 持 包(Board Support PackageBoard Support Package)两个层面实现。)两个层面实现。 本系统采用的处理器是本系统采用的处理器是S3C2410S3C2410处理器,这是一处理器,这是一款基于款基于ARM V4AR
48、M V4版本的处理器,在定制操作系统过程中版本的处理器,在定制操作系统过程中采用了采用了ARM V4ARM V4类型的类型的BSPBSP。在此基础上,加载开发的。在此基础上,加载开发的本地驱动程序导出的本地驱动程序导出的.cec.cec文件到文件到Platform BuilderPlatform Builder的的CatalogCatalog栏下,作为可选组件供操作系统选择。栏下,作为可选组件供操作系统选择。捶字卞刮眶遂旦宰讣义涉瞅穴佑去幻学烷韶傻诧戴跨位杨杏桅忻冬晰雁恿嵌入式系统 应用实例嵌入式系统 应用实例第29页/共43页30 由于由于Windows CEWindows CE内核通常为内
49、核通常为20M-30M20M-30M字节,在调字节,在调试机器时要经常地将如此巨大的数据下载到试机器时要经常地将如此巨大的数据下载到RAMRAM中,中,传输效率是最关键的问题。传输效率是最关键的问题。Platform BuilderPlatform Builder的下的下载服务提供了四种方式:载服务提供了四种方式: (1 1)实时仿真下载服务:它启动仿真器并且在仿真)实时仿真下载服务:它启动仿真器并且在仿真器上引导操作系统的镜像文件。仿真下载服务不需要器上引导操作系统的镜像文件。仿真下载服务不需要通讯硬件,因为仿真器是在开发工作站上运行的。这通讯硬件,因为仿真器是在开发工作站上运行的。这是是P
50、latform Builder 4.0Platform Builder 4.0版本开始提供的一个新技版本开始提供的一个新技术。仿真器比目标设备硬件有着更高的容错性。可以术。仿真器比目标设备硬件有着更高的容错性。可以监控目标板程序运行的各种状态。监控目标板程序运行的各种状态。 ( 2 2) 以 太 网 下 载 服 务 : 它 通 过 以 太 网 连 接 利 用) 以 太 网 下 载 服 务 : 它 通 过 以 太 网 连 接 利 用Windows CEWindows CE的自引导装入程序(的自引导装入程序(EBootEBoot)下载操作系)下载操作系统镜像文件。这种服务方式需要在开发工作站上有一
51、统镜像文件。这种服务方式需要在开发工作站上有一个以太网卡,目标机上一个调试用的以太网卡。利用个以太网卡,目标机上一个调试用的以太网卡。利用以太网下载服务,所有连接到目标设备的应用程序和以太网下载服务,所有连接到目标设备的应用程序和工具都可以通过一条简单的网线来通讯。工具都可以通过一条简单的网线来通讯。瓤枝井折瘦熟莎猫假岁硅汝好妊朽韭骤鸡箱遭硬耀俊汀赦筛蔼答滩晓徘旋嵌入式系统 应用实例嵌入式系统 应用实例第30页/共43页31 (3 3)并行下载服务:)并行下载服务: 也利用也利用WinCEWinCE的自引导程序,的自引导程序,然后通过并行口连接下载操作系统的镜像文件。但是,然后通过并行口连接下
52、载操作系统的镜像文件。但是,在并行下载服务里没有与之对应的内核传输。在并行下载服务里没有与之对应的内核传输。 (4 4)串行下载服务:串行下载服务是通过串行口由)串行下载服务:串行下载服务是通过串行口由Win CEWin CE自引导装入程序通过串行口连接下载操作系统自引导装入程序通过串行口连接下载操作系统镜像文件。在这种服务里,无法在运行时配置设备方镜像文件。在这种服务里,无法在运行时配置设备方的设置。但是可以修改并重新编译操作系统镜像文件的设置。但是可以修改并重新编译操作系统镜像文件代码来改变波特率。如果采用串口下载,假设采用最代码来改变波特率。如果采用串口下载,假设采用最高传输速率高传输速
53、率115200bps115200bps,那么在,那么在20M20M的数据下载则需的数据下载则需要大约要大约2323分钟,故所需时间较长。分钟,故所需时间较长。 在实际系统开发过程中,用以太网连接来下载操在实际系统开发过程中,用以太网连接来下载操作系统的镜像文件。系统自引导装入程序(作系统的镜像文件。系统自引导装入程序(EBootEBoot)与运行在开发工作站上的与运行在开发工作站上的Platform BuilderPlatform Builder通信,通信,下载镜像文件和设置调试服务。以太网连接通过以太下载镜像文件和设置调试服务。以太网连接通过以太网服务可以提供更快的传输速度和更有效的集成功能
54、。网服务可以提供更快的传输速度和更有效的集成功能。串行连接和并行连接相对以太网连接速度慢,效率比串行连接和并行连接相对以太网连接速度慢,效率比较低,只在监视调试过程的时候偶尔用上。较低,只在监视调试过程的时候偶尔用上。豢殷焉回恕应游抗少蝇爆金释劫曾段矿学雕反昆啤弗侄嫌绝裴织症嘎斥绥嵌入式系统 应用实例嵌入式系统 应用实例第31页/共43页323 3) Windows CEWindows CE的启动过程的启动过程(1 1)在核心板上,将系统设置为)在核心板上,将系统设置为NAND FlashROMNAND FlashROM启动启动方式,即方式,即OMlOMl:00设置为设置为0000;(2 2)
55、上电复位后,系统自动将)上电复位后,系统自动将NAND FlashROMNAND FlashROM内的前内的前4KB4KB字节(字节(NBootNBoot)拷贝到)拷贝到boot SRAMboot SRAM中,执行中,执行boot boot SRAMSRAM中代码。如果需要(中代码。如果需要(NBoot 4KBNBoot 4KB),将),将NBootNBoot区数据拷贝到区数据拷贝到SDRAMSDRAM中,再执行中,再执行NBootNBoot;(3 3)如果设置为调试状态,)如果设置为调试状态,NBootNBoot将将EBootEBoot区数据装区数据装入入SDRAMSDRAM,执行,执行EB
56、ootEBoot,EBootEBoot程序按照用户的指令通程序按照用户的指令通过以太网下载过以太网下载Windows CEWindows CE镜像文件,并将镜像文件镜像文件,并将镜像文件写入写入Windows CEWindows CE区段;区段;(4 4)NBootNBoot或者或者EBootEBoot将将Windows CEWindows CE区段数据装入区段数据装入SDRAMSDRAM,引导,引导Windows CEWindows CE操作系统。操作系统。哑盛衫撮拎听屏融莫心贫肘蔗抄深淬宽额均翘霖酿蛀擒抠妖咏汾咙雏裹蹿嵌入式系统 应用实例嵌入式系统 应用实例第32页/共43页33 本系统配
57、置为本系统配置为NAND FlashROMNAND FlashROM启动,系统上电复位后,启动,系统上电复位后,boot SDRAMboot SDRAM被映射到地被映射到地址址0 x000000000 x00000000,系统自动将,系统自动将NAND FlashNAND Flash中的前中的前4KB4KB代码拷贝到代码拷贝到boot SDRAMboot SDRAM中,开始中,开始执行执行boot SRAMboot SRAM中的代码,即中的代码,即NBootNBoot程序。系统执行的第一行代码即为程序。系统执行的第一行代码即为NBootNBoot的第一的第一行代码。行代码。NBootNBoot
58、的功能比较简单,只是用于初始化系统,将复杂的系统软件装入的功能比较简单,只是用于初始化系统,将复杂的系统软件装入SDRAMSDRAM,之后就交出控制权。,之后就交出控制权。脾如缝棺睦正瞳望程庭赚楔仍科役杆迈机攫磷竟略敬永宫谊龚仁酚帝礼条嵌入式系统 应用实例嵌入式系统 应用实例第33页/共43页3.2盘点系统驱动程序的开发盘点系统驱动程序的开发 1 1) Windows CE Windows CE 驱动模型驱动模型 要把要把Windows CEWindows CE移植到目标平台上,必须为在硬件平台上的硬件设备提供驱动程序。移植到目标平台上,必须为在硬件平台上的硬件设备提供驱动程
59、序。通过设备驱动程序可以将操作系统和外部设备连接起来,使得操作系统能够识别这些通过设备驱动程序可以将操作系统和外部设备连接起来,使得操作系统能够识别这些设备,并为应用程序提供设备服务。就像其它操作系统一样,设备,并为应用程序提供设备服务。就像其它操作系统一样,Windows CEWindows CE支持广泛支持广泛的基于各种的基于各种CECE平台的设备驱动程序,同时也提供一些用于驱动程序开发的模型平台的设备驱动程序,同时也提供一些用于驱动程序开发的模型(model)(model)。柠拇碟哑收粉邢氏善历栖矢钩醛甫趴俱甭八瞩净擅灿终厄侵蕾刽缓佐剧粉嵌入式系统 应用实例嵌入式系统 应用实例第34页/
60、共43页35 Windows CE Windows CE 的设备驱动设备模型有两种形式:流的设备驱动设备模型有两种形式:流接口驱动接口驱动( Stream Interface Driver )( Stream Interface Driver )和本地设和本地设备驱动备驱动( Native Device Driver )( Native Device Driver ) 。两者的差别在。两者的差别在于它们向上层提供的编程接口不同,流接口驱动提供于它们向上层提供的编程接口不同,流接口驱动提供一组统一格式的流接口,而本地设备驱动则根据具体一组统一格式的流接口,而本地设备驱动则根据具体设备的需求提供相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教版七年级下册英语月考试题带答案和解析
- 采购助理岗位考试题及解析
- 投资工程师面试题及答案
- 华为软件开发面试题库
- 沙钢集团财务报表常见问题解析
- 2025年智能垃圾分类体系项目可行性研究报告
- 2025年家居智能化改造服务项目可行性研究报告
- 2025年智慧矿山管理系统项目可行性研究报告
- 2025年虚拟现实教育应用平台可行性研究报告
- 2025年5G通信技术在智能制造中的应用可行性研究报告
- JJG 1148-2022 电动汽车交流充电桩(试行)
- 证券公司国际化发展实践报告及典型案例汇编2025
- 图神经网络与图学习
- 玩转计算机网络-计算机网络原理智慧树知到课后章节答案2023年下青岛大学
- 信息化建设情况调查表
- SWITCH塞尔达传说旷野之息-1.6金手指127项修改使用说明教程
- 网页制作智慧树知到答案章节测试2023年
- FZ/T 80002-2008服装标志、包装、运输和贮存
- 七巧板题解课件
- 创力-ebz260使用维护说明书
- 咽部解剖生理、咽炎
评论
0/150
提交评论