嵌入式系统原理及应用教程第5章

上传人:夏** 文档编号:592793070 上传时间:2024-09-22 格式:PPT 页数:54 大小:700KB
返回 下载 相关 举报
嵌入式系统原理及应用教程第5章_第1页
第1页 / 共54页
嵌入式系统原理及应用教程第5章_第2页
第2页 / 共54页
嵌入式系统原理及应用教程第5章_第3页
第3页 / 共54页
嵌入式系统原理及应用教程第5章_第4页
第4页 / 共54页
嵌入式系统原理及应用教程第5章_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《嵌入式系统原理及应用教程第5章》由会员分享,可在线阅读,更多相关《嵌入式系统原理及应用教程第5章(54页珍藏版)》请在金锄头文库上搜索。

1、第1章嵌入式系统概述第2章ARM微处理器概述与编程模型第3章ARM9指令系统第4章嵌入式程序设计基础第5章嵌入式内部可编程模块第6章嵌入式接口技术应用第7章软件开发环境 S3C2440A内部除了ARM920T内核外,还包括很多模块如:l存储器lI/O端口l中断系统l看门狗lRTClTimer部件lUARTlADC及触摸屏接口其中许多是可编程控制的,下面将介绍其中的重要模块。 嵌入式系统中,存储系统差别很大,可包含多种类型的存储器件,如FLASH,SRAM,SDRAM,ROM等,这些不同类型的存储器件速度和宽度等各不相同;在访问存储单元时,可能采取平板式的地址映射机制对其操作,或需要使用虚拟地址

2、对其进行读写;系统中,需引入存储保护机制,增强系统的安全性。为适应如此复杂的存储体系要求,ARM处理器中引入了存储管理单元来管理存储系统。 S3C2440A片内集成了存储器控制器,提供了访问存储器所需的全部控制信号。1.外部存储空间特点S3C2440A芯片外部可寻址的存储空间是1GB,被分成8个存储模块,每块128MB。如图5-1所示。OM(1:0)=000x40000_00000x3800_00000x3000_00000x2800_00000x2000_00000x1800_00000x1000_00000x800_00000x0000_0000BOOT Internal SRAM(4KB

3、)128M128M128M128M128M2M/4M/8M/16M/32M/64M/128M2M/4M/8M/16M/32M/64M/128M1GBHADDR29:0Accessible Region128MOM(1:0)=01,10SROM/SDRAM(nGCS7)SROM/SDRAM(nGCS6)SROM(nGCS5)SROM(nGCS4)SROM/SDRAM(nGCS3)SROM(nGCS2)SROM(nGCS1)SROM(nGCS0)SROM/SDRAM(nGCS7)SROM/SDRAM(nGCS6)SROM(nGCS5)SROM(nGCS4)SROM/SDRAM(nGCS3)SROM

4、(nGCS2)SROM(nGCS1)图5-1 S3C2440 存存储空空间分配分配图 0号存储块可以外接SDRAM类型的存储器或者具有SDRAM接口特性的ROM存储器,其数据总线宽度应设定为16位或32位中的一种。因为0号存储块一般作为启动ROM区工作。1号存储块到5号存储块也可以外接SRAM类型的存储器或者具有SDRAM接口特性的ROM存储器。6号存储块、7号存储块可以外接SDRAM类型的存储器,它们的块容量可改变,且7号存储块的起始地址也可改变,如表5-2所示。OM(1:0)=000x40000_00000x3800_00000x3000_00000x2800_00000x2000_000

5、00x1800_00000x1000_00000x800_00000x0000_0000BOOT Internal SRAM(4KB)128M128M128M128M128M2M/4M/8M/16M/32M/64M/128M2M/4M/8M/16M/32M/64M/128M1GBHADDR29:0Accessible Region128MOM(1:0)=01,10SROM/SDRAM(nGCS7)SROM/SDRAM(nGCS6)SROM(nGCS5)SROM(nGCS4)SROM/SDRAM(nGCS3)SROM(nGCS2)SROM(nGCS1)SROM(nGCS0)SROM/SDRAM(

6、nGCS7)SROM/SDRAM(nGCS6)SROM(nGCS5)SROM(nGCS4)SROM/SDRAM(nGCS3)SROM(nGCS2)SROM(nGCS1)图5-1 S3C2440 存存储空空间分配分配图 地址地址2MB 4MB 8MB 16MB 32MB 64MB 128MB6号地址号地址起始起始地址地址0x3000_00000x3000_00000x3000_00000x3000_00000x3000_00000x3000_00000x3000_0000地址地址起始起始0x301f_ffff0x303f_ffff0x307f_ffff0x30ff_ffff0x31ff_ffff

