c8051F340怎么接收一串数据?
时间:10-02
整理:3721RD
点击:
c8051F340怎么接收一串数据?数据由PC上的串口助手发送,波特率19200
我的串口接收中断函数如下,8个字节的数据,一个一个的发,接收正常,但是8个数据一次全发给单片机,接收到数据就错了,要正常一次接收8字节该怎么整呢?
if(RI0) //接收中断
{
RI0 = 0; //清接收标志位
rx_buf[i++] = SBUF0; //保存接收到的数据
if(i == 8) //一帧数据收完了?
{
i = 0;
rev_xbit = 1; //置接收标志
}
}
我的串口接收中断函数如下,8个字节的数据,一个一个的发,接收正常,但是8个数据一次全发给单片机,接收到数据就错了,要正常一次接收8字节该怎么整呢?
if(RI0) //接收中断
{
RI0 = 0; //清接收标志位
rx_buf[i++] = SBUF0; //保存接收到的数据
if(i == 8) //一帧数据收完了?
{
i = 0;
rev_xbit = 1; //置接收标志
}
}
i 是否初始化成0了?
已经解决了,用了9位的UART方式,没注意到!
i是局部的静态变量,呵呵!
