三种方法:查询,中止,DMA
通用同步异步收发器(USART)供给了一种灵敏的方法来与运用工业规范NR 异步串行数据格局的外部设备之间进行全双工数据交换。 USART运用分数波特率发生器供给宽规模的波特率挑选。
它支撑同步单向通讯和半双工单线通讯。它也支撑LIN(部分互连网),智能卡协议和IrDA(红外数据安排)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。它还答应多处理器通讯。用于多缓冲器装备的DMA方法,能够完结高速数据通讯。
首要特性:
全双工的,异步通讯
NR 规范格局
分数波特率发生器体系
可编程数据字长度(8位或9位)
可装备的中止位
LIN主发送同步断开符的才能以及LIN从检测断开符的才能
发送方为同步传输供给时钟
IRDA SIR 编码器解码器
智能卡模仿功用
单线半双工通讯
运用DMA的可装备的多缓冲器通讯
独自的发送器和接纳器使能位
检测标志
校验操控
四个过错检测标志
多处理器通讯
从静默形式中唤醒(经过闲暇总线检测或地址标志检测)
两种唤醒接纳器的方法
STM32的串口装备 也挺便利的
首先是装备UART的GPIO口
void UART1_GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
// Configure USART1_Tx as alternate push-pull
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOA, &GPIO_InitStructure);
// Configure USART1_Rx as input floating
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
GPIO_Init(GPIOA, &GPIO_InitStructure);
}
然后是装备串口参数