7、0x33ff_ffff0x37ff_ffff7号地址号地址地址地址起始起始0x3020_00000x3040_00000x3080_00000x3100_00000x3200_00000x3400_00000x3800_0000结束结束地址地址0x303f_ffff0x307f_ffff0x30ff_ffff0x31ff_ffff0x33ff_ffff0x37ff_ffff0x3fff_ffff表表5-2 6号和号和7号存号存储块地址地址 目前,Nor Flash价格较高,而SDRAM和NAND Flash存储器相对经济,这样促使一些用户在NAND Flash上执行启动代码,在SDRAM 上执

8、行主程序。1.概述S3C2440A的驱动代码可以在外部的NAND Flash存储器上被执行。为了支持NAND Flash的boot loader,S3C2440A 配备了一个内部的SRAM 缓冲器名为“Steppingstone”。启动时,NAND Flash上的前4Kbyte将被装载到Steppingstone,且执行启动代码。一般情况下,启动代码会拷贝NAND Flash上的内容到SDRAM。使用硬件的ECC检查NAND Flash的数据。在完成拷贝的基础上,主程序将在SDRAM上被执行。NAND Flash控制器的模块图如图5-2所示。图5-2 NAND Flash控制器模控制器模块图缓

9、冲器控制器冲器控制器AHB总线控制状控制状态寄存器寄存器ECC编码/解解码NAND FLASH接口接口内部内部缓冲器冲器(4KB)nFCECLEALEnFREnFWEFRnBIO0-IO15系系统总线特殊特殊功能寄存器功能寄存器 在重启期间,NAND Flash控制器通过引脚状态得到连接NAND Flash的信息。 在上电或重启以后,NAND Flash控制器自动装载4KB的boot loader代码。 在装载boot loader代码后,其在steppingstone中被执行。 Nand flash 的内部结构能够提供极高的单元密度,可以达到很大的存储容量,并且写入和擦除的速度也很快。但Na

10、nd flash 存储器需要特殊的接口来操作,K9F1208U0C 芯片为典型的64M8bit的NAND flash。例5-1:测试512页的nand flash,原理框图如图5-5所示:/*测试512页的nand flash*/#include #include def.h#include 2440addr.h#include 2440lib.h#include 2440slib.h#include Nand.h/suppport boot params#define GLOBAL_PARAMS#include bootpara.h #define EnNandFlash() (rNFCON

11、T |= 1)#define DsNandFlash() (rNFCONT &= 1)#define NFChipEn() (rNFCONT &= (11)#define NFChipDs() (rNFCONT |= (11)#define InitEcc() (rNFCONT |= (14)#define MEccUnlock() (rNFCONT &= (15)#define MEccLock() (rNFCONT |= (15)I/O7:0D0D7D7:0CLECLEALEALEnFREnFRERnBRnBnFWEnFWEnFCEnFCEK9F1208US3C2440A 输入输出端口是嵌

12、入式系统硬件平台的重要组成部分,通过输入输出端口可以连接各种类型的外部输入输出设备。 这里把在S3C2440A芯片中的输入输出端口称为GPIO端口。 S3C2440A芯片中共有130个GPIO端口,分为9组,GPA GPJ, 这9组GPIO端口均为多功能端口,端口功能可以编程设置,若选定某个GPIO端口的功能,用户应在主程序运行之前编程设置对应的控制寄存器,从而选定所需GPIO端口的功能;如果某个GPIO引脚不用于特定功能,那么该引脚就可以设置为普通的输入输出引脚。S3C2440A芯片的9个GPIO端口是:端口A(GPA)有23个输出引脚的端口。端口B(GPB)有11个输入输出引脚的端口。端口

