UART控制寄存器详解-UARTEN、WAKE等功能

需积分: 50 10 下载量 148 浏览量 更新于2024-08-06 收藏 4.5MB PDF 举报
"UART控制寄存器-asm1142" 在微控制器中,UART(通用异步收发传输器)是一种广泛使用的串行通信接口,用于设备间的数据传输。在dsPIC33CK256MP50系列中,UART的配置和控制通过特定的寄存器来实现。这个部分主要讨论的是UxMODE寄存器,它是UART配置的核心,包含了多个控制位,以调整UART的工作方式和功能。 1. **UARTEN**:UART使能位。当此位设置为1时,UART被激活,准备进行发送和接收操作。如果设置为0,UART状态机、FIFO缓冲区指针和计数器会被复位,此时寄存器仍然可以读写。 2. **USIDL**:UART空闲模式停止位。如果设置为1,当器件进入空闲模式时,UART会停止工作。而0则表示在空闲模式下UART仍保持运行。 3. **WAKE**:唤醒使能位。当设置为1时,UART在空闲模式下会继续监控RX引脚,一个下降沿会触发中断,然后在上升沿时由硬件清零此位。若设置为0,则不监视RX引脚,也不会检测上升沿。 4. **RXBIMD**:接收暂停字符中断模式位。在DMX或异步/LIN/J2602模式下,当检测到23/11个连续的低电平时,根据此位设置决定如何处理中断。1表示在低电平持续时间达到23/11个位周期后,上升沿触发中断;0则是在低电平到高电平转变时触发中断。 5. **BRKOVR**:发送暂停字符软件改写位。1表示将激活TX数据线,无论UTXINV的设置如何,都会输出0或1。0则表示TX线由移位寄存器驱动,遵循正常的UART发送流程。 6. **UTXBRK**:UART发送暂停字符位。1表示在下一次发送时插入同步暂停字符,完成后由硬件自动清零。0则禁止发送暂停字符。 7. **BRGH**:高波特率选择位。1代表高速模式,波特率为baudclk/4;0则为低速模式,波特率为baudclk/16。 8. **ABAUD**:自动波特率检测使能位。在MOD<3:0>设置为1xxx时变为只读,1表示启动波特率测量,接收同步字段55h;0则禁止波特率检测。 这些控制位允许开发者灵活地配置UART以适应不同的通信需求,如波特率、唤醒功能、异常处理等。此外,dsPIC33CK256MP50系列微控制器还提供了丰富的外设功能,如高速PWM、高级模拟特性(如高速ADC)、定时器/输出比较/输入捕捉等,适用于多种应用领域,如电机控制、电源管理、信号处理等。