herofish 发表于 2012-12-14 14:42:20

c8051F340怎么接收一串数据?

c8051F340怎么接收一串数据?数据由PC上的串口助手发送,波特率19200
我的串口接收中断函数如下,8个字节的数据,一个一个的发,接收正常,但是8个数据一次全发给单片机,接收到数据就错了,要正常一次接收8字节该怎么整呢?

      if(RI0)                                        //接收中断
        {
                RI0 = 0;                                //清接收标志位
                rx_buf = SBUF0;                //保存接收到的数据
                if(i == 8)                                   //一帧数据收完了?
                {
                       i = 0;
                        rev_xbit = 1;              //置接收标志   
                }
        }

hongguan 发表于 2013-1-21 13:51:28

      if(RI0)                                        //接收中断
          {
                RI0 = 0;                              //清接收标志位
                rx_buf = SBUF0;                //保存接收到的数据
                if(i == 8)                                 //一帧数据收完了?
                {
                         i = 0;
                        rev_xbit = 1;            //置接收标志   
                }
          i++;
          }

试过没有?

amazing030 发表于 2013-1-21 14:03:42

你i是什么量?全局还是静态
页: [1]
查看完整版本: c8051F340怎么接收一串数据?