极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 24689|回复: 22

请问有没有直接把 I/O pin 转成 AD 的 chip?

[复制链接]
发表于 2015-11-9 09:36:49 | 显示全部楼层 |阅读模式
正在做一个小工具, 需要到 8 至 10 个键的输入.
如果每个键用一个 I/O, 就要用了 10 个 I/O.
如果用矩阵的方法, 也要用 7 个 (2x5 或 3x4).
如果用二进法的接线, 只需要 4个, 但就不能分辨同时按键.

初时准备用另一片 mini 接 I/O, 再用 I2C 回傅.  但总觉有点大材小用.

在网上看到一些 按键模块, 用 AD 输出, 只需一个 analog I/O, 价钱也只是十元八块.

我是硬小白一名, 对硬件完全不懂.  
不知是否有些简单的芯片, 可以把几个 I/O 用二进的方式, 合成一个 10bit 的 AD 输出.
例如
按下 第 1 个键就输出 1, 第 2 个就输出 2, 第 3 个就输出 4.
同时按下 1,2 就输出 3, 同时按下 1,3 就输出 5, ....

这样, 只用 1 个 10bit 的 analog 输入, 就可以连接上 10 个 I/O 键了.
如果没有 10 个 I/O 的, 5 个或以上的也可以, 这样也只需两块就可以做到了.

请问是否有类似的芯片可用?
回复

使用道具 举报

发表于 2015-11-9 09:55:20 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-9 10:22:13 | 显示全部楼层
eddiewwm 发表于 2015-11-9 09:55
可參考這個:
https://www.youtube.com/watch?v=-h-aeGyx7h4

唔該哂先.
我睇完都唔知佢點做既 (唔好意思, 硬件既野我真係好白痴既), 只係大約知道佢用控制 voltage 作為輸出去分辦唔同既 key ...
同時按兩個 key 可能分唔出, 因為我有需要做類似既野, 係怕唔小心按錯, 所以某D指令想用 key 既 combo 去發出.
不過, 都好有興趣想知佢點做...但, 真係睇唔掂.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-9 10:30:15 | 显示全部楼层
eddiewwm 发表于 2015-11-9 09:55
可參考這個:
https://www.youtube.com/watch?v=-h-aeGyx7h4

想問多樣野, 我見 佢話:  
I am now using I2C
much easier :-))


我諗佢應該唔會好似我咁傻仔, 用多塊 mini 去做 I2C 轉換的.
係咪即係話有 D chip 可以簡單咁接收幾個 I/O signal, 然後可以比其他 device 經 I2C 連線可讀取?
(唔好意思, 在公司唔可以開喇叭, 唔知條片會唔會已經講左.)
回复 支持 反对

使用道具 举报

发表于 2015-11-9 12:46:06 | 显示全部楼层
Arduino自带的AD本身就是10位的,10位按键一共有1024个状态,因此,理论上不管十个键只按了一个,或者都按,或者几个都能分辨出其排列组合。
回复 支持 反对

使用道具 举报

发表于 2015-11-9 13:22:21 | 显示全部楼层
楼上的办法就可以。。。一个AD口就可以了。。
回复 支持 反对

使用道具 举报

发表于 2015-11-9 20:08:40 | 显示全部楼层
你需要的是数模转换器,可以实现把数字量转换成模拟量
回复 支持 反对

使用道具 举报

发表于 2015-11-10 10:18:04 | 显示全部楼层
Super169 发表于 2015-11-9 10:22
唔該哂先.
我睇完都唔知佢點做既 (唔好意思, 硬件既野我真係好白痴既), 只係大約知道佢用控制 voltage 作 ...

以下是一個參考概念圖,要注意的是:圖中的電阻值祇是隨意作出,並未優化的。你可嘗試去擴展按鍵數量,和優化各個需要的電阻數值。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-10 14:18:47 | 显示全部楼层
林定祥 发表于 2015-11-9 12:46
Arduino自带的AD本身就是10位的,10位按键一共有1024个状态,因此,理论上不管十个键只按了一个,或者都按, ...

問題是怎樣可以把 10 個按鍵的 0 1 變成一個 10 bit 的 AD 訊號?

回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-10 14:21:58 | 显示全部楼层
eddiewwm 发表于 2015-11-10 10:18
以下是一個參考概念圖,要注意的是:圖中的電阻值祇是隨意作出,並未優化的。你可嘗試去擴展按鍵數量,和 ...

