嵌入式系统设计5.ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五讲 LPC2000系列ARM硬件结构 主要内容 一、向量中断控制器 二、GPIO 三、UART 四、定时器 五、A/D转换器 六、PWM脉宽调制器 5.1 向量中断控制器 1、简介 向量中断控制器(Vectored Interrupt Controller,简写为VIC)具有32个中断请求输入(本模块具有这些中断请求输入,而不是芯片具有这些中断请求连接到本模块),可将其编程分为3类:FIQ、向量IRQ和非向量IRQ。 2、特点 ARM PrimeCell向量中断控制器; 最多32个中断请求输入; 16个向量IRQ中断; 16个优先级,可动态分配给中断请求; 可产生软件中断。 3、中断类型 中断输入请求在VIC中被设置为三类: FIQ中断: 即快速中断请求,具有最高优先级, 向量IRQ中断:具有中等优先级,该级别可分配32个请求中的16个。 非向量IRQ中断:优先级最低 4、相关的寄存器 (1)中断使能寄存器(VICIntEnable) 使能分配为FIR或IRQ的中断请求或软件中断。 (2)中断使能清零寄存器VICIntEnClear) 禁止相应中断输入的使能。 (3)中断选择寄存器(VICIntSelect) 将中断请求分配为FIR或IRQ,对应为1,则分配 为FIR,为0分配为IRQ。 (4)向量控制寄存器(VICVectCntl 0-15) 每一个寄存器控制16个向量IRQ slot 中的一个。Slot 0优先级最高,slot15的优先级最低。 (5)向量地址寄存器(VICVectAddr0-15) 保存16个向量IRQ slot 中断服务程序的地址。 (6)默认向量地址寄存器(VICDefVectAddr) 保存非向量IRQ中断服务程序的地址。 (7)向量地址寄存器( VICVectAddr ) 当发生一个IRQ中断时,VIC会将对应的IRQ服务程 序地址存入该寄存器。 5、中断源 6、使用VIC的注意要点 (1)在片内RAM中调试程序时需要使用中断,那么必须将向量重新影射到地址0 (2)多个FIR中断源会增加中断程序的延迟,建议只将一个中断分配为FIR。 (3)中断服务程序完毕后,对外设中断标志的清零会第VIC寄存器的对应位产生影响。另外,必须在中断返回前对VICVectAddr寄存器执行一次写操作。 (4)要禁止VIC中断,通过写VICIntEnClr来实现。 5.2 GPIO 1、特性 2、用途 通用I/O口; 驱动LED或其他指示器; 控制片外器件; 检测数字输入,如键盘或开关信号。 3、相关寄存器 简介 LPC2210有四个通用IO口:P0、P1、P2和P3 。P0口使用了30个引脚,P1口有16个引脚可用作GPIO功能,P2和P3,这个两个端口与外部存储器总线复用,当它们全部作为GPIO使用时,GPIO引脚数多达112个。 具体寄存器描述 (1)GPIO引脚值寄存器(IO0PIN) 提供GPIO引脚的值,反映了外部环境对引脚的影响。可用于IO测试。 (2)GPIO输出置位寄存器(IO0SET) 当引脚配置为GPIO输出模式时,可使用该寄存器从引脚输出高电平;写入0无效。读该寄存器的值返回的GPIO输出寄存器的值。 (3)GPIO输出清零寄存器(IO0CLR) 当引脚配置为GPIO输出模式时,可使用该寄存器从引脚输出低电平。 (4)GPIO方向寄存器(IO0DIR) 当引脚配置为GPIO模式时,可使用该寄存器控制引脚的方向。输出置为1,输入置为0。 三、UART0 1、特性 16字节接收FIFO和16字节发送FIFO; 寄存器位置符合16C550工业标准; 接收FIFO触发点可设置为1、4、8或14字节; 内置波特率发生器。 2、引脚描述 UART0引脚描述如下表: 3、相关寄存器描述 UAR0包含10个8位寄存器: (1)UART0接受缓存寄存器(U0RBR) U0RBR为只读存储器,是UART0 Rx FIFO的最高字节。 (2)UART0发送器保持寄存器(U0THR) U0RBR为只读存储器,是UART0 Tx FIFO的最高字节。 (3)UAR0除数锁存LSB寄存器(U0DLL) 除数锁存是波特率发生器的一部分,它保存了用于产生波特率时钟的VPB时钟分频值,波特率时钟必须是波特率的16倍。 (4)UAR0除数锁存MSB寄存器(U0DLM) 与U0DLL一起构成一个16位除数。 (5)UAR0中断使能寄存器(U0IER) 用于使能四个UAR0中断源。 (6)U

文档评论(0)

1192212 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档