380091044 发表于 2023-11-13 15:26:06

(TX1_read != RX1_write)为真,收到过数据,是怎么理解的?| 已解决

在串口1和串口2同时中断收发数据例程中               
          if((TX1_read != RX1_write) && !B_TX1_Busy)      //收到过数据, 并且发送空闲
                {
                        B_TX1_Busy = 1;//标志发送忙
                        SBUF = RX1_Buffer;//发一个字节;
                if(++TX1_read >= RX1_Length)      TX1_read = 0;//避免溢出处理
                }

(TX1_read != RX1_write)为真,收到过数据,是怎么理解的?

乘风飞扬 发表于 2023-11-13 18:20:07

例程是收到一个数据,然后就发送出去。
当接收数据的个数与发送出去的个数不相等时,说明有收到数据还没有发送。

380091044 发表于 2023-11-14 08:52:32

乘风飞扬 发表于 2023-11-13 18:20
例程是收到一个数据,然后就发送出去。
当接收数据的个数与发送出去的个数不相等时,说明有收到数据还没有 ...

我深入研究了一下,是这样的,感谢指点
页: [1]
查看完整版本: (TX1_read != RX1_write)为真,收到过数据,是怎么理解的?| 已解决