kylew
kylew
級別: 略有小成
|
要求在觸摸屏上做50到100個開關吧,同時只能接通一個開關, 比如當前有一個開關置位,按下另一個開關時當前開關復位,按下的開關置位。 怎樣才能簡單點呢?我做的功能是有了,就是寫的程序太繁雜了! |
---|---|
|
sjbandmm
級別: 略有小成
|
LD SM400 MOV K0 Z0 MOV K0 D0 FOR K96 LD M0Z0 INC D0 LD SM400 INC Z0 NEXT LD SM400 BMOV K4M0 D10 K6 LD= D0 K1 BMOV K4M0 D2 K6 LD= D0 K2 BKXOR D10 D2 D20 K6 BMOV D20 K4M0 K6 LD> D0 K2 BKRST M0 K96 END m0-M95為開關,共96個D0統計按鈕按下個數d10-d15保存當前按鈕狀態當按下一個按鈕時直接把所有按鈕狀態保存到d2-d7中當按下2個按鈕時,將當前按鈕狀態與原始狀態異或,得到當前狀態,其他狀態歸零并將異或得到的值傳回到m0-m95正常時不會超過2個按鈕按下,但為了防止意外,超過2個按鈕就將所有按鈕復位 我寫的復雜了,其實只要保存當前狀態,下個循環時間檢測一下本次狀態與上次狀態是否相同,如果不同執行一次異或就可以,然后再將異或結果返回到當前m就可以了。 [ 此帖被sjbandmm在2017-05-13 11:34重新編輯 ] |
---|---|
|
周家大少
辛辛苦苦也不過是為了養家糊口!
級別: 工控俠客
|
其實還有另一個方向,開關開狀態為1,關狀態為0,只要判斷所有開關的1的個數只能小于等于1,大于1時就將后面的狀態來覆蓋前面的狀態 |
|
---|---|---|
本帖最近評分記錄:
|
周家大少
辛辛苦苦也不過是為了養家糊口!
級別: 工控俠客
|
你開關的設定要設置成按下就判斷,松開就輸出這樣才不用按兩下 |
|
---|---|---|
|
gzcjx555
QQ 296686949
級別: 工控俠客
|
圖片:
M0到M255是按鈕輸入,M1000到M1255是輸出,總共255個按鈕,當沒有任何輸入的生活,M1000一直都是輸出,但是可以不管,你可以不使用M1000,我敢保證肯定能過使用,不服來辯。 |
|
---|---|---|
|