唔該哂, 等我番去試下先.
我睇塊 ad hotkey 既模塊, 好似都係只加入一D 電阻去做, 但我唔知佢點樣令到佢既輸出, 可以比 analog pin 讀到.
想問問, analogRead 其實係咪只係讀取針腳既電壓, 0-5V 分成 1024格, 將讀出既電壓 由 0-5 map 去 0-1024?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-10 14:26:42 | 显示全部楼层
eddiewwm 发表于 2015-11-10 10:18
以下是一個參考概念圖,要注意的是:圖中的電阻值祇是隨意作出,並未優化的。你可嘗試去擴展按鍵數量,和 ...

ching 個圖, 最頂既 10K 電阻, 係咪應該放 R4 既右邊?  
回复 支持 反对

使用道具 举报

发表于 2015-11-10 18:37:33 | 显示全部楼层
Super169 发表于 2015-11-10 14:21
唔該哂, 等我番去試下先.
我睇塊 ad hotkey 既模塊, 好似都係只加入一D 電阻去做, 但我唔知佢點樣令到佢 ...

是的,跟你理解的差不多。

你可先按概念圖的數值做實驗,去體驗一下,把當中遇到的問題一一感受一下,就能更好的把基礎打好,之後才一步一步的增加按鍵,相信你花的時間會很有價值的。

再有問題,稍後再慢慢交流吧!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-10 20:52:15 | 显示全部楼层
eddiewwm 发表于 2015-11-10 18:37
是的,跟你理解的差不多。

你可先按概念圖的數值做實驗,去體驗一下,把當中遇到的問題一一感受一下, ...

唔該哂, 搵左 2K, 5K, 10K, 20K 同 68K 既電阻, 接 key, 另外 5K 接 A0.
跟你的圖做用麵包板試了, 可以分出不同的 key, 但合 key 要小心再研究.  要避免 A+B = C  而攪亂.
三個 key 既可以唔理, 所以組合唔會太多, 要慢慢試.
手上的電阻亂, 要搵下有無好 D 既組合.  
我諗 10 個 key 應該不行, 因為讀數都幾唔定.  而且, 要不同組合唔撞, 真係唔易.
不過, 我只係要 10 個 key, 左右各 5 個, 用 2個 I/O, 仲可以做到合 key, 已經非常好了.

真係唔該哂.  其實我仲係睇唔明. 點解上面既電阻唔係放最右, 但我放最右就永遠都 1023.
點解有幾條 path, 一個 5V 電源出, 其中一條無電阻, D 電唔係應該由果條去哂既?  
我D 電學真係唔掂.  可唔可以簡單解釋下?  唔該哂.
回复 支持 反对

使用道具 举报

发表于 2015-11-11 09:42:47 | 显示全部楼层
Super169 发表于 2015-11-10 20:52
唔該哂, 搵左 2K, 5K, 10K, 20K 同 68K 既電阻, 接 key, 另外 5K 接 A0.
跟你的圖做用麵包板試了, 可以 ...


未能掌握你的問題,但你可參考以下的概念,當中要注意的不同點,是你手上所用的按鍵,祇會有一個邏輯電位和開路兩個狀態,並不是介紹提到的高低電位。

https://en.wikipedia.org/wiki/Resistor_ladder
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-11 10:10:43 | 显示全部楼层
eddiewwm 发表于 2015-11-11 09:42
未能掌握你的問題,但你可參考以下的概念,當中要注意的不同點,是你手上所用的按鍵,祇會有一個邏輯電 ...

唔該哂 ching, 我尋晚用錶度下 D 數時, 已經發覺自己傻仔左.

你最右邊應該係睇成係個錶, 而唔係一條連線....因為我之前當左佢係一條連線去諗, 由果度 short 左, 咁 R2, R3 同 R4 變左 應該接左線都無電過. (放低書包太耐, 唔識睇圖, 傻仔左).

手頭買過 D 電阻包, 好多好亂.
仲搵緊用邊 D 電阻既組合, 同時兩個鍵時都可以分得好 D (三個或以上唔理了), 以免出現 A+B = C 既混亂.
要睇番 D 野, 睇下電壓點計, 再整個 Excel 去試.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-17 11:01 , Processed in 0.064923 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表