13、C(GPC)有16个输入输出引脚的端口。端口D(GPD)有16个输入输出引脚的端口。端口E(GPE)有16个输入输出引脚的端口。端口F(GPF)有8个输入输出引脚的端口。端口G(GPG)有16个输入输出引脚的端口。端口H(GPH)有11个输入输出引脚的端口。端口J(GPJ)有13个输入输出引脚的端口。每个GPIO端口均是多功能的,本节将具体介绍每个端口引脚的功能。1.端口A的GPIO引脚功能端口A的I/O引脚共有23个,每个引脚的功能如表5-16所示。引脚名称引脚名称功能功能1功能功能2功能功能3GPA22输出出nFCEGPA21输出出nRSTOUTGPA20输出出nFREGPA19输出出nF

14、WEGPA18输出出ALEGPA17输出出CLEGPA16输出出nGCS5GPA15输出出nGCS4GPA14输出出nGCS3GPA13输出出nGCS2GPA12输出出nGCS1引脚名称引脚名称功能功能1功能功能2功能功能3GPA11输出出ADDR26GPA10输出出ADDR25GPA9输出出ADDR24GPA8输出出ADDR23GPA7输出出ADDR22GPA6输出出ADDR21GPA5输出出ADDR20GPA4输出出ADDR19GPA3输出出ADDR18GPA2输出出ADDR17GPA1输出出ADDR16GPA0输出出ADDR0表表5-16 端口端口A的引脚功能的引脚功能端口A的引脚有两种

15、功能:第1种功能是作为普通的输出口;第2种功能主要用作外接存储器的地址信号和存储块选择信号。引脚名称引脚名称功能功能1功能功能2功能功能3GPB10输入入/输出出nXDREQ0GPB9输入入/输出出nXDACK0GPB8输入入/输出出nXDREQ1GPB7输入入/输出出nXDACK1GPB6输入入/输出出nXBREQGPB5输入入/输出出nXBACKGPB4输入入/输出出TCLK0GPB3输入入/输出出TOUT3GPB2输入入/输出出TOUT2GPB1输入入/输出出TOUT1GPB0输入入/输出出TOUT0表表5-17 端口端口B的引脚功能的引脚功能2.端口端口B的的GPIO引脚功能引脚功能

16、端口端口B的的I/O引脚共有引脚共有11个,每个引脚的功能如表个,每个引脚的功能如表5-17所示。所示。3.端口C的GPIO引脚功能端口C的I/O引脚共有16个,每个引脚的功能如表5-18所示。引脚名称引脚名称功能功能1功能功能2功能功能3GPC15输入入/输出出VD7GPC14输入入/输出出VD6GPC13输入入/输出出VD5GPC12输入入/输出出VD4GPC11输入入/输出出VD3GPC10输入入/输出出VD2GPC9输入入/输出出VD1GPC8输入入/输出出VD0引脚名称引脚名称功能功能1功能功能2功能功能3GPC7输入入/输出出LCD_LPCREVBGPC6输入入/输出出LCD_LP

17、CREVGPC5输入入/输出出LCD_LPCOEGPC4输入入/输出出VMGPC3输入入/输出出VFRAMEGPC2输入入/输出出VLINEGPC1输入入/输出出VCLKGPC0输入入/输出出LEND表表5-18 端口端口C的引脚功能的引脚功能4.端口D的GPIO引脚功能端口D的I/O引脚共有16个,每个引脚的功能如表5-19所示。表5-19 端口D的引脚功能引脚名称引脚名称功能功能1功能功能2功能功能3GPD15输入入/输出出VD23nSS0GPD14输入入/输出出VD22nSS1GPD13输入入/输出出VD21GPD12输入入/输出出VD20GPD11输入入/输出出VD19GPD10输入入

18、/输出出VD18SPICLK1GPD9输入入/输出出VD17SPIMOSI1GPD8输入入/输出出VD16SPIMISO1引脚名称引脚名称功能功能1功能功能2功能功能3GPD7输入入/输出出VD15GPD6输入入/输出出VD14GPD5输入入/输出出VD13GPD4输入入/输出出VD12GPD3输入入/输出出VD11GPD2输入入/输出出VD10GPD1输入入/输出出VD9GPD0输入入/输出出VD85.端口E的GPIO引脚功能端口E的I/O引脚共有16个,每个引脚的功能如表5-20所示。表5-20 端口E的引脚功能引脚名称引脚名称功能功能1功能功能2功能功能3GPE15输入入/输出出IICS

