在用单片机接受串口数据的时候,第一位是0x0A
Posted 邓疯子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在用单片机接受串口数据的时候,第一位是0x0A相关的知识,希望对你有一定的参考价值。
unsigned char data len=0; //命令字符串长度
if(RI) //如果数据已经接收完,即RI=1
{
RI=0; //对RI进行清零
cmd_buf[counter] = SBUF; //把收到的数据赋值给变量(注意接收的写法)
}
if(cmd_buf[counter]==0x0D) //如果串口输入回车,那么命令结束
{
cmd_buf[counter]=‘\0‘;
len=counter-1;
counter = 0;
flag=1;
}
else
counter = counter+1;
这样得到的cmd_buff的hex文件,第一位是0x0A,而文本文件中不会显示出来。
但是如果要做比较的话,要注意这个首位的影响。
比如接收到的文本是ABCD
要比较的字符串是"ABCD",
那么应该用cmd_buff[1]去和字符串的第0位去比较。
以上是关于在用单片机接受串口数据的时候,第一位是0x0A的主要内容,如果未能解决你的问题,请参考以下文章