假期备战蓝桥杯stm32学习笔记(二)

串口通信(USART)

利用串口可以帮我们调试程序、、

 

串口的通信协议: 要配置串口通信, 至少要设置“字长”(一次传送的数据长度)、“波特率”(每秒钟传送二进制数据的位数)、“校验位”、

 

串口的时钟源经过USARTDIV分频后作为发送器时钟及接收器时钟,控制发送和接收的时序。

 假期备战蓝桥杯stm32学习笔记(二)_第1张图片

 

基本上所有外设都有以下几类寄存器:

1.控制寄存器xxx_CRControl/Configuration Register这类寄存器是用来配置、控制相应外设的工作方式的。如GPIOx_CLRGPIOx_CHRAPIO_EXTICR1~APIOEXTICR4,串口的USART_CR1~USART_CR3等。

2.数据寄存器xxx_DR (Data Register) : 这类寄存器主要是存储了外设进行输出输入的数据。如GPIOx_IDRGPIOx_ODRUSART_DR等。

3.状态寄存器xxx_SR(Status Register): 这类寄存器主要存储了当前外设的运行状态,主要为一些标志位。如USART_SRADC_SR等。

 

初始化时候用的各类xxx_InitTypeDef.这里面的控制参数就是与相应外设的控制寄存器xxx_CR相对应。

对外设的应用,一般涉及其输入和输出数据,如GPIO的输入输出函数:GPIO_ReadOutputDataBit()GPIO_ReadInputData()GPIO_SetBits();

还有USART的收发数据函数:USART_ReceiveData()、USART_SendData(),

这些函数控制相应外设数据寄存器xxx_DR.

 

当外设完成了某些工作或出现某些状态的时候, 汇出发一些事件,这些时间会在状态寄存器SR中, 以不同的寄存器未来记录。这些寄存器为成为相应的事件标志位。

 

外设都有xxx_Cmd()函数,用来使能外设。

你可能感兴趣的:(寒假学习笔记)