久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 哪位高手幫我看看這個4*4矩陣鍵掃描函數(shù)謝謝 [打印本頁]

作者: banti27334066    時間: 2009-7-31 17:22
標(biāo)題: 哪位高手幫我看看這個4*4矩陣鍵掃描函數(shù)謝謝
 

4*4矩陣鍵掃描函數(shù),我有一句話不明白,

麻哪位給我解釋一下多謝

Uchar kbscan(void)

Uchar sccode,recode

P1=0xf0

If(p1&0xf0)!=0xf0

{sccode=0xfe

While((sccode&0x10)!=0)這句是什么意思???

{p1=sccode;

If((p1&0xf0)!=0xf0)

{recode=(p1&0xf0)|0xf0)

Return((~sccode)+(~recode))

}

Else

Sccode=(sccode<<1)|0x01}}}return(0)}


作者: any_zhou    時間: 2009-7-31 22:56

這一句放在這里的意思是:當(dāng)sccode.4=1時,執(zhí)行while的內(nèi)嵌語句,當(dāng)sccode.4=0時,結(jié)束循環(huán)!


作者: banti27334066    時間: 2009-8-1 10:40

謝謝剛才的回答,p1.0-p1.3是行掃描輸出線p1.4-p1.7是列檢測輸入線,將第一行置0,列線也為0這個條件怎么判斷,sccode。4是列線判斷它有什么用


作者: any_zhou    時間: 2009-8-1 17:35

將第一行置0,則相當(dāng)于第一行所有按鍵的公共端接地,這時你就可以通過檢測P1.4-P1.7的信號來確定是第一行的哪個按鍵按下。sccode.4應(yīng)該是對應(yīng)與P1.4的吧,
判斷他可以確定它所對應(yīng)的按鍵是否按下,如果sccode.4=0,則按鍵按下!


作者: banti27334066    時間: 2009-8-5 10:22
p1.4是第一列呀,而且是是固定的,那另外三列如何檢測呢?我想把列信號輸入來比對,是這個意思吧它的p1。4我不明白難道它是列信號嗎

作者: any_zhou    時間: 2009-8-5 21:28

你讀取P1口的信號,按下相應(yīng)的按鍵應(yīng)該只有一個值與之相對應(yīng)!譬如:你置第一行為0,如果你按下的按鍵是P1.4所接的按鍵,那么,P1口的數(shù)值應(yīng)該是01110111即0x77。
如果你要檢測第一列其他行的按鍵,那么你只要將對應(yīng)行置0即可!別忘了,每一次只能有一行為0,這樣行與列的交點(diǎn)就只有一個,那個點(diǎn)就是你要檢測的按鍵!
P1.0-P1.3是需要你來設(shè)置的位,它代表你選通的行;而P1.4-P1.7就是你用來檢測按鍵用的位,它代表你所按下的按鍵所在的列!
知道按鍵在第幾行第幾列了,你不就知道是哪個按鍵了嗎!!!






歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 成人视屏在线观看 | 久久久久亚洲精品 | a天堂在线| 欧美日韩国产在线观看 | 一区二区三区av | 欧美日韩三级 | 欧美高清视频一区 | www亚洲精品 | 国产一级一级国产 | 在线91 | 欧美1区2区 | 日日日操| 欧美精品福利视频 | 91精品久久久久久久99 | 欧美亚洲国产日韩 | 欧美一卡二卡在线观看 | 激情六月天 | 99热精品国产| 香蕉久久a毛片 | 精品国产欧美日韩不卡在线观看 | 91传媒在线观看 | 色视频网站在线观看 | 黑人性hd | 亚洲一二三视频 | 国产a视频 | 久草新在线 | 欧美 日韩 视频 | 99久久成人| 久久久久久黄 | 日韩av啪啪网站大全免费观看 | 成人午夜网站 | 国产 日韩 欧美 在线 | 91精品国产乱码久久久久久久久 | 国产区一区 | 日韩精品一区二区在线 | 欧美乱大交xxxxx另类电影 | 日韩精品1区2区3区 成人黄页在线观看 | 亚洲综合一区二区三区 | 亚洲精品一区二三区不卡 | 精精国产xxxx视频在线野外 | 91福利在线观看视频 |