還記得我們“2022寒假在家一起練”的RP2040游戲機平臺上的4向搖桿么?很多同學用它實現(xiàn)了游戲機的位置操控,還制作了鼠標的功能。4向搖桿本質(zhì)是2個電位計 - X軸和Y軸各一個電位計。
用RP2040制作的游戲機平臺
四向搖桿的結(jié)構(gòu)和內(nèi)部原理圖
在RP2040游戲機平臺中占用了RP2040的兩個ADC輸入管腳,通過檢測由這兩個電位計帶來的分壓電壓的變化,從而判斷搖桿的相對位置。
想一下,如果MCU內(nèi)部沒有ADC,只有數(shù)字IO,或者用FPGA是否也能檢測電位計的變化?甚至給出電位計的阻值變化?而且能夠用一根輸入管腳同時感知2個電位計?
初聽起來是不是有點天方夜談?如果我們能巧妙利用PWM信號這個神器,就能實現(xiàn)對2只電位計的檢測。
大家知道PWM信號的特點 - 一根數(shù)字信號,兩個基本參數(shù) - 頻率和占空比。我們多數(shù)情況下是產(chǎn)生PWM信號來控制外部的器件,反過來我們能否測量這兩個參數(shù)的變化,從而用于感知外部的變量呢?
測量PWM信號的這兩個參量很容易,用高頻率的時鐘數(shù)數(shù)就可以實現(xiàn),無論MCU用定時器來實現(xiàn),還是FPGA用計數(shù)器來實現(xiàn),都很簡單,在這里就不再贅述了。
下面的問題就是通過變化的PWM測量外部的參量:
我們設計一個電路,能夠產(chǎn)生調(diào)頻、調(diào)占空比的PWM信
用一只電位計來控制產(chǎn)生的PWM信號的頻率
用另外一只電位計控制產(chǎn)生的PWM信號的占空比
這個電路是啥樣的?想一下PWM信號的生成原理:
我們?nèi)绻軌蚩刂?a target="_blank">比較器輸入端鋸齒波的頻率,就能調(diào)整PWM脈沖的頻率;
我們?nèi)绻軌蛘{(diào)節(jié)比較器另一端參考電壓的變化,就能調(diào)整PWM脈沖的占空比。
那么,電路就有了:
一顆普通的4運放LM324 + 幾顆電阻 + 幾顆電容即可。在這個電路中用到的供電電壓是5V,此電路結(jié)構(gòu)同樣也適用于3.3V供電。
用兩個運放產(chǎn)生可調(diào)頻率(一個電位計P1控制)的三角波,送給一個用作比較器的運放,運放的輸出為占空比可調(diào)的脈沖波形。比較器的一個輸入端電壓由另一個電位計來控制。
這個電路的頻率調(diào)節(jié)范圍為250Hz - 500Hz,脈寬變化從10%到90%,根據(jù)電路中的電阻參數(shù)就可以計算出兩個電位計變化的阻值。
是不是挺簡單的?
要不要用MCU和FPGA分別試一試?
如果你試了,可以將過程和結(jié)果分享在電子森林的項目頁面哦。
原文標題:設計小技巧:如何用MCU或FPGA的一個數(shù)字IO測量2個電位計的阻值變化?
文章出處:【微信公眾號:電子森林】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
審核編輯:湯梓紅
-
FPGA
+關注
關注
1624文章
21538瀏覽量
600467 -
mcu
+關注
關注
146文章
16796瀏覽量
349332 -
adc
+關注
關注
97文章
6345瀏覽量
543352 -
電位計
+關注
關注
0文章
253瀏覽量
16924
原文標題:設計小技巧:如何用MCU或FPGA的一個數(shù)字IO測量2個電位計的阻值變化?
文章出處:【微信號:xiaojiaoyafpga,微信公眾號:電子森林】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論