欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

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

    • 资源ID:6414978       资源大小:1.50MB        全文页数:54页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    主讲内容,第1章 嵌入式系统概述第2章 ARM微处理器概述与编程模型第3章 ARM9指令系统第4章 嵌入式程序设计基础第5章 嵌入式内部可编程模块第6章 嵌入式接口技术应用第7章 软件开发环境,第5章 嵌入式内部可编程模块,S3C2440A内部除了ARM920T内核外,还包括很多模块如:存储器I/O端口中断系统看门狗RTCTimer部件UARTADC及触摸屏接口其中许多是可编程控制的,下面将介绍其中的重要模块。,5.1 存储控制模块,嵌入式系统中,存储系统差别很大,可包含多种类型的存储器件,如FLASH,SRAM,SDRAM,ROM等,这些不同类型的存储器件速度和宽度等各不相同;在访问存储单元时,可能采取平板式的地址映射机制对其操作,或需要使用虚拟地址对其进行读写;系统中,需引入存储保护机制,增强系统的安全性。为适应如此复杂的存储体系要求,ARM处理器中引入了存储管理单元来管理存储系统。,5.1.1 存储器控制器,S3C2440A片内集成了存储器控制器,提供了访问存储器所需的全部控制信号。1.外部存储空间特点S3C2440A芯片外部可寻址的存储空间是1GB,被分成8个存储模块,每块128MB。如图5-1所示。,5.1.1 存储器控制器,图5-1 S3C2440 存储空间分配图,5.1.1 存储器控制器,0号存储块可以外接SDRAM类型的存储器或者具有SDRAM接口特性的ROM存储器,其数据总线宽度应设定为16位或32位中的一种。因为0号存储块一般作为启动ROM区工作。,5.1.1 存储器控制器,1号存储块到5号存储块也可以外接SRAM类型的存储器或者具有SDRAM接口特性的ROM存储器。6号存储块、7号存储块可以外接SDRAM类型的存储器,它们的块容量可改变,且7号存储块的起始地址也可改变,如表5-2所示。,5.1.1 存储器控制器,图5-1 S3C2440 存储空间分配图,5.1.1 存储器控制器,表5-2 6号和7号存储块地址,5.1.2 Nand Flash控制器,目前,Nor Flash价格较高,而SDRAM和NAND Flash存储器相对经济,这样促使一些用户在NAND Flash上执行启动代码,在 SDRAM 上执行主程序。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.1.2 Nand Flash控制器,图5-2 NAND Flash控制器模块图,5.1.2 Nand Flash控制器,在重启期间,NAND Flash控制器通过引脚状态得到连接NAND Flash的信息。在上电或重启以后,NAND Flash控制器自动装载4KB的boot loader代码。在装载boot loader代码后,其在steppingstone中被执行。,5.1.3 存储器实例,Nand flash 的内部结构能够提供极高的单元密度,可以达到很大的存储容量,并且写入和擦除的速度也很快。但Nand flash 存储器需要特殊的接口来操作,K9F1208U0C 芯片为典型的64M8bit的NAND flash。,5.1.3 存储器实例,例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()(rNFCONT|=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),5.2 GPIO,输入输出端口是嵌入式系统硬件平台的重要组成部分,通过输入输出端口可以连接各种类型的外部输入输出设备。这里把在S3C2440A芯片中的输入输出端口称为GPIO端口。S3C2440A芯片中共有130个GPIO端口,分为9组,GPA GPJ,这9组GPIO端口均为多功能端口,端口功能可以编程设置,若选定某个GPIO端口的功能,用户应在主程序运行之前编程设置对应的控制寄存器,从而选定所需GPIO端口的功能;如果某个GPIO引脚不用于特定功能,那么该引脚就可以设置为普通的输入输出引脚。,5.2.1 端口功能,S3C2440A芯片的9个GPIO端口是:端口A(GPA)有23个输出引脚的端口。端口B(GPB)有11个输入输出引脚的端口。端口C(GPC)有16个输入输出引脚的端口。端口D(GPD)有16个输入输出引脚的端口。端口E(GPE)有16个输入输出引脚的端口。端口F(GPF)有8个输入输出引脚的端口。端口G(GPG)有16个输入输出引脚的端口。端口H(GPH)有11个输入输出引脚的端口。端口J(GPJ)有13个输入输出引脚的端口。每个GPIO端口均是多功能的,本节将具体介绍每个端口引脚的功能。,5.2.1 端口功能,1.端口A的GPIO引脚功能 端口A的I/O引脚共有23个,每个引脚的功能如表5-16所示。,表5-16 端口A的引脚功能,5.2.1 端口功能,端口A的引脚有两种功能:第1种功能是作为普通的输出口;第2种功能主要用作外接存储器的地址信号和存储块选择信号。,5.2.1 端口功能,表5-17 端口B的引脚功能,2.端口B的GPIO引脚功能 端口B的I/O引脚共有11个,每个引脚的功能如表5-17所示。,5.2.1 端口功能,3.端口C的GPIO引脚功能 端口C的I/O引脚共有16个,每个引脚的功能如表5-18所示。,表5-18 端口C的引脚功能,5.2.1 端口功能,4.端口D的GPIO引脚功能 端口D的I/O引脚共有16个,每个引脚的功能如表5-19所示。表5-19 端口D的引脚功能,5.2.1 端口功能,5.端口E的GPIO引脚功能 端口E的I/O引脚共有16个,每个引脚的功能如表5-20所示。表5-20 端口E的引脚功能,5.2.1 端口功能,6.端口F的GPIO引脚功能端口F的I/O引脚共有8个,每个引脚的功能如表5-21所示。,表5-21 端口F的引脚功能,5.2.1 端口功能,7.端口G的GPIO引脚功能 端口G的I/O引脚共有16个,每个引脚的功能如表5-22所示。表5-22 端口G的引脚功能,5.2.1 端口功能,8.端口H的GPIO引脚功能端口G的I/O引脚共有11个,每个引脚的功能如表5-23所示。,表5-23 端口H的引脚功能,5.2.1 端口功能,9.端口J的GPIO引脚功能 端口J的I/O引脚共有13个,每个引脚的功能如表5-24所示。,5.3 中断系统,中断是I/O端口或部件在完成一个I/O操作后,产生一个信号给微处理器,这个信号叫做“中断请求”,微处理器相应这个请求信号,停止其当前的程序操作,而转向对该I/O端口或部件进行新的读/写操作。即中断发生时,程序计数器(PC)的值发生变化,指向一个管理I/O端口或部件的中断服务程序例程(也称作设备驱动程序),完成向I/O端口或部件写一个数据或从I/O端口或部件读取刚准备好的数据。对于ARM920T微处理器核来说,它有7种异常中断。本节主要针对外部中断请求(IRQ)和快速中断请求(FIQ)来介绍。,5.3 中断系统,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,中断控制器可以接收中断。,5.3 中断系统,表5-68 中断控制器支持的60个中断源,5.3 中断系统,5.3 中断系统,表5-69 子中断源,5.4 DMA,DMA控制方式主要用于高速I/O设备与存储器之间进行大批量数据传送。DMA控制器控制数据直接在I/O设备与存储器之间传送,而不必经过微处理器内部的寄存器,这样就大大提高了数据传送的效率。,5.4.1 S3C2440A芯片的DMA方式,S3C2440A芯片的DMA系统支持4个独立通道的控制器。每个通道的DMA控制器可以在芯片内部系统系统总线上的设备或外部总线上的设备、或分别在内部系统总线和外部总线上的设备之间进行数据的无限制传送。DMA的主要优点就是其传输数据不受CPU的干涉。DMA操作可以通过软件来启动,也可以通过内部设备的请求、或外部请求引脚的请求信号来启动。,5.4.1 S3C2440A芯片的DMA方式,DMA操作S3C2440A芯片的DMA操作可以包括三个状态的有限状态机(FSM)来表述,具体描述如下:状态1:作为初始状态,DMA控制器等待DMA 请求。一旦有请求,则进入状态2。初始状态下,DMA ACK信号(DMA应答信号)和 INT REQ信号(终点请求信号)都为0。,5.4.1 S3C2440A芯片的DMA方式,状态 2:在此状态下,DMA ACK信号变成1,且计数器(CURR_TC)从DCON控制寄存器中装载其19:0位的内容作为计数初值。注意,DMA ACK一直保持1,直到后面被清除。,5.4.1 S3C2440A芯片的DMA方式,状态 3:在此状态下,进行DMA基本操作。此子状态机从源地址读取数据并写入目的地址,此操作应该考虑数据大小和传输大小。在整体服务模式下,DMA传输操作一直被重复进行,直到计数器(CURR_TC)变成0;而在单独服务模式下,DMA操作仅被执行一次。主有限机对计数器(CURR_TC)进行减数操作。,5.5 定时部件,5.5.1 看门狗定时器原理及实例S3C2440A芯片看门狗定时器是用于当噪音或系统错误引起故障时,恢复控制器操作的定时器。看门狗定时器是一个普通的 16 位时间间隔定时器,定时溢出来请求中断服务。看门狗定时器每128个PCLK时钟周期产生一个复位信号。其特点是有中断请求的普通间隔定时器模式,当定时器计数器值为 0(超时)时激活128 个PCLK时钟周期的内部复位信号。,5.5 定时部件,1.看门狗定时器操作如图5-13所示的看门狗定时器功能模块图。看门狗定时器使用PCLK 作为时钟源。PCLK 频率被于预分频产生相应的看门狗定时器时钟,得到的频率再次被分频。,5.5.1 看门狗定时器原理及实例,图5-13 看门狗定时器功能模块图,5.5.1 看门狗定时器原理及实例,预分频器的值(Prescaler value)和频率除数因子(Division_factor)存放在看门狗定时器控制寄存器(WTCON)中,预分频器的值(Prescaler value)有效范围0-255。频率除数因子(Division_factor)可以设定为 16、32、64 或128分频。,5.5.2 RTC部件,实时时钟(RTC)单元是用于提供年、月、日、时、分、秒、星期等实时时间信息的定时部件。它通常在系统电源关闭的情况下可以在备用电池下工作。,5.5.2 RTC部件,1.工作原理RTC可以利用STRB/LDRB指令传输BCD码8位数据给CPU。数据包括秒、分钟、小时、日期、天、月、年的时间信息。RTC 单元在外部晶振32.768KHz下工作,并具备报警功能。S3C2440A芯片内部的RTC部件功能框图如图5-14所示。,5.5.2 RTC部件,图5-14 RTC功能框图,5.5.3 Timer部件,Timer部件主要用于提供定时功能、脉宽调制(PWM)功能,它的应用比较灵活,对于需要一定频率的脉冲信号、一定时间间隔的定时信号的应用场合,它都能提供应用支持。S3C2440A有5 个16 位的定时器。,5.5.3 Timer部件,定时器0、1、2、3 有脉宽调制功能(PWM),定时器4是一个没有输出引脚的内部定时器。定时器0 和1共享一个8 位的预分频器,定时器2,3,4 共享另一个8位预分频器。每个定时器有一个时钟分频器,其可以生成5 种不同的分频信号(1/2,1/4,1/8,1/16 和TCLK)。每个定时器模块从自己对应的时钟分频器接收时钟信号,对应的时钟分频器从相对应8位预分频器接收相应时钟信号。,5.5.3 Timer部件,S3C2440A芯片内部的Timer部件功能框图如图5-16所示。,图5-16 S3C2440A芯片内部的Timer部件功能框图,5.6 UART,S3C2440A 通用异步接收器和发送器(UART)提供了三个独立的异步串行 I/O(SIO)端口,每个端口都可以在中断模式或DMA模式下操作。换言之,UART可以在微处理器与UART接口部件之间通过产生中断或DMA 请求来传输数据。UART采用系统时钟时可支持最大波特率为115.2Kbps。如果一个外部设备提供UEXTCLK给UART,UART可以在更高的速度下工作。每个UART通道中均包括2个64位的FIFO,用于串行接收和发送数据。,5.6 UART,S3C2440A UART包括了可编程波特率,红外传输接收,一个或两个停止位,5位、6位、7位、8位数据长度和奇偶校验。每个 UART包含一个波特率发生器,一个发送器,一个计数器和一个控制单元,如图5-24所示。其波特率发生器可由 PCLK,FCLK/n 或 UEXTCLK(外部输入时钟)来锁定。发送器和接收器分别包含了64位FIFO和数据移位器。数据通过数据发送引脚(TxDn)被移出去。同时,把接收数据从接收数据引脚(RxDn)移入移位器中,然后从移位器中把数据复制到FIFO。,5.6 UART,图5-24 UART的内部结构框图,5.6.1 UART的操作,1.数据发送一个需发送的数据帧包括1位起始位,58位数据位,一位可选的奇偶校验位和12位停止位,发送的数据帧是可编程的。用户可以通过线性控制寄存器 ULCONn 来设置。在当前发送字被完全传输完以后,该模块发送一个中断信号。在中断信号发送后,其串行发送数据到TxFIFO。,5.6.1 UART的操作,2.数据接收一个需接收的数据帧包括1位起始位,58位数据位,一位可选的奇偶校验位和 12位停止位。与数据发送类似,接收的数据帧也是可编程的,其数据格式与发送方的数据帧格式一致,用户也是通过线性控制寄存器 ULCONn 来设置。接收器可以检测到溢出错误,奇偶校验错误,帧错误和通信中断,并设置相应的错误标志。,5.7 ADC及触摸屏接口,S3C2440A具有一个由八通道多路复用器共用的10位CMOS工艺制作的ADC(模数转换器)。2.5MHz转换时钟下最大的转换率在500KSPS。AD转换器支持片上采样功能并且具有掉电采样模式。触摸屏接口可以控制或选择触摸屏的触点(XP,XM,YP,YM)用于XY 坐标的转换。触摸屏接口包括触摸触点控制逻辑和有中断产生逻辑的ADC 接口逻辑。,5.7 ADC及触摸屏接口,特点是:分辨率:10位微分线性误差:1.0LSB积分线性误差:2.0LSB最大转换速率:500KSPS低功耗供电电压:3.3V输入模拟电压范围:03.3V片上采样保持功能普通转换模式分离的 XY 坐标转换摸式自动连续 XY 坐标转换模式等待中断模式,5.7 ADC及触摸屏接口,图5-27 中断模式等待,注意:当触摸屏接口 使用时,XM或PM应该接触摸屏接口的地。当触摸屏设备不使用时,XM或PM应该连接模拟输入信号作为普通ADC转换用。,

    注意事项

    本文(嵌入式系统原理及应用教程第5章.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开