19、DAGPE14输入入/输出出IICSCLGPE13输入入/输出出SPICLK0GPE12输入入/输出出SPIMOSI0GPE11输入入/输出出SPIMISO0GPE10输入入/输出出SDDAT3GPE9输入入/输出出SDDAT2GPE8输入入/输出出SDDAT1GPE7输入入/输出出SDDAT0引脚名称引脚名称功能功能1功能功能2功能功能3GPE6输入入/输出出SDCMDGPE5输入入/输出出SDCLKGPE4输入入/输出出I2SSDOAC_SDATA_OUTGPE3输入入/输出出I2SSDIAC_SDATA_INGPE2输入入/输出出CDCLKAC_nRESETGPE1输入入/输出出I2SS

20、CLKAC_BIT_CLKGPE0输入入/输出出I2SLRCKAC_SYNC6.端口F的GPIO引脚功能端口F的I/O引脚共有8个,每个引脚的功能如表5-21所示。引脚名称引脚名称功能功能1功能功能2功能功能3GPF7输入入/输出出EINT7GPF6输入入/输出出EINT6GPF5输入入/输出出EINT5GPF4输入入/输出出EINT4GPF3输入入/输出出EINT3GPF2输入入/输出出EINT2GPF1输入入/输出出EINT1GPF0输入入/输出出EINT0表表5-21 端口端口F的引脚功能的引脚功能7.端口G的GPIO引脚功能端口G的I/O引脚共有16个,每个引脚的功能如表5-22所示。

21、表5-22 端口G的引脚功能引脚名称引脚名称功能功能1功能功能2功能功能3GPG15输入入/输出出EINT23GPG14输入入/输出出EINT22GPG13输入入/输出出EINT21GPG12输入入/输出出EINT20GPG11输入入/输出出EINT19TCLK1GPG10输入入/输出出EINT18nCTS1GPG9输入入/输出出EINT17nRTS1GPG8输入入/输出出EINT16引脚名称引脚名称功能功能1功能功能2功能功能3GPG7输入入/输出出EINT15SPICLK1GPG6输入入/输出出EINT14SPIMOSI1GPG5输入入/输出出EINT13SPIMISO1GPG4输入入/输

22、出出EINT12LCD_PWRENGPG3输入入/输出出EINT11nSS1GPG2输入入/输出出EINT10nSS0GPG1输入入/输出出EINT9GPG0输入入/输出出EINT88.端口H的GPIO引脚功能端口G的I/O引脚共有11个,每个引脚的功能如表5-23所示。表表5-23 端口端口H的引脚功能的引脚功能引脚名称引脚名称功能功能1功能功能2功能功能3GPH10输入入/输出出CLKOUT1GPH9输入入/输出出CLKOUT0GPH8输入入/输出出UEXTCLKGPH7输入入/输出出RXD2nCTS1GPH6输入入/输出出TXD2nRTS1GPH5输入入/输出出RXD1GPH4输入入/输

23、出出TXD1GPH3输入入/输出出RXD0GPH2输入入/输出出TXD0GPH1输入入/输出出nRTS0GPH0输入入/输出出nCTS09.端口J的GPIO引脚功能端口J的I/O引脚共有13个,每个引脚的功能如表5-24所示。引脚名称引脚名称功能功能1功能功能2功能功能3GPJ12输入入/输出出CAMRESETGPJ11输入入/输出出CAMCLKOUTGPJ10输入入/输出出CAMHREFGPJ9输入入/输出出CAMVSYNCGPJ8输入入/输出出CAMPCLKGPJ7输入入/输出出CAMDATA7GPJ6输入入/输出出CAMDATA6GPJ5输入入/输出出CAMDATA5GPJ4输入入/输出

24、出CAMDATA4GPJ3输入入/输出出CAMDATA3GPJ2输入入/输出出CAMDATA2GPJ1输入入/输出出CAMDATA1GPJ0输入入/输出出CAMDATA0中断是I/O端口或部件在完成一个I/O操作后,产生一个信号给微处理器,这个信号叫做“中断请求”,微处理器相应这个请求信号,停止其当前的程序操作,而转向对该I/O端口或部件进行新的读/写操作。即中断发生时,程序计数器(PC)的值发生变化,指向一个管理I/O端口或部件的中断服务程序例程(也称作设备驱动程序),完成向I/O端口或部件写一个数据或从I/O端口或部件读取刚准备好的数据。对于ARM920T微处理器核来说,它有7种异常中断。

