32位单片机知识讲解:Microchip PIC32系列(三)

2013-05-20 22:01:07来源: 互联网
工作原理

  中断控制器负责对来自一些片上外设的中断请求(IRQ)进行预处理,并按相应顺序将它们送入

  处理器。

  图8-2 给出了PIC32MX 中的中断处理的图示。中断控制器设计为最多可从处理器内核、能够产生中断的片上外设和5 个外部输入处接收96 个IRQ。所有IRQ 都在SYSCLK 下降沿进行采样,并锁存到关联的IFSx 寄存器中。待处理的IRQ 由IFSx 寄存器中的标志位等于1 来指示。如果中断允许(IECx)寄存器中的相应位清零,则待处理的IRQ 不会得到进一步处理。IECx 位用于对中断标志进行门控。如果允许中断,则所有IRQ 将编码为5 位宽的向量编号。5 位向量可产生编号为0 至63 的唯一中断向量编号。由于IRQ 数量多于可用向量编号,所以一些IRQ 共用公共的向量编号。每个向量编号都会分配一个中断优先级和影子集编号。优先级由关联向量的IPCx 寄存器设置决定。在多向量模式下,用户可以对接收专用影子寄存器集选择优先级。在单向量模式下,所有中断都可能接收到专用影子集。中断控制器会在所有待处理IRQ 中选择优先级最高的RQ,并将关联的向量编号、优先级和影子集编号送入处理器内核。处理器内核会在流水线的“E”和“M”级之间采样送入的向量信息。如果送入内核的向量的优先级大于CPU 中断优先级位IPL (Status<15:10>)指示的当前优先级,则会对中断进行处理;否则,它将保持待处理状态,直到当前优先级小于中断的优先级。在处理中断时,处理器内核会将程序计数器压入CPU 中的异常程序计数器(Exception Program Counter,EPC)寄存器,并将CPU 中的异常级别(Exception Level,EXL)位(Status<1>)置1。EXL 位会禁止进一步的中断,直到应用程序通过清零EXL 位明确地重新允许为止。下一步,它会跳转到根据送入向量编号计算的向量地址处。

  INTSTAT 寄存器包含当前待处理中断的中断向量编号(VEC)位(INTSTAT<5:0>)和请求中断优先级(Requested Interrupt Priority, RIPL)位(INTSTAT<10:8>)。这可能会与导致内核离开正常执行顺序的中断不同。执行ERET (异常返回)指令之后,处理器会恢复为先前状态。ERET 会清零EXL 位、恢复程序计数器,并将当前影子集回复为先前影子集。

  PIC32MX 的中断控制器可以配置为工作于两种模式之一:

  • 单向量模式——在一个向量地址处处理所有中断请求(复位之后的模式)。

  • 多向量模式——在所计算的向量地址处处理中断请求。

  中断处理

PIC32单片机的UART

  通用异步收发器(Universal Asynchronous Receiver Transmitter,UART)模块是PIC32MX 系列器件提供的串行I/O 模块之一。UART 是可以与外设和个人计算机(使用RS-232、RS-485、LIN 1.2 和IrDA® 等协议)通信的全双工异步通信通道。

  根据不同的器件型号,UART 模块还通过UxCTS 和UxRTS 引脚支持硬件流控制选项,其中还包括IrDA 编码器和解码器。关于可用性,请参见具体器件数据手册。

  UART 模块的主要特性有:

  • 全双工8 位或9 位数据传输

  • 偶校验、奇校验或无奇偶校验选项(对于8 位数据)

  • 一个或两个停止位

  • 硬件自动波特率特性

  • 完全集成的波特率发生器,具有16 位预分频器

  • 当器件工作在80 MHz 时,波特率范围从76 bps 至20 Mbps

  • 独立的接收和发送FIFO 数据缓冲区

  • 奇偶校验、帧和缓冲区溢出错误检测

  • 支持仅在地址检测(第9 位 = 1)时产生中断

  • 独立的发送和接收中断

  • 用于诊断支持的环回模式

  • LIN 1.2 协议支持

  图 给出了UART 的简化框图。UART 模块由以下这些重要的硬件组成:

  • 波特率发生器

  • 异步发送器

  • 异步接收器和IrDA 编/ 解码器

  UART 简化框图

  控制寄存器

  每个UART 模块包含以下特殊功能寄存器(Special Function Register, SFR):

  • UxMODE:UARTx 模式寄存器

  • UxSTA:UARTx 状态和控制寄存器

  • UxTXREG:UARTx 发送寄存器

  • UxRXREG:UARTx 接收寄存器

  • UxBRG:UARTx 波特率寄存器

  此外,每个UART 模块还具有用于中断控制的相关位(关于这些位的说明,请参见第8 章“中断”

  (DS61108)):

  • UxTXIE:发送中断允许控制位

  • UxTXIF:发送中断标志状态位

  • UxRXIE:接收中断允许控制位

  • UxRXIF:接收中断标志状态位

  • UxEIE:错误中断允许控制位

  • UxEIF:错误中断标志状态位

  • UxIP<2:0>:中断优先级控制位

  • UxIS<1:0>:中断子优先级控制位

  表21-1 汇总了所有与UART 相关的寄存器。该汇总表之后列出了相应的寄存器,并且每个寄存器位均附有详细的说明。

  注: 不同的PIC32MX 系列器件型号可能具有一个或多个UART 模块。在引脚、控制/ 状态位和寄存器的名称中使用的“x”表示特定的模块。更多详细信息,请参见具体器件数据手册。

  UART SFR 汇总

关键字:32位  单片机  Microchip  PIC32

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2013/0520/article_18453.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
32位
单片机
Microchip
PIC32

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved