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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2983|回復: 5
打印 上一主題 下一主題
收起左側

單片機檢測按鍵狀態程序的請教

[復制鏈接]
跳轉到指定樓層
樓主
大家好,還是我,之前的問題已經解決了,現在我來問問P0&0x0f  這種代碼,這個我明白是檢測電平變化,但是我自己不懂得該怎么寫,就是面對一個不熟悉的單片機時候,要怎么寫這種類型的控制,我用KEY=P3_5這種寫法然后if(key==0)來檢測,一個個控制LED,發現很繁瑣,所以想要學會這種比較簡單的檢測方式,請大家詳細說明一下這個的用法的全部好嗎?(ps:題主會進制)




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:275826 發表于 2019-9-8 17:25 | 只看該作者
不同類型按鍵要采用不同的檢測方法,你表達不清楚
回復

使用道具 舉報

板凳
ID:601868 發表于 2019-9-8 20:24 | 只看該作者
這個其實還是比較簡單的。主要還是你沒有習慣這種方法。
按照lz的意思,應該是這樣的:
key = P0;
key = key & 0x0f;
然后是
if(key != 0x0f)
{
//執行語句
}

意思大致是:key先存儲P0口的高低電平狀態,然后和0x0f做“與”運算(不一定非要是0x0f)。然后得到“與”運算之后的結果,“與”運算的結果如果和0x0f不一致,則表明P0口的數據發生了變化,即按鍵按下之后,改變了P0的電平狀態。如果數據一致,則表示P0電平未發生變化,按鍵沒有被按下。

舉個栗子:
若按鍵在P0.3,P0初始為0x0f,(0000 0111 b),按下按鍵之后,會變成0x07(0000 0111b),
若按鍵按下0x07(0000 0111) & 0x0f(0000 1111) = 0x07(0000 0111)不等于0x0f
此時,key的值會賦值給P2。
回復

使用道具 舉報

地板
ID:462827 發表于 2019-9-8 22:17 | 只看該作者
學到矩陣按鍵的掃描時,最好能結合仿真軟件比如proteus來看一下引腳的電平實際變化,會更容易理解的。
回復

使用道具 舉報

5#
ID:123289 發表于 2019-9-9 01:12 | 只看該作者
用腦子想一下,你要區分三個不同的按鍵,即使用沒有時序,它也有8種按鍵組合方式(不按、單按、雙按、三按),你想如何簡單呢?
簡單與復雜與你的設計要求相關。
回復

使用道具 舉報

6#
ID:65956 發表于 2019-9-9 08:27 | 只看該作者
P0&0x0f 這個只是表達屏蔽高4位,只取低4位作狀態判斷,也就是按鍵是接在低4位,用每次對應低4位狀態值變化而判斷即可
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: www.xxxx欧美 | 久久久免费毛片 | 成人在线视频看看 | 国产欧美综合在线 | a在线视频 | 精品一区二区三区在线观看国产 | 性色在线 | 欧美性猛交一区二区三区精品 | 久草在线在线精品观看 | 激情网站在线观看 | 久久毛片 | 久久一区视频 | 麻豆久久久9性大片 | 韩日在线 | 羞羞视频网站在线观看 | 欧美日韩在线免费观看 | 成在线人视频免费视频 | 综合伊人 | 日韩不卡一区二区 | 成人黄色三级毛片 | 亚洲精品电影在线观看 | 一级毛片免费 | 国产日韩欧美一区二区 | 中文字幕免费在线 | 国产精品日韩高清伦字幕搜索 | 日本久久久久久 | 国产九九精品视频 | 精品视频一区二区三区在线观看 | 日韩a在线观看 | 午夜影院视频 | 欧美成人一区二区 | 精品久久影院 | 国产精品久久久久无码av | 久久久精品一区二区 | 国产精品中文字幕在线 | 亚洲字幕在线观看 | 国产亚洲精品美女久久久久久久久久 | 婷婷综合激情 | 亚洲福利在线观看 | 国产一级大片 | 天天夜天天操 |