25、本节主要针对外部中断请求(IRQ)和快速中断请求(FIQ)来介绍。S3C2440A中的中断控制器可以从60个中断源接收中断请求,如表5-68、5-69所示。这些中断源由内部的外围I/O端口或部件如DMA控制器、UART、IIC 等提供。如果在ARM920T核内部的程序状态寄存器的F位置1,CPU不能接收来自中断控制器的FIQ,如果程序状态寄存器的I位被置1,则CPU不能接收来自中断控制器的IRQ。所以,通过给程序状态寄存器中的F 位和I位清0,且对INTMASK寄存器中的相应位清0,中断控制器可以接收中断。中断源名称中断源名称描述描述仲裁组仲裁组INT_ADCADC结束中断、触摸屏中断束中断、

26、触摸屏中断ARB5INT_RTCRTC闹钟中断中断ARB5INT_SPI1SPI1中断中断ARB5INT_UART0串口串口0中断(中断(ERR、RXD、TXD)ARB5INT_IICI2C中断中断ARB4INT_USBHUSB主机中断主机中断ARB4INT_USBDUSB设备中断中断ARB4INT_NFCONNand Flash控制中断控制中断ARB4INT_UART1串口串口1中断(中断(ERR、RXD、TXD)ARB4INT_SPI0SPI0中断中断ARB4INT_SDISDI中断中断ARB3INT_DMA3DMA通道通道3中断中断ARB3INT_DMA2DMA通道通道2中断中断ARB3

27、INT_DMA1DMA通道通道1中断中断ARB3INT_DMA0DMA通道通道0中断中断ARB3表5-68 中断控制器支持的60个中断源INT_LCDLCD中断(中断(INT_FrSyn、INT_FiCnt)ARB3INT_UART2串口串口2中断(中断(ERR、RXD、TXD)ARB2INT_TIMER4定定时器器4中断中断ARB2INT_TIMER3定定时器器3中断中断ARB2INT_TIMER2定定时器器2中断中断ARB2INT_TIMER1定定时器器1中断中断ARB2INT_TIMER0定定时器器0中断中断ARB2INT_WDT_AC97看看门狗定狗定时器中断器中断ARB1INT_TI

28、CKRTC定定时中断中断ARB1nBATT_FLT电池失效中断池失效中断ARB1INT_CAM摄像像头接口接口ARB1EINT8_23外部中断外部中断8_23ARB1EINT4_7外部中断外部中断4_7ARB1EINT3外部中断外部中断3ARB0EINT2外部中断外部中断2ARB0EINT1外部中断外部中断1ARB0EINT0外部中断外部中断0ARB0中断源名称中断源名称描述描述源源INT_AC97AC97中断中断INT_WDT_AC97INT_WDTWDT中断中断INT_WDT_AC97INT_CAM_P摄像像头接口的接口的P口捕口捕获中断中断INT_CAMINT_CAM_C摄像像头接口的接

29、口的C口捕口捕获中断中断INT_CAMINT_ADC_SADC中断中断INT_ADCINT_TC触摸屏中断(开触摸屏中断(开/关)关)INT_ADCINT_ERR2UART2错误中断中断INT_UART2INT_TXD2UART2发送中断送中断INT_UART2INT_RXD2UART2接收中断接收中断INT_UART2INT_ERR1UART1错误中断中断INT_UART1INT_TXD1UART1发送中断送中断INT_UART1INT_RXD1UART1接收中断接收中断INT_UART1INT_ERR0UART0错误中断中断INT_UART0INT_TXD0UART0发送中断送中断INT_

30、UART0INT_RXD0UART0接收中断接收中断INT_UART0表5-69 子中断源DMA控制方式主要用于高速I/O设备与存储器之间进行大批量数据传送。DMA控制器控制数据直接在I/O设备与存储器之间传送,而不必经过微处理器内部的寄存器,这样就大大提高了数据传送的效率。S3C2440A芯片的DMA系统支持4个独立通道的控制器。每个通道的DMA控制器可以在芯片内部系统系统总线上的设备或外部总线上的设备、或分别在内部系统总线和外部总线上的设备之间进行数据的无限制传送。DMA的主要优点就是其传输数据不受CPU的干涉。DMA操作可以通过软件来启动,也可以通过内部设备的请求、或外部请求引脚的请求信

31、号来启动。DMA操作S3C2440A芯片的DMA操作可以包括三个状态的有限状态机(FSM)来表述,具体描述如下:状态1:作为初始状态,DMA控制器等待DMA 请求。一旦有请求,则进入状态2。初始状态下,DMA ACK信号(DMA应答信号)和INT REQ信号(终点请求信号)都为0。状态2:在此状态下,DMA ACK信号变成1,且计数器(CURR_TC)从DCON控制寄存器中装载其19:0位的内容作为计数初值。注意,DMA ACK一直保持1,直到后面被清除。状态3:在此状态下,进行DMA基本操作。此子状态机从源地址读取数据并写入目的地址,此操作应该考虑数据大小和传输大小。在整体服务模式下,DMA

32、传输操作一直被重复进行,直到计数器(CURR_TC)变成0;而在单独服务模式下,DMA操作仅被执行一次。主有限机对计数器(CURR_TC)进行减数操作。5.5.1 看门狗定时器原理及实例S3C2440A芯片看门狗定时器是用于当噪音或系统错误引起故障时,恢复控制器操作的定时器。看门狗定时器是一个普通的16 位时间间隔定时器,定时溢出来请求中断服务。看门狗定时器每128个PCLK时钟周期产生一个复位信号。其特点是有中断请求的普通间隔定时器模式,当定时器计数器值为0(超时)时激活128 个PCLK时钟周期的内部复位信号。1.看门狗定时器操作如图5-13所示的看门狗定时器功能模块图。看门狗定时器使用P

33、CLK 作为时钟源。PCLK 频率被于预分频产生相应的看门狗定时器时钟,得到的频率再次被分频。8位位预分分频器器1/161/321/641/128多路复用器多路复用器看看门狗狗定定时器器计数数寄寄存存器器看看门狗狗定定时器器数数据据寄寄存器存器重重启启信信号号发生器生器PCLK看看门狗狗定定时器器控控制制寄寄存存器器15:8除除 数数 因因子子看看门狗狗定定时器器控控制制寄寄存存器器4:3看看门狗狗定定时器器控控制制寄寄存器存器2看看门狗狗定定时器器控控制制寄寄存器存器0中断中断重启重启图5-13 看看门狗定狗定时器功能模器功能模块图预分频器的值(Prescaler value)和频率除数因子

34、(Division_factor)存放在看门狗定时器控制寄存器(WTCON)中,预分频器的值(Prescaler value)有效范围0 - 255。频率除数因子(Division_factor)可以设定为16、32、64 或128分频。实时时钟(RTC)单元是用于提供年、月、日、时、分、秒、星期等实时时间信息的定时部件。它通常在系统电源关闭的情况下可以在备用电池下工作。1.工作原理RTC可以利用STRB/LDRB指令传输BCD码8位数据给CPU。数据包括秒、分钟、小时、日期、天、月、年的时间信息。RTC 单元在外部晶振下工作,并具备报警功能。S3C2440A芯片内部的RTC部件功能框图如图5

35、-14所示。XTIrtcXTOrtcTICNTRTCCONTIME TICKINT_RTC报警生成器警生成器复位寄存器复位寄存器循循环年生成器年生成器SECMINHOURDAYDATEMONYEARRTCRSTRTCALMPMWKUP时间片生成器片生成器时钟分分频器器控制寄存器控制寄存器r128Hz1Hz图5-14 RTC功能框功能框图Timer部件主要用于提供定时功能、脉宽调制(PWM)功能,它的应用比较灵活,对于需要一定频率的脉冲信号、一定时间间隔的定时信号的应用场合,它都能提供应用支持。S3C2440A有5 个16 位的定时器。定时器0、1、2、3 有脉宽调制功能(PWM),定时器4是一

36、个没有输出引脚的内部定时器。定时器0 和1共享一个8 位的预分频器,定时器2,3,4 共享另一个8位预分频器。每个定时器有一个时钟分频器,其可以生成5 种不同的分频信号(1/2,1/4,1/8,1/16 和TCLK)。每个定时器模块从自己对应的时钟分频器接收时钟信号,对应的时钟分频器从相对应8位预分频器接收相应时钟信号。8位预分频器8位预分频器2/11/41/81/16TCLK02/11/41/81/16TCLK1时钟分割器时钟分割器5:1MUX死区生成器TCMPB1TCNTB1控制逻辑1死区TOUT1死区5:1MUXTCMPB2TCNTB2控制逻辑25:1MUXTCMPB3TCNTB3控制逻

37、辑35:1MUXTOUT2TOUT3No Pin TOUT0TCMPB4TCNTB4控制逻辑45:1MUXTCMPB0TCNTB0控制逻辑0S3C2440A芯片内部的Timer部件功能框图如图5-16所示。图5-16 S3C2440A芯片内部的Timer部件功能框图S3C2440A 通用异步接收器和发送器(UART)提供了三个独立的异步串行I/O(SIO)端口,每个端口都可以在中断模式或DMA模式下操作。换言之,UART可以在微处理器与UART接口部件之间通过产生中断或DMA 请求来传输数据。UART采用系统时钟时可支持最大波特率为。如果一个外部设备提供UEXTCLK给UART,UART可以在

38、更高的速度下工作。每个UART通道中均包括2个64位的FIFO,用于串行接收和发送数据。S3C2440A UART包括了可编程波特率,红外传输接收,一个或两个停止位,5位、6位、7位、8位数据长度和奇偶校验。每个UART包含一个波特率发生器,一个发送器,一个计数器和一个控制单元,如图5-24所示。其波特率发生器可由PCLK,FCLK/n 或UEXTCLK(外部输入时钟)来锁定。发送器和接收器分别包含了64位FIFO和数据移位器。数据通过数据发送引脚(TxDn)被移出去。同时,把接收数据从接收数据引脚(RxDn)移入移位器中,然后从移位器中把数据复制到FIFO。控制控制单元元波特率波特率发生器生

39、器时钟源源(PCLK, FCLK/n,UEXTCLK)发送送器器发送送缓冲区冲区(64字字节)发送送FIFO寄存器寄存器(FIFO模式)模式)发送移位器送移位器TxDn发送保持寄存器送保持寄存器(非(非FIFO模式)模式)接收接收缓冲区冲区(64字字节)接收接收FIFO寄存器寄存器(FIFO模式)模式)接收移位器接收移位器RxDn接收保持寄存器接收保持寄存器(非(非FIFO模式)模式)接接收收器器总线图5-24 UART的内部的内部结构框构框图1.数据发送一个需发送的数据帧包括1位起始位,58位数据位,一位可选的奇偶校验位和12位停止位,发送的数据帧是可编程的。用户可以通过线性控制寄存器ULC

40、ONn 来设置。在当前发送字被完全传输完以后,该模块发送一个中断信号。在中断信号发送后,其串行发送数据到TxFIFO。2.数据接收一个需接收的数据帧包括1位起始位,58位数据位,一位可选的奇偶校验位和12位停止位。与数据发送类似,接收的数据帧也是可编程的,其数据格式与发送方的数据帧格式一致,用户也是通过线性控制寄存器ULCONn 来设置。接收器可以检测到溢出错误,奇偶校验错误,帧错误和通信中断,并设置相应的错误标志。S3C2440A具有一个由八通道多路复用器共用的10位CMOS工艺制作的ADC (模数转换器)。转换时钟下最大的转换率在500KSPS。AD转换器支持片上采样功能并且具有掉电采样模

41、式。触摸屏接口可以控制或选择触摸屏的触点(XP, XM, YP, YM)用于XY 坐标的转换。触摸屏接口包括触摸触点控制逻辑和有中断产生逻辑的ADC 接口逻辑。特点是:分辨率:10位微分线性误差:积分线性误差:最大转换速率:500KSPS低功耗供电电压:输入模拟电压范围:片上采样保持功能普通转换模式分离的XY 坐标转换摸式自动连续XY 坐标转换模式等待中断模式A3:0YMYPXMXPAGND触摸屏控制8:1 MUXADC输入控制A/D转换ADC 接口&触摸屏控制INT_TCINT_ADC产生中断AVDD图5-27 中断模式等待注意:当触摸屏接口 使用时,XM或PM应该接触摸屏接口的地。当触摸屏设备不使用时,XM或PM应该连接模拟输入信号作为普通ADC转换用。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号