USART 通用同步异步收发器(Universal Synchronous Asynchronous Receiver Transmitter)。
APB2ENR 高级外设总线(Andvaced Peripheral Bus)使能(Enable)寄存器;外设的对应位使能(置1)后,该外设才可以使用。
APB2RSTR 高级外设总线(Andvaced Peripheral Bus)复位(Reset)寄存器;当外设出现异常的时候可以通过复位寄存器里面的对应位设置,实现该外设的复位,然后重新配置这个外设达到让其重新工作的目的。一般在系统刚开始配置外设的时候,都会先执行复位该外设的操作。
USART_SR 串口状态(State)寄存器;
CTS:如果设置了CTSE位,当nCTS输入变化状态时,该位被硬件置高。由软件将其清零。如果USART_CR3中的CTSIE为’1’,则产生中断。
LBD:LIN断开检测(LIN Break Detect)当探测到LIN断开时,该位由硬件置’1’,由软件清’0’(向该位写0)。如果USART_CR3中的LBDIE = 1,则产生中断。
TXE:发送数据寄存器空(Transmit Empty)当TDR寄存器中的数据被硬件转移到移位寄存器的时候,该位被硬件置位。如果USART_CR1寄存器中的TXEIE为1,则产生中断。对USART_DR的写操作,将该位清零。
TC:发送完成(Transmit Complete),当该位被置位的时候,表示USART_DR内的数据已经被发送完成了。如果设置了这个位的中断,则会产生中断。该位也有两种清零方式:1)读USART_SR,写USART_DR。2)直接向该位写0。
RXNE:接收据寄存器非空(Receive Not Empty),当该位被置位的时候,就是提示已经有数据被接收到了,并且可以读出来了。通过读USART_DR可以将该位清零,也可以向该位写0,直接清除。
IDLE:监测到总线空闲;当检测到总线空闲时,该位被硬件置位。如果USART_CR1中的IDLEIE为’1’,则产生中断。
ORE:过载错误(Overrun Error)当RXNE仍然是’1’的时候,当前被接收在移位寄存器中的数据,需要传送至RDR寄存器时,硬件将该位置位。如果USART_CR1中的RXNEIE为’1’的话,则产生中断。
NE: 噪声错误(Noise Error)在接收到的帧检测到噪音时,由硬件对该位置位。
FE: 帧错误(Framing Error)当检测到同步错位,过多的噪声或者检测到断开符,该位被硬件置位。
PE: 校验错误(Parity Error)在接收模式下,如果出现奇偶校验错误,硬件对该位置位。
USART_DR 串口数据(Data)寄存器;这是一个双寄存器,包含了TDR和RDR,对它读操作,读取的是RDR寄存器的值,对它的写操作,实际上是写到TDR寄存器的;当向该寄存器写数据的时候,串口就会自动发送,当收到收据的时候,也是存在该寄存器内。
只用了低9位(DR[8:0]),其他都是保留。该寄存器兼具读和写的功能。MSB 位(根据数据的长度不同,MSB是第7位或者第8位)是校验位。
USART_BRR 串口波特率(BaudRate)寄存器,设置它就可以达到配置不同波特率的目的。
DIV_Mantissa[11:0]:USARTDIV的整数部分;这12位定义了USART分频器除法因子(USARTDIV)的整数部分。
DIV_Fraction[3:0]:USARTDIV的小数部分这4位定义了USART分频器除法因子(USARTDIV)的小数部分。;
USART_CR1 串口控制(Control)寄存器1;串口的很多配置都是通过这3个寄存器来设置的。
该寄存器的高 18 位没有用到,低 14 位用于串口的功能设置。
UE:串口使能(Usart Enable)位,通过该位置1,以使能串口。当该位被清零,分频器和输出停止工作,以减少功耗。
M:字长选择位,当该位为0的时候设置串口为8个字长外加停止位,停止位的个数是根据USART_CR2的[13:12]位设置来决定的,默认为0。
WAKE:唤醒;置0,被空闲总线唤醒;置1,被地址标记唤醒。
PCE:校验控制使能(Parity Control Enable)位,置0,则禁止校验,否则使能校验。
PS:校验位选择(Parity Select)位,设置为0则为偶校验,否则为奇校验。
PEIE:PE中断使能(Parity Error Interrupt Enable),置0,禁止中断;置1,当USART_SR中的PE为’1’时,产生USART中断。
TXIE:发送缓冲区空中断使能(Transmit Interrupt Enable)位,设置该位为 1,当 USART_SR 中的 TXE 位为1 时,将产生串口中断。
TCIE:发送完成中断使能(Transmit Complete Interrupt Enable)位,设置该位为 1,当 USART_SR 中的 TC位为 1 时,将产生串口中断。
RXNEIE:接收缓冲区非空中断使能(Receive Non-Empty Interrupt Enable)位,设置该位为 1,当 USART_SR中的 ORE 或者 RXNE 位为 1 时,将产生串口中断。
IDLEIE:IDLE中断使能(IDLE Interrupt Enable)位,置0,禁止中断;置1,当USART_SR中的IDLE为’1’时,产生USART中断。
TE:发送使能(Transmit Enable)位,设置为1,将开启串口的发送功能。
RE:接收使能(Receive Enable)位,用法同 TE。
RWU:接收唤醒(Receiver Wakeup)位;置0,正常模式;置1,静默模式。
SBK:发送断开帧(Send Break)位;使用该位来发送断开字符。该位可以由软件设置或清除。操作过程应该是软件设置位它,然后在断开帧的停止位时,由硬件将该位复位。
USART_CR2 串口控制(Control)寄存器2:
LINEN:LIN模式使能(LIN Enable)位;在LIN模式下,可以用USART_CR1寄存器中的SBK位发送LIN同步断开符(低13位),以及检测LIN同步断开符。
STOP:停止位(STOP)位;这2位用来设置停止位的位数;00:1个停止位;01:0.5个停止位;10:2个停止位;11:1.5个停止位;
CLKEN:时钟使能(Clock Enable)位;该位用来使能CK引脚。
CPOL:时钟极性(Clock Polarity)位;在同步模式下,可以用该位选择SLCK引脚上时钟输出的极性。
CPHA:时钟相位(Clock Phase)位;在同步模式下,可以用该位选择SLCK引脚上时钟输出的相位。
LBCL:最后一位时钟脉冲(Last Bit Clock Pulse)位;在同步模式下,使用该位来控制是否在CK引脚上输出最后发送的那个数据字节(MSB)对应的时钟脉冲。
LBDIE:LIN断开符检测中断使能(LIN Break Detection Interrupt Enable)位;置0,禁止中断;置1,只要USART_SR寄存器中的LBD为’1’就产生中断。
LBDL:LIN断开符检测长度(LIN Break Detection Length)位;该位用来选择是11位还是10位的断开符检测。
ADD[3:0]:本设备的USART节点地址。这是在多处理器通信下的静默模式中使用的,使用地址标记来唤醒某个USART设备。
USART_CR3 串口控制(Control)寄存器3:
CTSIE:CTS中断使能(CTS Interrupt Enable)位;
CTSE:CTS使能(CTS Enable)位;
RTSE:RTS使能(RTS Enable)位;
DMAT:DMA发送(DMA Transmitter)位;
DMAR: DMA接收(DMA Receiver)位;
SCEN: 智能卡使能(Smartcard Enable)位;该位用来使能智能卡模式
NACK:智能卡NACK(Smartcard NACK)位;置0,不发送NACK;置1,发送NACK;
HDSEL:半双工选择(Half-duplex Selection)位;选择单线半双工模式;
IRLP:红外低功耗(IrDA Low-Power)位;该位用来选择普通模式还是低功耗红外模式;
IREN:红外模式使能(IrDA Enable)位;
EIE:错误中断使能(Error Interrupt Enable)位;
USART_GTPR 保护时间(Guard Time)和预分频(Prescaler)寄存器:
GT[7:0]:保护时间值(Guard Time)位;该位域规定了以波特时钟为单位的保护时间。在智能卡模式下,需要这个功能。当保护时间过去后,才会设置发送完成标志。
PSC[7:0]:预分频器值(Prescaler)位;在红外或智能卡模式,才需要这个功能。
上一篇:STM32F10x的LCD(ILI9320)显示
下一篇:STM32 常用GPIO操作函数记录
推荐阅读
史海拾趣
品质是企业的生命线。BusBoard公司深知这一点,因此从原材料采购到生产加工再到产品出厂,每一个环节都严格把控品质。公司建立了完善的品质管理体系,对每一道工序都进行严格的检验和测试。同时,公司还注重员工品质意识的培养和提升,确保每一个员工都能以高度的责任心对待自己的工作。这种对品质的执着追求使得BusBoard公司的产品在市场上赢得了良好的口碑。
在宇航领域,动力电池管理芯片的性能要求极高。西安航天民芯凭借其在集成电路设计领域的深厚积累,成功研发出全国第一颗宇航级动力电池管理芯片。这一突破不仅打破了国外垄断的局面,也为中国宇航事业的发展做出了重要贡献。
Fujitsu America作为Fujitsu Limited在北美地区的子公司,其发展历程与Fujitsu全球公司紧密相连。Fujitsu最初成立于1935年,最初是一家电信设备制造商,以生产电话交换机起家。随着技术的不断进步,Fujitsu逐渐扩展到信息与通信技术(ICT)领域,成为全球领先的ICT企业。Fujitsu America在这一过程中发挥了重要作用,不仅继承了Fujitsu在技术创新上的优良传统,还根据北美市场的需求特点,提供了定制化的ICT解决方案和服务,推动了公司在北美市场的快速发展。
随着全球化趋势的加强,Anderson Electronics Inc公司开始寻求国际合作,与国外知名电子企业开展技术交流和合作研发。通过与国际先进技术的融合和创新,公司成功开发出了一系列具有国际竞争力的新产品。这些产品不仅在国内市场取得了成功,还远销海外,为公司带来了可观的利润和更广阔的发展空间。
随着技术的不断进步和市场需求的多样化,Advanced Analog的产品逐渐应用于更广泛的领域。从最初的TFT-LCD面板,到后来的数字相机、手持装置、网络通讯装置等领域,Advanced Analog都提供了完整的解决方案和优质的服务。通过与各行业合作伙伴的紧密合作,Advanced Analog的产品助力众多电子设备实现了更高效、更稳定的性能,推动了整个电子行业的发展。
随着技术的不断发展,Cynergy 3不断将新技术应用于产品研发中。在液位传感器和流量传感器领域,公司推出了多款具有创新功能的产品,满足了市场对于高精度、高可靠性的需求。此外,Cynergy 3还在RF中继技术方面取得了重大突破,开发出了一系列适用于特定通信应用的继电器产品。这些技术创新不仅提升了公司的市场竞争力,也为公司赢得了众多行业奖项和荣誉。
传说中Wince6做了很多重大改进,效率大幅度提升。但是我最近从wince5转到Wince6之后,发现: 在PXA270平台上,直接从wince6的MainStoneIII改来的BSP,速度明显比wince5慢很多。在板子上慢吧,咱先不提了,可能是BSP还没有优化好,是咱的水平太菜。 ...… 查看全部问答∨ |
|
如题,WinCE6.0下,两个ARM9板子,一个做服务器端,一个做客户端。在局域网内,一个ARM9板子用网线和一台PC相连,另一个也用网线和一台PC机相连。服务器端的IP为192.168.0.2。在客户端连接服务器时,提示无法连接服务器。在硬件的连接上我该怎么做 ...… 查看全部问答∨ |
|
我在用CC2510做无线收发,使用TDMA。发送端每隔1ms改变一次频率发送数据,接收端一直接收数据。 在实验过程中当我把频率变换时间(即发送端每隔一段时间改变一次频率然后发送数据的时间)更改为1ms时接收端就接收不到数 ...… 查看全部问答∨ |
程序片段如下 定时器中: timerCount++; if (timerCount >= 50) { /*dip1只有 0、1两种情况*/ if (dip1 == 0)&nb ...… 查看全部问答∨ |
响应soso的号召,把RT-Thread这个稳定的网络产品也传了上来,详细信息如下:这个项目由RT-Thread的LwIP组件维护人 mbbill 捐献,稳定度也达到了RT- Thread/LwIP的最高水平,硬件基于AT91SAM7x256(mbbill亦是AT91SAM7x256分支维护人)。 ...… 查看全部问答∨ |
|
看到手册RM008(Rev10)的140页下面的图中有个VDD_FT,这个电压是怎么加上的?我在引脚中找不到这个引脚,难道5V是内部升上去的? 谢谢!… 查看全部问答∨ |
设计资源 培训 开发板 精华推荐
- 开工大吉,抢楼有礼!预测:2021年电子热门关键词
- 是德科技有奖问答活动之一,A4WP无线充电测试的示波器方案,答题闯关赢好礼!
- 泰克多媒体总线专题之《DDR Memory》,下载赢好礼!
- 吉时利DMM6500 6½ 位数字触摸屏万用表六大功能,满足工程师的切身需求,献给有梦想的你!
- 有奖测评 | 英飞凌新品情报站:最新 5V XENSIVTM PAS CO2 传感器 套件测评
- 是德科技直播 | 小探头,大学问,别让探头拖累你的测试结果!
- 下载有礼:2017年泰克亚太专家大讲堂第一期:大数据与云存储环境下的高速总线技术演进
- 降碳行动:寻找身边8位单片机,抢楼赢ST最新M0开发板!
- 劳动节归来,EEWORLD社区4月明星人物出台喽!