匿名
未登录
登录
丢石头百科
搜索
查看“STM8 UART 发送器”的源代码
来自丢石头百科
名字空间
页面
讨论
更多
更多
页面选项
查看
查看源代码
历史
←
STM8 UART 发送器
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
<table border="0" cellpadding="0" cellspacing="0" style="color: rgb(72, 61, 139); font-family: Arial, 新宋体, 微软雅黑; font-size: 12px;" width="780"><tbody><tr><th class="type_483D8B" scope="col" style="line-height: 20px; font-weight: normal; border-top-style: none;" valign="top"> STM8 UART 发送器 发送器根据M位的状态发送8位或9位的数据字。当M位置1,字长为9位,并且第九位(MSB)应该写入寄存器UART_CR1的T8位。 当发送使能位(TE)被设置时,发送移位寄存器中的数据在TX脚上输出,相应的时钟脉冲在SCLK脚上输出。 字符发送 在UART发送期间,在TX引脚上首先移出数据的最低有效位。在此模式里,UART_DR寄存器有一个缓冲器(TDR),位于内部总线和发送移位寄存器之间。 每个字符之前都有一个低电平的起始位;之后跟着数目可配置的停止位。UART支持以下停止位。 注意: 1.在数据传输期间不能复位TE位,否则将破坏TX脚上的数据,因为波特率计数器停止计数。 正在传输的当前数据将丢失。 2.TE位被激活后将发送一个空闲帧。 可配置的停止位 随每个字符发送的停止位的位数可以通过控制寄存器3的位5、4进行编程。* 1个停止位:停止位位数的默认值。<li>2个停止位:可用于常规UART模式。 </li><li>1.5个停止位:仅在智能卡模式下使用。 空闲帧包括了停止位。 断开帧是10位低电平,后跟停止位(当m=0时);或者11位低电平,后跟停止位(m=1时)。不可能传输更长的断开帧(长度大于10或者11位)。 </li> [[File:STM8_P276_1.jpg]] (图103:STM8配置停止位) 配置步骤: 1.编程UART_CR1的M位来定义字长。 2.在UART_CR3中编程停止位的位数。 3.按下列顺序编写波特率寄存器选择要求的波特率。 a) UART_BRR2 b) UART_BRR1 4.设置UART_CR2中的TE位来使能发送模式。 5.把要发送的数据写进UART_DR寄存器(此动作清除TXE位)。在只有一个缓冲器的情况下,对每个待发送的数据重复此步骤。 单字节通信 清零TXE位总是通过对数据寄存器的写操作来完成的。TXE位由硬件来置1,它表明:* 数据已经从TDR移送到移位寄存器,数据发送已经开始* TDR寄存器为空* 下一个数据可以被写进UART_DR寄存器而不会覆盖先前的数据 如果TIEN位被设置,此标志将产生一个中断。 如果此时UART正在发送数据,对UART_DR寄存器的写操作把数据存进TDR寄存器,并在当前传输结束时把该数据复制进移位寄存器。 如果此时UART没有在发送数据,处于空闲状态,对UART_DR寄存器的写操作直接把数据放进移位寄存器,数据传输开始,TXE位立即被置起。 当一帧发送完成时(停止位发送后),TC位被置起,并且如果UART_CR1寄存器中的TCIE位被置起时,中断产生。按以下步骤对TC位的清零。 1.读UART_SR寄存器 2.写UART_DR寄存器 断开符号 设置SBK可发送一个断开符号。断开帧长度取决M位。 如果设置SBK=1,在完成当前数据发送后,将在UART_TX线上发送一个断开符号。断开字符发送完成时(在断开符号的停止位时)SBK被硬件复位。UART在最后一个断开帧的结束处插入一逻辑'1',以保证能识别下一帧的起始位。 注意:发送的断开帧是不计入停止位位数的。如果设置UART为2个停止位,Tx线路会被拉低直到第一个停止位发送结束。之后在第二个字符前插入2个逻辑1。 注意:如果在开始发送断开帧之前,软件又复位了SBK位,断开符号将不被发送。如果要发送两个连续的断开帧,SBK位应该在前一个断开符号的停止位之后置1。 空闲符号 TEN置位将使得UART在第一个数据帧前发送一空闲帧。</th></tr></tbody></table>
返回至
STM8 UART 发送器
。
导航
导航
首页
最近更改
随机页面
MediaWiki帮助
首页
首页
树莓派
主机
配件包
外壳
键鼠
电源
扩展板
显示屏
墨水屏
摄像模块
通信模块
继电器
电机驱动板
游戏机
产品分类
树莓派
Arduino
micro:bit
STM32
Espressif
WiFi模块
蓝牙模块
无线模块
LoRa模块
4G模块
GSM
GPRS
以太网
导航模块
北斗卫星
GPS
LCD
墨水屏
OLED
摄像头
USB模块
串口模块
RS232
RS485
CAN
传感器
温度模块
湿度模块
气压模块
继电器
电机模块
指纹模块
电平转换
音频模块
编程器
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志