串口实验中len=USART_RX_STA&0x3FFF,这个是怎么计算出长度的啊
时间:10-02
整理:3721RD
点击:
向大家请教个问题,串口实验中len=USART_RX_STA&0x3FFF,这个是怎么计算出长度的啊,谢谢
把STA的最高两位去掉就是j接收长度了
因为每接受到一个字节 就STA++
楼上说的对~USART_RX_STA是一个接受状态寄存器,其bit15表示接收完成标志,bit14表示接收到0X0D,这是个接收的协议,如果不懂,记住就好了~
感谢楼上解释,受教了。
USART_RX_STA是一个变量可以是8位的,也可以是16位的。以16位为例它的含义://bit15, 接收完成标志//bit14, 接收到0x0d
//bit13~0, 接收到的有效字节数目
和0x3fff与运算就是低14位的运算,因为每接收到一个有效字节会自动加1.
感谢,解释得很好
