先問清楚一下,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重新編輯 ]