[其它应用] 关于单片机的双机通信程序编写的问题,希望得到各位的帮助,多谢了!!!

[复制链接]
 楼主| 两只袜子 发表于 2024-10-5 20:09 | 显示全部楼层 |阅读模式
想请教下高人,我做了个双机通信,甲机进行AD转换并传送数据给乙机进行处理,而乙机接收并做键盘扫描。问题是乙机数据接收到但键盘的键值无法显示出来,扫健的程序我做成了中断,单独进行按键显示是成功的,程序没问题。下面是我的乙机接收端的程序,我放在主程序里,这个程序我单独做接收数据然后显示是没问题的,想请教下各位,键盘显示display()这个子程序该放哪好,或是程序该如何修改,卡在这里好久了,希望各位帮个忙,多谢了!
        TMOD=0x20;
        TH1=0xfd;
        TL1=0xfd;
        SCON=0x50;
        PCON=0x00;
        TR1=1;
        while(1)
        {      
                do{        while(!RI);
                        RI=0;
                  }
                while(SBUF != 0x01);
               
                do{        SBUF=0x02;
                        while(!TI);
                        TI=0;
                        while(!RI);
                        RI=0;
                       
                        dat=SBUF;

                        while(!RI);
                        RI=0;
                  }
                while(SBUF != 0xff);
                SBUF=0xff;
                while(!TI);
                TI=0;
      
                display(shu);
                delay(10);
          }
probedog 发表于 2024-10-8 15:48 | 显示全部楼层
串口接收和键盘扫描的中断优先级设置是否正确。
laocuo1142 发表于 2024-10-8 19:00 | 显示全部楼层
使用全局变量或结构体来共享串口接收的数据和键盘扫描的结果。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2122

主题

8118

帖子

11

粉丝
快速回复 在线客服 返回列表 返回顶部