第5章 实际嵌入式系统_第1页
第5章 实际嵌入式系统_第2页
第5章 实际嵌入式系统_第3页
第5章 实际嵌入式系统_第4页
第5章 实际嵌入式系统_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第5章实际嵌入式系统嵌入式系统的硬件扩展1S3C44B0X系统2PXA2xx系统35.1嵌入式系统的硬件扩展 本节以ARM处理器的硬件扩展为例,介绍以嵌入式处理器为核心,扩展成整个硬件系统中的基本原则和概念。 ARM处理器在硬件上的扩展和任何一种单片机的扩展并没有区别。从本质上说,处理器进行硬件扩展的特点和CPU的体系结构关系不大,但是和处理器的集成度有一定关系。5.1嵌入式系统的硬件扩展 嵌入式处理器基本的外围硬件扩展包括了三种类型: ①、内部模块扩展 ②、总线扩展 ③、GPIO扩展 这3种类型的硬件扩展是由嵌入式处理器组成整个系统的基础,一般每种处理器都需要这些扩展,具体的扩展内容和具体的处理器有关系。5.1嵌入式系统的硬件扩展图5-1处理器的硬件扩展方式5.1嵌入式系统的硬件扩展5.1.1内部模块扩展 内部模块扩展的概念为:通过增加外部的电路,完成处理器内部的模块提供的功能。由于处理器设计的限制,不可能把模块中所有的硬件都集成到处理器的内部。例如:

处理器时钟模块不可能集成晶振,UART模块不可能集成电平转换的功能。 内部模块扩展的方式就是完成这部分的硬件扩展。5.1嵌入式系统的硬件扩展 内部模块扩展一般只是搭建外部的电路,提供硬件工作的功能。在逻辑上外部扩展的硬件和整个处理器的控制没有直接关系。 因此,处理器某个内部模块的使用方法,一般不会受外围电路设计的影响。处理器内部模块的使用就是读写内部模块的功能寄存器,外围电路不会改变处理器的寄存器,因此它们也不会影响处理器模块的使用。 5.1嵌入式系统的硬件扩展5.1.2总线扩展 总线扩展的含义是:利用处理器的外部总线控制器(又称内存控制器),扩展内存类芯片。 对于拥有外部总线的处理器,其外围总线一般都包括以下内容:

