当前位置:首页>科技>正文

stm32串口中断接收问题----问题是,接收不到输入数据。 stm32串口接收数据问题

2023-05-29 07:53:05 互联网 未知 科技

 stm32串口中断接收问题----问题是,接收不到输入数据。 stm32串口接收数据问题

stm32串口中断接收问题----问题是,接收不到输入数据。

程序思路是这样的,进入中断后:
接收陀螺仪的数据,如果收到的第一个字节不是0x55,就不接收。。此时counter是不增加的。。

如果接收到的第一个字节是0x55,counter自增,收到的数据暂存至 Temp。。。
当 counter自增到11时,将Temp收到的数据存至Re_buf,同时counter清零,sign置1

第一行的意思是 表示 如果接收寄存器非空,即有数据,那么判断为接收中断
第五行 是跳出中断

stm32串口接收数据问题

试试定义flag变量时使用volatile,这个变量在中断和主程序中都是用了,例如
volatile uint8_t flag=0中断程序所在文件

extern volatile uint8_t flag 上述应该不是主要原因,因为两个led灯都亮了,说明进入了串口接收中断,使flag=1,
可以这样,把中断里关于led的操作都注释掉,没意义时间太短,这样没接受到数据led全灭,接收到数据led全亮

随便看看