kylew
kylew
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 107 個(gè)
工控威望: 214 點(diǎn)
下載積分: 534 分
在線時(shí)間: 208(小時(shí))
注冊時(shí)間: 2010-08-08
最后登錄: 2024-11-30
查看kylew的 主題 / 回貼
樓主  發(fā)表于: 2017-05-13 10:04
要求在觸摸屏上做50到100個(gè)開關(guān)吧,同時(shí)只能接通一個(gè)開關(guān),
比如當(dāng)前有一個(gè)開關(guān)置位,按下另一個(gè)開關(guān)時(shí)當(dāng)前開關(guān)復(fù)位,按下的開關(guān)置位。
怎樣才能簡單點(diǎn)呢?我做的功能是有了,就是寫的程序太繁雜了!
sjbandmm
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 237 個(gè)
工控威望: 407 點(diǎn)
下載積分: 987 分
在線時(shí)間: 168(小時(shí))
注冊時(shí)間: 2008-08-23
最后登錄: 2024-11-19
查看sjbandmm的 主題 / 回貼
1樓  發(fā)表于: 2017-05-13 10:54
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為開關(guān),共96個(gè)D0統(tǒng)計(jì)按鈕按下個(gè)數(shù)d10-d15保存當(dāng)前按鈕狀態(tài)當(dāng)按下一個(gè)按鈕時(shí)直接把所有按鈕狀態(tài)保存到d2-d7中當(dāng)按下2個(gè)按鈕時(shí),將當(dāng)前按鈕狀態(tài)與原始狀態(tài)異或,得到當(dāng)前狀態(tài),其他狀態(tài)歸零并將異或得到的值傳回到m0-m95正常時(shí)不會(huì)超過2個(gè)按鈕按下,但為了防止意外,超過2個(gè)按鈕就將所有按鈕復(fù)位