①、地址总线 ②、数据总线 ③、控制信号 ④、片选信号5.1嵌入式系统的硬件扩展 总线扩展既适用ROM、NORFLASH、SRAM、SDRAM和NANDFLASH等内存模块,也适用网络芯片、USB等类似内存的芯片。 片选信号也是扩展中的一个很重要的环节。扩展内存的时候,很可能同时扩展多个内存芯片。使用处理器片选信号连接芯片的片选信号,就可以方便地为各个芯片分配不同的地址空间。5.1嵌入式系统的硬件扩展芯片种类读写方式扩展方式功能和特点价格SRAM线性读、写地址数据总线运行代码可读写数据速度很快贵NORFLASH线性读写需要根据时序地址数据总线固化代码和数据运行代码只读数据较贵SDRAM线性读、写特殊内存控制器的支持运行代码可读写数据便宜NANDFLASH根据时序读写GPIO或者普通总线方式大规模可读写数据不能线性访问便宜5.1嵌入式系统的硬件扩展 在读写操作时,处理器自动选通对应的片选信号。片选信号其实不是总线扩展必需的。 如果没有片选信号可以通过地址总线+译码器实现片选的功能,或者直接使用地址总线片选(当然这样会浪费地址空间)。5.1嵌入式系统的硬件扩展5.1.3GPIO扩展 GPIO(通用输入输出端口)是每个处理器都具有的功能部件。GPIO扩展是非常灵活的,因为每一引脚都是可以编程的,从理论上这种引脚可以通过程序完成任何一种功能。 5.1嵌入式系统的硬件扩展 ①、输出 当使用输出功能时,需要将GPIO引脚设置为输出(output)模式,在程序通过写GPIO的相关寄存器,改变GPIO引脚的状态,从而控制外部的信号。 输出的典型应用是LED,即利用一个GPIO引脚连接一个LED。通过控制GPIO的高低电平可以控制LED的亮灭。5.1嵌入式系统的硬件扩展 ②、输入 当使用输出功能时,需要将GPIO引脚设置为输出(input)模式,在程序通过写GPIO的相关寄存器,获知GPIO引脚的状态,从而得到外部输入的信号。 输出的典型应用是按键,可以通过程序的查询方式,获取按键的状态,从而获取外部输入的指令。5.1嵌入式系统的硬件扩展 ③、矩阵键盘 矩阵键盘是一种广泛使用的输入方式,其扩展的特点是可以利用GPIO的N2个引脚,使用N2个按键。 N×N矩阵键盘可能使用多种的扫描方式,都可以获取类似的功能,也可以通过GPIO和中断协同完成该功能。5.1嵌入式系统的硬件扩展 ④、总线信号模拟 某些处理器没有外部总线信号的。在这种情况下,如果确实需要使用内存,可以利用GPIO模拟总线信号。 在模拟总线信号的时候,GPIO需要同时考虑地址总线和数据总线,地址总线是单向输出的,数据总线包含输出和输入的功能。5.1嵌入式系统的硬件扩展 在内存类的芯片中,一般GPIO可以用于NORFLASH和SRAM信号的模拟,NANDFLASH本身可以不用总线信号扩展,而SDRAM的控制信号非常复杂,基本上不可能用GPIO模拟。5.1嵌入式系统的硬件扩展 ⑤、通信信号模拟 有的处理器需要使用某种总线,但是内部不具有这个模块。在这种情况下,通过GPIO可以模拟一些简单的时序,如SPI、IIC等。5.1嵌入式系统的硬件扩展5.1.4综合扩展 综合扩展包括了以下几个方面的内容: ①、总线扩展部件与GPIO 某些连接总线上的模块还具有其他的控制引脚,这些引脚并不能通过地址总线和数据总线连接。因此要使用功能完善的模块,还需要使用可编程引脚(GPIO)5.1嵌入式系统的硬件扩展 ②、内部模块与GPIO 内部的模块的电路引出后,有的时候功能还是不够完善,同样需要GPIO的协助 ③、总线扩展部件与中断源 在一些总线扩展芯片中可以使用中断。讲芯片相关引脚与处理器的外部中断引脚相连,外部芯片可以触发处理器的中断,提供更高的性能。5.2S3C44B0X系统5.2.1系统概述 作为系统的核心部分,S3C44B0X微处理器的内部集成了很多部件,如ADC、IIC总线、UART等。 但是仅仅有内部部件是不够的,它没有内部的存储器,所以要保证系统的运作,必须在外部增加存储器。外部的存储器包括供程序运行的SDRAM和供固化程序的FLASH,此外为了完善系统的功能还要增加网络和USB芯片。5.2S3C44B0X系统 1、系统组成 从模块化划分的角度,S3C44B0X系统可以分为几个部分:电源模块、处理器模块、内存模块、网络模块、USB模块。 处理器模块包括处理器的核心系统和从处理器中引出的外设,这些外设的功能基本都几种在处理器芯片中,外部只是提供简单的支持电路。5.2S3C44B0X系统 2、内存地址空间 S3C44B0X的内存空间分成8个Bank,每个Bank空间为32M,共256M。 外部的数据线为25根,使用每个Bank32M的地址空间,8根Bank片选信号线nGCS0~nGCS7分别选择8个Bank。S3C44B0X内存空间分配表如表5-1所示。5.2S3C44B0X系统BANK名称片选信号地址空间使用设备BANK0nGCS0[0x00000000-0x01FFFFFF]NORFLASH:SST39VF1601BANK1nGCS1[0x02000000-0x03FFFFFF]USBDEVICE:PDIUSBD12BANK2nGCS2[0x04000000-0x05FFFFFF]BANK3nGCS3[0x06000000-0x07FFFFFF]网络芯片:RTL8019ASBANK4nGCS4[0x08000000-0x09FFFFFF]BANK5nGCS5[0x0A000000-0x0BFFFFFF]BANK6nGCS6[0x0C000000-0x0DFFFFFF]SDRAM:HY57V641620BANK7nGCS7[0x0E000000-0x0FFFFFFF]5.2S3C44B0X系统设备地址空间大小NORFLASH:SST39VF1601[0x00000000-0x002FFFFF]2MUSBDEVICE:PDIUSBD12[0x02000000-0x02000001]2字节网络芯片:RTL8019AS[0x06000000-0x0600001F]32字节SDRAM:HY57V641620[0x0C000000-0x0C7FFFFF]8M具体内存空间的分配和使用5.2S3C44B0X系统 3、中断资源 S3C44B0X的中断控制器一共可以支持30个中断源,其中8个外部中断(0~3独立占用中断,4~7共用一个中断),扩展中断的情况如下:

