先问清楚一下,X0和X1是不是外接按钮,或者是触摸屏的按钮。如果是,下面的方法有效。如果不是,就另外再说。
第1步,先执行RS指令,且在发送和接收期间要一直执行!例如:X=1,SET M10,M10接RS指令。
第2步,用边沿指令把数据传送给发送区。例如:M10的上升沿执行。
第3步,用边沿触发指令使M8122=1,发送完数据后M8122会自动复位。例如:M10上升沿的最后一行执行set m8122。
第4步,收到数据后,M8123=1。用M8123=1这个条件使RS指令和M8123复位。例如:M8123=1,执行RST M10和RST M8123。
第5步,读取RS指令接收区数据。
你的错误在于:
1、用按钮加定时器执行RS指令,很别扭。换句话说,你得一直按着按钮不放执行RS指令。RS指令的复位靠M8123,因为M8123=1表示收发工作的完成。
2、不能一直使8122置=1,M4=1的时间超过100ms。
3、没有M8123的复位指令。M8123不复位可能会影响RS指令的执行,以及M8122的置1操作。
[ 此帖被zhangqi_1234在2018-02-27 19:20重新编辑 ]