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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3749|回復: 13
收起左側

單片機2路AD、多路AD做組合按鍵程序,如何實現呢?

[復制鏈接]
ID:731155 發表于 2021-12-22 21:39 | 顯示全部樓層 |閱讀模式
30黑幣
比如2路AD同時按下時,獲取到2路AD值怎么處理轉為定義的組合鍵。

最佳答案

查看完整內容

當ADC1=一個值,且ADC2=一個值,就執行對應條件
回復

使用道具 舉報

ID:339654 發表于 2021-12-22 21:39 | 顯示全部樓層
當ADC1=一個值,且ADC2=一個值,就執行對應條件
回復

使用道具 舉報

ID:213173 發表于 2021-12-23 06:34 | 顯示全部樓層
一般利用單路AD作多按鍵識別可以節省IO口,但不適合用于組合鍵。如2路AD同時按下,系統也得逐路讀取AD值,那么掃描結果無非是00 01 10 11四種狀態,由此判斷即可。多路AD作多按鍵識別不如直接讀IO口電平簡單可靠且顯得多此一舉。
回復

使用道具 舉報

ID:407019 發表于 2021-12-23 08:29 | 顯示全部樓層
如果是51單片機的話,那就定義一個全局變量,不同按鍵按下對應不同的地址命令數值,讀取函數依據命令來讀取不同的通道(以XPT2046為例,不同的通道分別對應不同的命令)

如果是STM32的化,Init初始化里面要多初始化幾個通道,按鍵按下的時候讀取函數的通道參數對應不同即可   這個是程序大概的思路
回復

使用道具 舉報

ID:731155 發表于 2021-12-23 10:18 | 顯示全部樓層
wulin 發表于 2021-12-23 06:34
一般利用單路AD作多按鍵識別可以節省IO口,但不適合用于組合鍵。如2路AD同時按下,系統也得逐路讀取AD值, ...

IO口要2個以上IO,2路AD可以有很多按鍵。
回復

使用道具 舉報

ID:116978 發表于 2021-12-23 10:27 | 顯示全部樓層
按下不同按鍵取不同AD值,考慮到誤差至少要相差1V左右。
回復

使用道具 舉報

ID:161164 發表于 2021-12-23 14:24 | 顯示全部樓層
hei51com 發表于 2021-12-23 10:18
IO口要2個以上IO,2路AD可以有很多按鍵。

單路AD已經可以有很多按鍵
可苦還要2路AD組合?
回復

使用道具 舉報

ID:624769 發表于 2021-12-23 15:05 | 顯示全部樓層
如果,你AD按鍵是并聯按鍵的話, 1路就能組合鍵了.   按照 并聯電阻計算公式只要每個按鍵電阻是倍率, 比如 1K,2K,4K,8K,  那么其中任意兩個,甚至3個,4個組合,都能產生 唯一的阻值, 根據阻值就能確切的知道哪幾個按鍵被按下,
回復

使用道具 舉報

ID:731155 發表于 2021-12-23 21:37 | 顯示全部樓層
lkc8210 發表于 2021-12-23 14:24
單路AD已經可以有很多按鍵
可苦還要2路AD組合?

單路AD不好做組合鍵,2路AD方便做組合鍵,
比如1路是key1,key2,key3,另一路是key4,key5,key6,
組合鍵,就有key1+key4,key2+key5,key3+key6,key2+key4.....
回復

使用道具 舉報

ID:624769 發表于 2021-12-23 22:08 | 顯示全部樓層
hei51com 發表于 2021-12-23 21:37
單路AD不好做組合鍵,2路AD方便做組合鍵,
比如1路是key1,key2,key3,另一路是key4,key5,key6,
組合鍵 ...

在程序上,單路遠比兩路好做組合鍵,當然前提是并聯電阻按鍵。
比如按鍵: Key1, Key2, Key3, Key4
分別對應: 1K      2K      4K      8K
那么:  Key1+Key2  = 0.666K,   Key1+ Key3 = 0.75K     Key1+ Key4  = 0.8K
          Key2 + Key3 = 1.2K  Key2 + Key4 = 1.333K     Key3+Key4 =  1.715K
還可以三鍵組合: Key1 + Key2 + Key3 = 0.545K    Key1 + Key2 + Key4 = 0.571K
                         Key1 + Key3 + Key4 = 0.631K    Key2 + Key3 + Key4 = 0.923K

而不需要去寫 特殊的代碼, 因為你的組合鍵,對于程序而言就是一個不同阻值的新按鍵。
回復

使用道具 舉報

ID:213173 發表于 2021-12-24 06:22 | 顯示全部樓層
hei51com 發表于 2021-12-23 10:18
IO口要2個以上IO,2路AD可以有很多按鍵。

由于輕觸開關的固有缺陷,日久后接觸電阻增大且不穩定,AD多鍵識別誤碼率會逐漸提高,在關鍵設備設計中遭棄用。
回復

使用道具 舉報

ID:731155 發表于 2022-3-12 15:12 | 顯示全部樓層
wulin 發表于 2021-12-24 06:22
由于輕觸開關的固有缺陷,日久后接觸電阻增大且不穩定,AD多鍵識別誤碼率會逐漸提高,在關鍵設備設計中遭 ...

是的,GPIO 按鍵最穩定,但費IO或加成本
回復

使用道具 舉報

ID:47286 發表于 2022-3-12 19:50 | 顯示全部樓層
AD按鍵的雙按鍵鍵值寫起來比獨立和矩陣鍵盤麻煩的多 而且響應也會慢 因為最終出來的是鍵值 而人同時按2~3個按鍵的間隔遠大于只按1個按鍵 如果不設定更大的等待 最終鍵值就不對 但留更大等待 按1個鍵時反應又太遲鈍了 所以AD按鍵的優勢在于單一IO可以接很多獨立按鍵 但多按鍵同時操作的效果并不好 個人經驗 供樓主參考
回復

使用道具 舉報

ID:47286 發表于 2022-3-12 19:52 | 顯示全部樓層
wulin 發表于 2021-12-24 06:22
由于輕觸開關的固有缺陷,日久后接觸電阻增大且不穩定,AD多鍵識別誤碼率會逐漸提高,在關鍵設備設計中遭 ...

您這個提醒不錯 我也遇到了 在容錯方面 AD按鍵比獨立和矩陣按鍵差很多
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久精品这里精品 | 欧美精 | 欧美一区二区三区在线播放 | 亚洲精品一区二区在线 | 在线2区 | 国产中文一区二区三区 | 伊人久久麻豆 | 亚洲精品在线视频 | 亚洲在线一区二区 | 精品福利av导航 | 男女污网站 | 精品国产乱码久久久久久中文 | 高清国产一区二区 | 日韩亚洲视频 | 国产福利在线看 | 日本成人片在线观看 | 欧美日韩中文字幕 | 九九热在线视频观看这里只有精品 | 亚洲精品成人网 | 成人黄色网址大全 | 成人不卡视频 | 欧美中文一区 | 欧美vide| 国产美女在线看 | 日本不卡免费新一二三区 | 国产欧美综合在线 | 成人在线观看免费视频 | 二区av| av中文字幕在线观看 | 国产成人精品免费视频大全最热 | 久久精品久久久 | 中文字幕1区| 亚洲传媒在线 | 粉嫩一区二区三区四区公司1 | 国产高清在线观看 | 天天操,夜夜爽 | 欧美一级在线 | 成人av网站在线观看 | 91啪亚洲精品| 亚洲精品电影在线观看 | 日韩精品一区二区三区在线播放 |