EINT0:USBD12 EINT1:网络芯片RTL8019 EINT2~3:保留 EINT4~7:KEY1~45.2S3C44B0X系统 在S3C44B0X系统的外部中断引脚中,中断源0~3在S3C44B0X的中断控制器分别占有一个中断,而中断源4~7在中断控制器中共用一个中断。 如果使用中断源4~7,应该通过软件来对具体的中断源进行区分。因此,中断源0~3使用较方便,一般分配给USB和网络芯片,中断源4~7一般分配给外部的按键。5.2S3C44B0X系统5.2.2系统组成 1、电源及复位 根据供电的需要,在S3C44B0X系统的电源电路中,需要提供三种电压(5v、3.3v、2.5v)。 因此,使用三个稳压芯片:AS1117-5.0、LM1117-2.5、LM1117-3.3。 5v电压输出供片内一些其他模块使用,3.3v电压供I/O和外设使用,2.5v电压供CPU内核使用。5.2S3C44B0X系统 2、CPU基本组成模块 CPU的基本组成模块包括S3C44B0X芯片及其周边电路。主要部分有芯片的供电-时钟部分、各部件外围电路部分、电磁兼容部分等。其中,芯片的供电-时钟部分和JTAG部分是必不可少的,前者保证CPU内核运行,后者保证能够进行调试,其他模块都可以根据需要选择。 5.2S3C44B0X系统 3、JTAG JTAG接口用于调试,它连接了S3C44B0X内部的5根线(TDO、TDI、TMS、TCK、nTRST),其中4根是输入,1根是输出。JTAG电路的接口部分使用ARM公司推荐的14芯片JTAG接口。 系统的复位引脚nRESET和JTAG的复位引脚nTEST连接在一起,中间使用一个跳线就可以选择断开或连接。同时,各个引脚增加电阻与VDDIO相连。5.2S3C44B0X系统 4、LED LED电路可利用S3C44B0X的GPIO引脚。 5、按键 按键共有4个,分别由上拉电阻接到S3C44B0X的外部中断引脚EXINT4~7,R1~R4是4个按键上的上拉电阻。当按键没有按下的时候,电路不通,中断引脚获得高电平;当按键按下时,电路导通,中断引脚获得低电平。5.2S3C44B0X系统 6、蜂鸣器 蜂鸣器连接到S3C44B0X处理器的PWM定时器2的外部输出上,可以利用脉宽调制控制蜂鸣器声音的大小。 7、LCD LCD接口是液晶显示部分的接口,使用一个20针的接口作为输出,主要用来连接S3C44B0X内部LCD接口的引脚。5.2S3C44B0X系统 8、实时时钟 实时时钟部分有两块外围电路,一个是实时时钟模块的时钟电路,另一个部分是实时时钟的供电部分,运行中实时时钟采用VDDRCT供电,当系统关闭后,采用3V的电池供电。 5.2S3C44B0X系统 9、UART 异步串口是将处理器内部的UART的8根线利用电平转换芯片引出,完成两个串口的功能。 串口部分由两个MAX232控制两个串口,一个MAX232控制两个串口的4根接收/发送线,另外一个MAX232完成两个串口的流控制功能。 使用一块MAX232输出两个串口的TxD0/1、RxD0/1引脚,完成串口的基本功能,另外一个可以完成硬件流控制的功能。5.2S3C44B0X系统 10、IIC IIC部分连接到处理器的IIC总线上,在外面连接一块EEPROM芯片,可以利用IIC总线读写电路。这里选用的EEPROM是KS24C080芯片,需要将IIC的时钟线和数据线连接在芯片上,并完成芯片其他引脚的供电和接地。5.2S3C44B0X系统 11、IIS音频 S3C44B0X的IIS完成音频输出的功能,需要增加外部的两个芯片CS4334和TDA7050。 CS4334是一个8引脚、24位、96khz的立体声数模转换芯片,TDA7050是音频放大器,通过这两个芯片和一些外围的电阻、电容,即可完成音频输出的功能。5.2S3C44B0X系统 12、CPU引脚接口 S3C44B0X采用LQFP封装,共有160个引脚,每边40个。这些引脚中包括输入、输出、电源、模拟输入、模拟输出等,很多引脚是多功能的。 13、NORFLASH 系统存储模块包括两个部分:NORFLASH和SDRAM。SDRAM是易失性内存,用于运行程序;FLASH是非易失性内存,用于固化程序。5.2S3C44B0X系统 NORFLASH随机读取速度快,容量较小、写入速度慢,主要用于程序代码和只读数据的存储。 NORFLASH可以完成以下功能: ①、运行代码 ②、固化代码 ③、固化只读数据和已初始化读写数据 ④、在线更新内容5.2S3C44B0X系统 14、SDRAM SDRAM部分使用HY57V641620芯片,本芯片为4Banks×1M×16bit的SDRAM,工作电压为3.3±0.3V,54个引脚,读延迟为2~3个周期。5.2S3C44B0X系统 SDRAM-同步动态随机存储器。同步表示其时钟频率和处理器时钟频率相同,内部命令的发送速度都以其为基准;动态是指存储阵列需要不断刷新来保证数据不丢失,随机是指数据不是依次存储,而是自由指定地址进行数据读写。5.2S3C44B0X系统 SDRAM需要特殊的内存控制器的支持,这些控制器必须支持SDRAM所需要的控制信号。 也就是说,对于使用SDRAM的系统,处理器必须具有SDRAM控制器。SDRAM的控制信号比较复杂,对于没有SDRAM内存控制器的处理器,一般是不能通过总线模拟使用SDRAM的。5.2S3C44B0X系统 在程序中,对于SDRAM的操作可以直接读写内存地址,这种使用方式与SRAM相同。区别在于,SDRAM每次操作的时间一般将长于SRAM。5.2S3C44B0X系统 HY57V641620有4个BANK,每个BANK有2MB空间,但是HY57V641620只有12位地址总线,它使用了行列地址译码的方式,在两个时钟周期内分别输入行地址和列地址。 HY57V641620的12根线与S3C44B0X的ADD12~ADD1相连,由于数据总线为16位,每次读写两个地址,所以S3C44B0X地址总线的最低位实际永远为0,HY57V641620的地址线0接S3C44B0X的地址线1。5.2S3C44B0X系统 HY57V641620使用的是S3C44B0X的BANK6,但是并没有使用BANK6的片选信号nGCS6。它使用的S3C44B0X的SDRAM片选信号nSCS0,这个信号的产生和使用需要设置S3C44B0X内部的寄存器。5.2S3C44B0X系统 15、网络控制芯片 本系统使用Realtek公司的RTL8019AS网络控制芯片来实现系统的网络功能。 RTL8019AS是一款与NE2000类型兼容的网卡芯片,可以兼容诸如DP83901A等其他网络芯片,而且软件的移植性能也较好。使用该芯片可以让系统拥有10Mbit/s的传输速度,还可以让嵌入式系统利用INTERNET/INTRANET网络资源,完成远程数据传送和交互的功能。5.2S3C44B0X系统 RTL8019AS的引脚总共有100个,每列20个。 RTL8019AS内部的输入输出端口地址为0x00~0x1F。 RTL8019AS的地址总线低5位SA4~SA0与S3C44B0X地址总线的ADD4~ADD0相连,高15位全部接地。 5.2S3C44B0X系统 RTL8019AS的16根数据总线SD15~SD0和S3C44B0X的数据总线DATA15~DATA0相连。 RTL8019AS使用S3C44B0X的BANK3,所以使用nGCS3作为片选信号。 RTL8019AS还需要占用S3C44B0X的外部中断1,连接到引脚int0上5.2S3C44B0X系统 16、USB设备芯片 本例中使用USB设备芯片PDIUSBD12完成USB的接口。它是一种设备USB接口芯片,可以让系统具有USB设备功能,它与处理器的连接可以使用地址总线,也可以使用GPIO,本系统使用地址总线的连接方式。5.2S3C44B0X系统主机USB芯片