我寫的復(fù)雜了,其實(shí)只要保存當(dāng)前狀態(tài),下個(gè)循環(huán)時(shí)間檢測一下本次狀態(tài)與上次狀態(tài)是否相同,如果不同執(zhí)行一次異或就可以,然后再將異或結(jié)果返回到當(dāng)前m就可以了。
[ 此帖被sjbandmm在2017-05-13 11:34重新編輯 ]
kylew
kylew
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 107 個(gè)
工控威望: 214 點(diǎn)
下載積分: 534 分
在線時(shí)間: 208(小時(shí))
注冊時(shí)間: 2010-08-08
最后登錄: 2024-11-30
查看kylew的 主題 / 回貼
2樓  發(fā)表于: 2017-05-13 11:00
非常感謝!還是這里高手多!
sjbandmm
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 237 個(gè)
工控威望: 407 點(diǎn)
下載積分: 987 分
在線時(shí)間: 168(小時(shí))
注冊時(shí)間: 2008-08-23
最后登錄: 2024-11-19
查看sjbandmm的 主題 / 回貼
3樓  發(fā)表于: 2017-05-13 11:09
這只是我一個(gè)方法,請有其他思路的也說下自己的想法,大家一起學(xué)習(xí)!
周家大少
辛辛苦苦也不過是為了養(yǎng)家糊口!
級別: 工控俠客
精華主題: 0
發(fā)帖數(shù)量: 1160 個(gè)
工控威望: 3078 點(diǎn)
下載積分: 2003 分
在線時(shí)間: 151(小時(shí))
注冊時(shí)間: 2015-09-10
最后登錄: 2024-12-18
查看周家大少的 主題 / 回貼
4樓  發(fā)表于: 2017-05-13 11:51
其實(shí)還有另一個(gè)方向,開關(guān)開狀態(tài)為1,關(guān)狀態(tài)為0,只要判斷所有開關(guān)的1的個(gè)數(shù)只能小于等于1,大于1時(shí)就將后面的狀態(tài)來覆蓋前面的狀態(tài)
本帖最近評分記錄:
  • 下載積分:+1(蒲城風(fēng)信子) 真是好人!
  • QQ:611369538
    微信:ZMF2KXL
    kylew
    kylew
    級別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 107 個(gè)
    工控威望: 214 點(diǎn)
    下載積分: 534 分
    在線時(shí)間: 208(小時(shí))
    注冊時(shí)間: 2010-08-08
    最后登錄: 2024-11-30
    查看kylew的 主題 / 回貼
    5樓  發(fā)表于: 2017-05-13 11:53
    樓上的方法我用了,只是要按2次按鈕!
    周家大少
    辛辛苦苦也不過是為了養(yǎng)家糊口!
    級別: 工控俠客
    精華主題: 0
    發(fā)帖數(shù)量: 1160 個(gè)
    工控威望: 3078 點(diǎn)
    下載積分: 2003 分
    在線時(shí)間: 151(小時(shí))
    注冊時(shí)間: 2015-09-10
    最后登錄: 2024-12-18
    查看周家大少的 主題 / 回貼
    6樓  發(fā)表于: 2017-05-13 11:56
    你開關(guān)的設(shè)定要設(shè)置成按下就判斷,松開就輸出這樣才不用按兩下
    QQ:611369538
    微信:ZMF2KXL
    kylew
    kylew
    級別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 107 個(gè)
    工控威望: 214 點(diǎn)
    下載積分: 534 分
    在線時(shí)間: 208(小時(shí))
    注冊時(shí)間: 2010-08-08
    最后登錄: 2024-11-30
    查看kylew的 主題 / 回貼
    7樓  發(fā)表于: 2017-05-13 12:01
    這樣的話100個(gè)按鈕就要寫100條置位指令吧!
    gzcjx555
    QQ  296686949
    級別: 工控俠客
    精華主題: 0
    發(fā)帖數(shù)量: 508 個(gè)
    工控威望: 4195 點(diǎn)
    下載積分: 1563 分
    在線時(shí)間: 354(小時(shí))
    注冊時(shí)間: 2014-02-15
    最后登錄: 2024-12-24
    查看gzcjx555的 主題 / 回貼
    8樓  發(fā)表于: 2017-05-14 20:21
    圖片:
    M0到M255是按鈕輸入,M1000到M1255是輸出,總共255個(gè)按鈕,當(dāng)沒有任何輸入的生活,M1000一直都是輸出,但是可以不管,你可以不使用M1000,我敢保證肯定能過使用,不服來辯。
    聯(lián)系電話15071699246,QQ296686949
    kylew
    kylew
    級別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 107 個(gè)
    工控威望: 214 點(diǎn)
    下載積分: 534 分
    在線時(shí)間: 208(小時(shí))
    注冊時(shí)間: 2010-08-08
    最后登錄: 2024-11-30
    查看kylew的 主題 / 回貼
    9樓  發(fā)表于: 2017-05-16 11:44
    樓上這個(gè)程序的思路挺不錯(cuò),復(fù)位前后,保留當(dāng)前!
    sjbandmm
    級別: 略有小成
    精華主題: 0
    發(fā)帖數(shù)量: 237 個(gè)
    工控威望: 407 點(diǎn)
    下載積分: 987 分
    在線時(shí)間: 168(小時(shí))
    注冊時(shí)間: 2008-08-23
    最后登錄: 2024-11-19
    查看sjbandmm的 主題 / 回貼
    10樓  發(fā)表于: 2017-05-16 22:27
    8樓的思路不錯(cuò),就是還要完善下,某個(gè)按鈕按下后就不能自復(fù)位,必須要用別的按鈕復(fù)位。
    gzcjx555
    QQ  296686949
    級別: 工控俠客
    精華主題: 0
    發(fā)帖數(shù)量: 508 個(gè)
    工控威望: 4195 點(diǎn)
    下載積分: 1563 分
    在線時(shí)間: 354(小時(shí))
    注冊時(shí)間: 2014-02-15
    最后登錄: 2024-12-24
    查看gzcjx555的 主題 / 回貼
    11樓  發(fā)表于: 2017-05-17 19:39
    按哪一個(gè)按鈕不能夠復(fù)位,可以說具體一點(diǎn)嗎?
    聯(lián)系電話15071699246,QQ296686949