新闻中心

EEPW首页>嵌入式系统>设计应用> HT46ru232单片机简介

HT46ru232单片机简介

作者: 时间:2016-11-25 来源:网络 收藏

·TIDLE
TIDLE是数据发送完成标志位。若 TIDLE=0,表明数据传输中。当TXIF=1且数据发送完毕或暂停字被发送时,TIDLE置位。TIDLE=1,TX引脚空闲。读取 USR寄存器再写TXR寄存器将清除TIDLE位。当数据字节或暂停字符排列好并准备发送时,TIDLE不发生变化。
·RXIF
RXIF 是接收寄存器状态标志。当 RXIF=0,表明 RXR 寄存器为空;当 RXIF=1,表明 RXR 寄存器接收到新数据。当数据从移位寄存器加载到RXR寄存器,如果UCR2寄存器中的RIE=1,则会触发中断。当接收数据时检测到一个或多个错误时,相应的标志位 NF、FERR或PERR会在同一周期内置位。读取USR寄存器再读RXR寄存器,如果RXR寄存器中没有新的数据,那么将清除RXIF标志。 ·RIDLE
RIDLE是接收状态标志。若 RIDLE=0,表明正在接收数据;若RIDLE=1,表明接收器空闲。在接收到停止位和下一个数据的起始位之间,RIDLE被置位,表明 UART空闲。
·OERR
OERR 是过速错误标志,表示接收缓冲器溢出。若 OERR=0,表明没有数据溢出;若 OERR=1,表明发生了过速错误,它将禁止下一组数据的接收。先读取 USR寄存器再读RXR寄存器将清除此标志位。

本文引用地址://m.amcfsurvey.com/article/201611/321149.htm

·FERR
FERR 是帧错误标志位。若 FERR=0,表明没有帧错误发生;若 FERR=1,表明当前的数据发生了帧错误。先读取USR寄存器再读 RXR寄存器将清除此位。
·NF
NF是噪声干扰标志。若 NF=0,表明没有受到噪声干扰;若 NF=1,表明 UART接收数据时受到噪声干扰。它与 RXIF 在同一个周期内置位,但不会与过速标志位同时置位。先读取 USR 寄存器再读 RXR寄存器将清除此标志位。
·PERR
PERR 是奇偶校验出错标志。若 PERR=0,表明奇偶校验正确;若 PERR=1,表明接收到的数据奇偶校验出错。只有使能了奇偶校验此位才有效。先读取 USR寄存器再读RXR寄存器将清除此位。

UCR1寄存器bit0-7定义为:


·TX8
此位只有在传输数据为 9 位的格式中有效,TX8 用来存储发送数据的第 9 位。BNO 是用来控制传输位数是 8位还是 9位。
·RX8
此位只有在传输数据为 9 位的格式中有效,RX8 用来存储接收数据的第 9 位。BNO 是用来控制传输位数是 8位还是 9位。
·TXBRK
TXBRK是暂停字发送控制位。若 TXBRK=0,表明没有暂停字要发送,TX引脚正常操作;若 TXBRK=1,表明将会发送暂停字,发送器将发送逻辑 0。若 TXBRK 为高,缓冲器中数据发送完毕后,发送器将至少保持13位宽的低电平直至TXBRK复位。
·STOPS
此位用来设置停止位的长度。若 STOPS=1,表明有两位停止位;若STOPS=0,表明只有一位停止位。
·PRT
奇偶校验选择位。若PRT=1,表明选择奇校验;若PRT=0,表明选择偶校验。

·PREN
此位为奇偶校验使能位。若PREN=1,表明使能奇偶校验;若 PREN=0,表明除能奇偶校验。
·BNO
选择数据长度为 8位或 9位格式。若BNO=1,表明传输数据为 9位;若BNO=0,表明传输数据为8位。若选择了9位数据传输格式,RX8和TX8将分别存储接收和发送数据的第 9位。
·UARTEN
此位为 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
此位为发送寄存器为空时中断的使能或除能位。若 TEIE=1,当发送器为空时 TXIF 将置位,UAR的中断请求标志置位;若TEIE=0,UART中断请求标志不受TXIF的影响。
·TIIE
此位为发送器空闲时中断的使能或除能位。若 TIIE=1,当发送器空闲时 TIDLE 置位,UART 的中断请求标志置位;若 TIIE=0,UART中断请求标志不受 TIDLE的影响。
·RIE
此位为接收器中断使能或除能位。若RIE=1,当接收器过速或接收数据有效时OERR或 RXIF置位UART的中断请求标志置位;若 RIE=0,UART中断请求标志不受 OERR或RXIF影响。
·WAKE
此位为接收器唤醒功能的使能和除能位。若 WAKE=1 且在暂停模式下,RX 引脚的下降沿将唤醒单片机。若 WAKE=0且在暂停模式下,RX引脚的任何边沿都不能唤醒单片机。

·ADDEN
此位为地址检测使能和除能位。若ADDEN=1,表明地址检测使能,此时数据的第 8位(BON=0)或第 9位(BON=1)为高,接到的是地址而非数据。若相应的中断使能且接收到的值最高位为1,那么中断请求标志将会被置位,若最高位为 0,那么将不会产生中断且收到的数据也会被忽略。
·BRGH
此位为波特率发生器高低速选择位,它和 BRG 寄存器一起控制 UART 的波特率。若 BRGH=1,为高速模式;若 BRGH=0,为低速模式。
·RXEN
此位为接收使能位。若RXEN=0,接收器将被除能,接收器停止工作。另外缓冲器将被复位,此时RX引脚可作普通输入/输出端口使用。若 RXEN=1且UARTEN=1,则接收将被使能,RX引脚将由 UART来控制。在数据传输时清除RXEN将中止数据接收且复位接收器,此时 RX引脚可作为普通输入输出端口
使用。
·TXEN
此位为发送使能位。若 TXEN=0,发送器将被除能,发送器停止工作。另外缓冲器将被复位,此时TX引脚可作为普通输入/输出端口使用。若TXEN=1且UARTEN=1,则发送将被使能,TX引脚将由UART来控制。在数据传输时清除 TXEN将中止数据发送且复位发送器,此时TX引脚可作为普通的输入输出
口使用。

波特率发生器

UART内建一个波特率发生器,可以设定数据传输速率。波特率是由一个独立的内部 8位计数器产生,由BRG寄存器和UCR2寄存器的第2位BRGH来控制。BRGH是决定波特率发生器处于高速模式还是低速模式,从而决定计算公式的选用。BRG寄存器的值 N可根据下表中的公式计算,范围是 0到255。



为了得到相应的波特率,首先需要设置BRGH来选择相应的计算公式从而算出BRG 的值。由于BRG的值不连续,所以实际波特率和理论值之间有一个偏差。下面举例怎样计算BRG 寄存器中的值N 和误差。
·波特率和误差的计算
系统选用 8M 晶振且 BRGH=0,若期望的波特率为 9600,计算它的 BRG 寄存器的值 N,实际波特率和误差。


例程会逐步补上。

其他相关资料请参见盛群公司官方芯片手册。官方链接:http://www.holtek.com.cn/pdf/uc/sim46xu232v100.pdf


上一页 1 2 下一页

关键词:HT46ru232单片

评论


技术专区

关闭