|
發布時間: 2024-6-23 14:16
正文摘要:請教按圖,16個獨立按鍵控制16個LED燈,實現互鎖功能,按下K1按鍵后放開LED1點亮,按下K2按鍵后放開LED2點亮LED1熄滅,按下任意一個按鍵對應的LED燈點亮,原先點亮的LED熄滅的功能程序怎么寫,小白一個,辛苦了 |
我由于懶得去畫電路圖,通常回復都是隨手拿個電路就可以寫示例的,然而,也通常學人不關注自己提問的部分,卻常常追問與提問無關的部分,應該看我鼠標指示的地方就是提問有關的部分,其他部分不用關注.
|
QDMLIT 發表于 2024-6-24 16:18 簡單,把清零添加到對應的地方即可,如: if(P1!=255&&++my==0){P2=255;ls=P1;P0=ls;} if(P3!=255&&++my==0){P0=255;ls=P3;P2=ls;} 不用就清零,應該想得到,我因為寫示例,讓學人明白道理即可,其余的該是學人自己理解并靈活應用. |
QDMLIT 發表于 2024-6-24 22:28 我打錯了13行,已修正
|
xianfajushi 發表于 2024-6-23 19:29 公共端是接地的,圖畫錯了 |
xiaobendan001 發表于 2024-6-23 15:30 按鍵另一端是接地的,圖畫錯了 |
|
while(1){ if(~P1||~P3){P0=P1;P2=P3;} } 不好意思,打錯了位置了,軟件模擬了一下,應該可以達到你要的 |
| 首先按鍵公共點要接地才是獨立按鍵電路,控制很簡單,P1賦值給P0,P3賦值給P2即可,如P1的1引腳按下為低電平,那么,這時讀取P1的值是1,用1賦值給P0即可,余類推。 |
| 點亮之前先把所有燈滅了,怎么說就怎么寫呀 |
|
所有按鍵的COM點是懸空的。這怎么搞? while(1){ if(~P1||~P3){P0=P1;P3=P2;} } 這樣可以不 |