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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2200|回復(fù): 7
收起左側(cè)

無(wú)法讀取單片機(jī)P0口各個(gè)位的狀態(tài)

[復(fù)制鏈接]
ID:450037 發(fā)表于 2021-10-16 15:50 | 顯示全部樓層 |閱讀模式
1.PNG
如圖:按鍵是接到P0口上面的
捕獲.PNG

我這樣寫程序能讀出P0口的狀態(tài)嗎?

經(jīng)過(guò)開發(fā)板測(cè)試發(fā)現(xiàn),讀不出來(lái),請(qǐng)高手指點(diǎn)一下為什么?
回復(fù)

使用道具 舉報(bào)

ID:123289 發(fā)表于 2021-10-16 16:14 | 顯示全部樓層
不可能讀不到,無(wú)論是0,是1,總會(huì)讀到一個(gè)值的。怎么能說(shuō)讀不到呢?
回復(fù)

使用道具 舉報(bào)

ID:964308 發(fā)表于 2021-10-16 18:43 | 顯示全部樓層
這種4x4矩陣鍵盤好像不能直接讀數(shù)據(jù),需要逐行掃描,先把掃描行置0,然后檢測(cè)按鍵,看看哪個(gè)列為0,才能判斷第幾行第幾列,應(yīng)該是這樣的
回復(fù)

使用道具 舉報(bào)

ID:419909 發(fā)表于 2021-10-16 19:03 | 顯示全部樓層
這個(gè)讀不了的
試試下面的:
switch(P0|0x00)
回復(fù)

使用道具 舉報(bào)

ID:94031 發(fā)表于 2021-10-16 19:27 | 顯示全部樓層
給個(gè)參考:

void Getch ( )        //取鍵值函數(shù)
{
        unsigned char X,Y,Z;
        P0=0x0f; //先對(duì)P0 置數(shù) 行掃描
        if(P0!=0x0f) //判斷是否有鍵按下
        {
                delay10ms(); //延時(shí),軟件去干擾
                if(P0!=0x0f) //確認(rèn)按鍵按下
                {
                                X=P0; //保存行掃描時(shí)有鍵按下時(shí)狀態(tài)
                                P0=0xf0; //列掃描
                                Y=P0;    //保存列掃描時(shí)有鍵按下時(shí)狀態(tài)
                                Z=X|Y; //取出鍵值
               
                                switch ( Z ) //判斷鍵值(那一個(gè)鍵按下)
                                {
                                        case 0xee: k=0; break; //對(duì)鍵值賦值
                                        case 0xed: k=1; break;
                                        case 0xeb: k=2; break;
                                        case 0xe7: k=3; break;
                                        case 0xde: k=4; break;
                                        case 0xdd: k=5; break;
                                        case 0xdb: k=6; break;
                                        case 0xd7: k=7; break;
                                        case 0xbe: k=8; break;
                                        case 0xbd: k=9; break;
                                        case 0xbb: k=10;break;
                                        case 0xb7: k=11;break;
                                        case 0x7e: k=12;break;
                                        case 0x7d: k=13;break;
                                        case 0x7b: k=14;break;
                                        case 0x77: k=15;break;
                                }
                        }
                }
}
回復(fù)

使用道具 舉報(bào)

ID:450037 發(fā)表于 2021-10-18 08:06 | 顯示全部樓層
yzwzfyz 發(fā)表于 2021-10-16 16:14
不可能讀不到,無(wú)論是0,是1,總會(huì)讀到一個(gè)值的。怎么能說(shuō)讀不到呢?

就讀不了,你說(shuō)奇怪不
是不是跟單片機(jī)掃描有關(guān)系
回復(fù)

使用道具 舉報(bào)

ID:450037 發(fā)表于 2021-10-18 08:09 | 顯示全部樓層
dzc3458 發(fā)表于 2021-10-16 18:43
這種4x4矩陣鍵盤好像不能直接讀數(shù)據(jù),需要逐行掃描,先把掃描行置0,然后檢測(cè)按鍵,看看哪個(gè)列為0,才能判 ...

確實(shí)是不能直接讀數(shù)據(jù),但是覺得不應(yīng)該啊,為什么會(huì)讀取不了數(shù)據(jù)呢
回復(fù)

使用道具 舉報(bào)

ID:450037 發(fā)表于 2021-10-18 10:38 | 顯示全部樓層
xuyaqi 發(fā)表于 2021-10-16 19:27
給個(gè)參考:

void Getch ( )        //取鍵值函數(shù)

也不行,但是可以讀取出行的數(shù)據(jù),比如,第一行,程序顯示01111111,第二行10111111,第三行11011111第四行就是11101111。但是具體哪個(gè)按鍵按下去的,它反應(yīng)不出來(lái),怎么回事啊
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: www.黄网 | 日韩福利电影 | 91极品欧美视频 | 精品美女| 国产精品一区在线观看 | 国产网站在线播放 | 91精品国产91久久久久久最新 | 久久久女女女女999久久 | 91免费观看 | 色久五月| 99精品电影| 最新av片| 999免费观看视频 | av网站在线免费观看 | 九九福利| 国产日屁| 日韩三区在线 | 亚洲色欧美另类 | 欧美三级在线 | 五月天婷婷狠狠 | 国产成人精品免费视频大全最热 | 91看片视频| 欧美精品久久久久 | 成人乱人乱一区二区三区软件 | 中文字幕国产精品视频 | 国产成人亚洲精品自产在线 | 久久久精品一区二区 | 成年女人免费v片 | 中国一级特黄真人毛片免费观看 | 亚洲在线 | 中文字幕第一页在线 | 九色视频网站 | 国产精品视频在线观看 | 国产一区二区在线免费 | 精品久久一区二区三区 | 国产精品一区在线观看 | 天天干狠狠操 | 超碰日韩| 日本久久视频 | 午夜丁香视频在线观看 | 国产久 |