HT46ru232单片机简介
串行口主要由3个UART寄存器来控制和检测(UART、UART1、UART2) · ·FERR · · ·UART(只读) bit0-7的定义为:
TXIF 是发送数据寄存器为空标志。若 TXIF=0,数据还没有从缓冲器加载到移位寄存器中;若TXIF=1,数据已从TXR寄存器中加载到移位寄存器。读取 USR寄存器再写TXR寄存器将清除TXIF。当TXEN被置位,即使发送缓冲器未满,TXIF也会被置位。
·
TIDLE是数据发送完成标志位。若 TIDLE=0,表明数据传输中。当TXIF=1且数据发送完毕或暂停字被发送时,TIDLE置位。TIDLE=1,TX引脚空闲。读取 USR寄存器再写TXR寄存器将清除TIDLE位。当数据字节或暂停字符排列好并准备发送时,TIDLE不发生变化。
·
RXIF 是接收寄存器状态标志。当 RXIF=0,表明 RXR 寄存器为空;当 RXIF=1,表明 RXR 寄存器接收到新数据。当数据从移位寄存器加载到RXR寄存器,如果UCR2寄存器中的RIE=1,则会触发中断。当接收数据时检测到一个或多个错误时,相应的标志位 NF、FERR或PERR会在同一周期内置位。读取USR寄存器再读RXR寄存器,如果RXR寄存器中没有新的数据,那么将清除RXIF标志。 ·
RIDLE是接收状态标志。若 RIDLE=0,表明正在接收数据;若RIDLE=1,表明接收器空闲。在接收到停止位和下一个数据的起始位之间,RIDLE被置位,表明 UART空闲。
·
OERR 是过速错误标志,表示接收缓冲器溢出。若 OERR=0,表明没有数据溢出;若 OERR=1,表明发生了过速错误,它将禁止下一组数据的接收。先读取 USR寄存器再读RXR寄存器将清除此标志位。
FERR 是帧错误标志位。若 FERR=0,表明没有帧错误发生;若 FERR=1,表明当前的数据发生了帧错误。先读取USR寄存器再读 RXR寄存器将清除此位。
·
NF是噪声干扰标志。若 NF=0,表明没有受到噪声干扰;若 NF=1,表明 UART接收数据时受到噪声干扰。它与 RXIF 在同一个周期内置位,但不会与过速标志位同时置位。先读取 USR 寄存器再读 RXR寄存器将清除此标志位。
·
PERR 是奇偶校验出错标志。若 PERR=0,表明奇偶校验正确;若 PERR=1,表明接收到的数据奇偶校验出错。只有使能了奇偶校验此位才有效。先读取 USR寄存器再读RXR寄存器将清除此位。UCR1寄存器bit0-7定义为:
此位只有在传输数据为 9 位的格式中有效,TX8 用来存储发送数据的第 9 位。BNO 是用来控制传输位数是 8位还是 9位。
·
此位只有在传输数据为 9 位的格式中有效,RX8 用来存储接收数据的第 9 位。BNO 是用来控制传输位数是 8位还是 9位。
·
TXBRK是暂停字发送控制位。若 TXBRK=0,表明没有暂停字要发送,TX引脚正常操作;若 TXBRK=1,表明将会发送暂停字,发送器将发送逻辑 0。若 TXBRK 为高,缓冲器中数据发送完毕后,发送器将至少保持13位宽的低电平直至TXBRK复位。
·
此位用来设置停止位的长度。若 STOPS=1,表明有两位停止位;若STOPS=0,表明只有一位停止位。
·
奇偶校验选择位。若PRT=1,表明选择奇校验;若PRT=0,表明选择偶校验。
此位为奇偶校验使能位。若PREN=1,表明使能奇偶校验;若 PREN=0,表明除能奇偶校验。
·
选择数据长度为 8位或 9位格式。若BNO=1,表明传输数据为 9位;若BNO=0,表明传输数据为8位。若选择了9位数据传输格式,RX8和TX8将分别存储接收和发送数据的第 9位。
·
此位为 UART 的使能位。若 UARTEN=0,表明 UART 除能,RX 和 TX 可用作普通输入/输出口;若UARTEN=1,表明UART使能,TX和RX将分别由TXEN和 RXEN控制。当 UART除能,系统将清除缓冲器,所有缓冲器中的数据将被忽略,另外波特率计数器、错误和状态标志位被复位,TXEN、RXEN、TXBRK、
RXIF、OERR、FERR,PERR和NF清零;而 TIDLE、TXIF和RIDLE置位,UCR1、UCR2和BRG寄存器中的其它位保持不变。若 UART工作时UARTEN清零,所有发送和接收将停止,模块也将复位成上述状态。当UART再次使能时,它将在上次配置下重新工作。UART2寄存器bit0-7定义为:
此位为发送寄存器为空时中断的使能或除能位。若 TEIE=1,当发送器为空时 TXIF 将置位,UAR的中断请求标志置位;若TEIE=0,UART中断请求标志不受TXIF的影响。
·
此位为发送器空闲时中断的使能或除能位。若 TIIE=1,当发送器空闲时 TIDLE 置位,UART 的中断请求标志置位;若 TIIE=0,UART中断请求标志不受 TIDLE的影响。
·
此位为接收器中断使能或除能位。若RIE=1,当接收器过速或接收数据有效时OERR或 RXIF置位UART的中断请求标志置位;若 RIE=0,UART中断请求标志不受 OERR或RXIF影响。
·
此位为接收器唤醒功能的使能和除能位。若 WAKE=1 且在暂停模式下,RX 引脚的下降沿将唤醒单片机。若 WAKE=0且在暂停模式下,RX引脚的任何边沿都不能唤醒单片机。
HT46ru232单片 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)