设备USB芯片5.2S3C44B0X系统 PDIUSBD12:为恩智浦半导体公司(以前的飞利浦)的USB2.0(有些资料称其是USB1.1芯片)Device芯片。其支持USB2.0全速(12Mbps),是属于设备端的USB接口芯片(USB总线为主机-从机结构总线)。 可以使用它来做鼠标键盘,U盘等许多平常你能见到的USB产品。当然由于其不是USB2.0高速(480Mbps)芯片,所以高速数据传输的产品用它就不合适了,如摄像头、移动硬盘盒等。5.2S3C44B0X系统 PDIUSBD12需要使用一个6MHz的晶振,连接在XTAL1/XTAl2上。 PDIUSBD12连接在S3C44B0X的BANK1上,使用nGCS1作为芯片的片选信号,PDIUSBD12的地址总线实际只有一位:A0为1选择命令指令,为0选择数据。 由此实际上PDIUSBD12只需要占用2个字节的地址空间。5.2S3C44B0X系统5.2.3系统总结 本系统由芯片、电子器件和接插件组成,本系统的主要芯片包括: ARM微处理器音频输出 2MBNORFLASH串口芯片 8MBSDRAMIIC的EEPROM 网络芯片网络的EEPROM USB芯片供电芯片5.2S3C44B0X系统 硬件是嵌入式系统开发的基础。本系统中各种硬件设备的特点在于: ①、由于拥有较大的内存,可以满足运行各种不需要MMU的操作系统和复杂的应用程序 ②、本系统具有LCD控制器接口,可以通过外接液晶屏,在嵌入式系统中实现显示的功能。 ③、网络接口的使用。可以通过移植嵌入式网络协议栈,实现各种网络功能。5.2S3C44B0X系统 ④、用于USB设备接口,可以通过程序将本系统作为USB设备与各种USB主机连接。 ⑤、串口功能可以用于符号RS232的设备实现通信。 总之,硬件的组成是嵌入式系统的基础,硬件的组成决定了嵌入式系统最多可以实现哪些功能。但是要让硬件发挥出所有的功能,还需要相应的软件支持。5.3PXA2xx系统 PXA是IntelXscale核心的高端处理器系列,该系列处理器支持标准的Linux和WinCE,适合构造PDA、移动终端等高端嵌入式系统。5.3.1系统概述 本节介绍基于PXA2xx处理器的嵌入式系统。PXA27x处理器功能强大,片内集成了很多部件,如果再通过增加外部的部件,可以形成庞大而复杂的系统。5.3PXA2xx系统 1、系统组成 本PXA272系统包含了以下功能部件: 处理器IntelPXA272(520MHz,包括Intelstrataflash64MByte) SDRAMSamsungSDRAM64MByte 网络接口CS8900A10BaseT 显示屏LGTFTLCD6.4”(640*480) 触摸屏ADS7843(Touchscreen) 音频CS4299AC’97Stereoaudio USB主接口USB设备接口 异步串口2个可编程IO接口 JTAG接口5.3PXA2xx系统 从系统的角度,PXA272处理器是系统的核心,64MB的SDRAM和64MB的NORFLASH分别是系统随机存储器和可固化存储器,网络接口CS8900A在处理器的外部总线上扩展。 系统的其他部件均有PXA处理器内部部件直接提供。可编程IO由处理器的GPIO引出,可由软件实现各种功能。 JTAG接口也是由处理器提供,作为系统的调试接口。5.3PXA2xx系统 2、内存空间 基于PXA2xx处理器的嵌入式

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论