当前位置:首页 > STM32 例程 串口实验
01:0.5个停止位; 10:2个停止位; 11:1.5个停止位;
注:UART4和UART5不能用0.5停止位和1.5停止位。
位11 CLKEN:时钟使能 (Clock enable)
该位用来使能CK引脚 0:禁止CK引脚; 1:使能CK引脚。
注:UART4和UART5上不存在这一位。
位10 CPOL:时钟极性 (Clock polarity)
在同步模式下,可以用该位选择SLCK引脚上时钟输出的极性。和CPHA位一起配合来产生需要的时钟/数据的采样关系 0:总线空闲时CK引脚上保持低电平; 1:总线空闲时CK引脚上保持高电平。 注:UART4和UART5上不存在这一位。
位9 CPHA: 时钟相位 (Clock phase)
在同步模式下,可以用该位选择SLCK引脚上时钟输出的相位。和CPOL位一起配合来产生需要的时钟/数据的采样关系(参见图259 和图260)。 544/754
0:在时钟的第一个边沿进行数据捕获; 1:在时钟的第二个边沿进行数据捕获。 注:UART4和UART5上不存在这一位。
位8 LBCL:最后一位时钟脉冲 (Last bit clock pulse)
在同步模式下,使用该位来控制是否在CK引脚上输出最后发送的那个数据字节(MSB)对应的时钟脉冲
0:最后一位数据的时钟脉冲不从CK输出; 1:最后一位数据的时钟脉冲会从CK输出。 注意:
1. 最后一个数据位就是第8或者第9个发送的位(根据USART_CR1寄
存器中的M位所定义的8或者9位数据帧格式)。 2. UART4和UART5上不存在这一位。
位7 保留位,硬件强制为0
位6 LBDIE:LIN断开符检测中断使能 (LIN break detection interrupt enable)
断开符中断屏蔽(使用断开分隔符来检测断开符) 0:禁止中断;
1:只要USART_SR寄存器中的LBD为’1’就产生中断。
位5 LBDL:LIN断开符检测长度 (LIN break detection length)
该位用来选择是11位还是10位的断开符检测 0:10位的断开符检测; 1:11位的断开符检测。
位4 保留位,硬件强制为0
位3:0 ADD[3:0]:本设备的USART节点地址
该位域给出本设备USART节点的地址。
这是在多处理器通信下的静默模式中使用的,使用地址标记来唤醒某个USART设备。
注意:在使能发送后不能改写这三个位(CPOL、CPHA、LBCL)。
[编辑] USART_CR3(Control Register 3)控制寄存器3
位31:11 保留位,硬件强制为0
位10 CTSIE:CTS中断使能 (CTS interrupt enable)
0:禁止中断;
1:USART_SR寄存器中的CTS为’1’时产生中断。 注:UART4和UART5上不存在这一位。
位9 CTSE:CTS使能 (CTS enable)
0:禁止CTS硬件流控制; 1:CTS模式使能,只有nCTS输入信号有效(拉成低电平)时才能发送数据。如果在数据传输的过程中,nCTS信号变成无效,那么发完这个数据后,传输就停止下来。如果当nCTS为无效时,往数据寄存器里写数据,则要等到nCTS有效时才会发送这个数据。 注:UART4和UART5上不存在这一位。
位8 RTSE:RTS使能 (RTS enable)
0:禁止RTS硬件流控制;
1:RTS中断使能,只有接收缓冲区内有空余的空间时才请求下一个数据。当前数据发送完成后,发送操作就需要暂停下来。如果可以接收数据了,将nRTS输出置为有效(拉至低电平)。 注:UART4和UART5上不存在这一位。
位7 DMAT:DMA使能发送 (DMA enable transmitter)
该位由软件设置或清除。 0:禁止发送时的DMA模式。 1:使能发送时的DMA模式;
注:UART4和UART5上不存在这一位。
位6 DMAR: DMA使能接收 (DMA enable receiver)
该位由软件设置或清除。 0:禁止接收时的DMA模式。 1:使能接收时的DMA模式;
注:UART4和UART5上不存在这一位。
位5 SCEN: 智能卡模式使能 (Smartcard mode enable)
该位用来使能智能卡模式 0:禁止智能卡模式; 1:使能智能卡模式。
注:UART4和UART5上不存在这一位。
位4 NACK:智能卡NACK使能 (Smartcard NACK enable)
0:校验错误出现时,不发送NACK; 1:校验错误出现时,发送NACK。
注:UART4和UART5上不存在这一位。
位3 HDSEL:半双工选择 (Half-duplex selection)
选择单线半双工模式 0:不选择半双工模式; 1:选择半双工模式。
位2 IRLP:红外低功耗 (IrDA low-power)
该位用来选择普通模式还是低功耗红外模式 0:通常模式; 1:低功耗模式。
位1 IREN:红外模式使能 (IrDA mode enable)
该位由软件设置或清除。 0:不使能红外模式; 1:使能红外模式。
位0 EIE:错误中断使能 (Error interrupt enable)
在多缓冲通信模式下,如果该位为’1’,当有帧错误、过载错误或者噪声错误时(USART_SR中的FE=1,或者ORE=1,或者NE=1),则产生中断。 0:禁止中断;
1:只要USART_CR3中的DMAR=1,并且USART_SR中的FE=1,或者ORE=1,或者NE=1,则产生中断
[编辑] USART_GTPR(Guard Time and Prescaler Register)保护时间和预分频寄存器
位31:16 保留位,由硬件强制为0
位15:8 GT[7:0]:保护时间值 (Guard time value)
该位域规定了以波特时钟为单位的保护时间。
在智能卡模式下,需要这个功能。当保护时间过去后,才会设置发送完成标志(TC)。
注:UART4和UART5上不存在这一位。
位7:0 PSC[7:0]:预分频器值 (Prescaler value)
在红外(IrDA)低功耗模式下: PSC[7:0] = 红外低功耗波特率
对系统时钟分频以获得低功耗模式下的频率: 源时钟被寄存器中的值(仅有8位有效)分频 00000000:保留 – 不要写入该值; 00000001:对源时钟1分频; 00000010:对源时钟2分频; ??
在红外(IrDA)的正常模式下:PSC只能设置为00000001 在智能卡模式下: PSC[4:0]:预分频值
对系统时钟进行分频,给智能卡提供时钟。
寄存器中给出的值(低5位有效)乘以2后,作为对源时钟的分频因子 00000:保留 – 不要写入该值;
共分享92篇相关文档