访问串口与读写内存无差,串口将寄存器中的值通过数据线一位一位的传输出去
协议
设置波特率,数据位 115200 8 n 1
BSRR/CR
查询方式进行数据的发送与接收
(在一个while循环中判断状态,然后读取数据)
1、发送:数据传输寄存器TDR,自动的放到移位寄存器,自动的一位一位发送
数据是否被移动到移位寄存器看TXE寄存器,判断TDR是否空
移位寄存器中的值是否传输完成看TC寄存器;
2、接收:读串口数据
unsigned int *p=RDR的地址,然后取*p的值
状态分辨:RXNE(read data register not empty)
中断
中断类型
状态寄存器SR
常用的两个中断:1、TDR为空。2、RDR收到数据了
TXE中断:SR中的TXE=1时,发送中断,代表TDR寄存器为空时,发送一个中断?
FIFO
注:F103没有FIFO
避免不能马上读数据时,寄存器中的值被下一个数据覆盖;
用FIFO来存储多个字节进行缓冲