基于UART和SPI的嵌入式通信技术详解
1. UART异步串行总线
UART(通用异步收发传输器)是嵌入式系统中常用的通信接口。在配置UART时,需要设置奇偶校验位和停止位。例如,若要启用奇偶校验,可使用如下代码:
case 'E':
UART3_CR1 |= UART_CR1_PARITY_ENABLED;
break;
停止位的数量可根据参数设置,使用寄存器的2位来存储配置,值为0表示1个停止位,值为2表示2个停止位:
reg = UART3_CR2 & ~UART_CR2_STOPBITS;
if (stop > 1)
UART3_CR2 = reg | (2 << 12);
完成配置后,可开启UART以启动传输:
UART3_CR1 |= UART_CR1_UART_ENABLE;
return 0;
在PD8引脚上传输串行数据时,只需将数据逐字节复制到UART_DR寄存器即可。
1.1 UART数据传输
UART逻辑包含双向的FIFO缓冲区。在轮询模式下,为确保每次FIFO中最多只有一个字符,在写入每个字符之前,需要检查FIFO是否为空。当FIFO为空时,UART3_SR中与TX_FIFO_EMPTY标志关联的位会被设备置为1。以下是一个传输字符串的函数示例:
超级会员免费看
订阅专栏 解锁全文
1109

被折叠的 条评论
为什么被折叠?



