串口中断进行传输数组数据和字符串

          这是一个大致框架,首先我们打开串口,然后将u16类型的数据放入u8类型的rec_data里。看下后面绿字备注,可以知道‘S’'E'分别代表协议中的开始与结束符,最下面那个判断是说传输的数据字节在0~UART3_REC_NUM之间时执行。

也就是说我们正常的执行顺序为if里的函数,再进行第二个else if 里的复合语句,最后进行第一个else if里的复合语句。

串口中断进行传输数组数据和字符串_第1张图片

下面,我释放出第一个和第三个复合语句

第一个里的复合语句,我们为串口一次中断里接受的字节数进行累加

第三个复合语句里,我们将rec_data里数据放入receive_str[uart_byte_count-1]

串口中断进行传输数组数据和字符串_第2张图片

最后我们将执行第二个复合语句中的代码

我们里面有俩个控制的语句  if(strcmp(A,B)==0)         LED0=0; //就是说假如A,B相同就可执行下面的语句

这个‘A’就是将A这个字符串转为ASCLL码,然后进行判断。

串口中断进行传输数组数据和字符串_第3张图片

你可能感兴趣的:(STM32,---------)