单片机学习小组
直播中

潘务单

7年用户 201经验值
私信 关注

为什么串口通信的程序RI=0前后效果不一样?

if(RI)
                {        
                        dat=SBUF;
                        RI=0;
                        switch (dat)
                        {
                                case '1'2=0xfe;break;
                                case '2'2=0xfb;break;
                                default2=0xff;break;
                        }
                                 
               
                        
和第二个程序
if(RI)
                {        
                        dat=SBUF;
                        
                        switch (dat)
                        {
                                case '1'2=0xfe;break;
                                case '2'2=0xfb;break;
                                default2=0xff;break;
                        }
                                 
                        RI=0;
为什么两个实现的效果不一样,第一个第一次发一个指令就执行,第二个程序第一次发指令得发两遍才能执行?有哪个大神指教下?

回帖(1)

苏醒

2019-9-2 08:20:57
看不出区别。
你观察到的现象也许只是假象。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分