CC2430 Joystick硬件說明
1 目標(biāo)
學(xué)習(xí)了CC2430的AD,UART和Timer之后,感覺自己有點(diǎn)入門了,接著做一點(diǎn)人機(jī)交互的內(nèi)容。在這里我介紹一下Joystick的硬件連接。
剛開始看Joystick的硬件部分的時(shí)候,還很的覺得有點(diǎn)麻煩的,后來把這個(gè)電路分解為反相放大器,同相放大器之后,問題就好解決多了。
2 分解Joystick的4個(gè)按鈕
剛開始拿到原理圖的時(shí)候,4個(gè)按鈕“糾結(jié)”在了一起,讓人實(shí)在是看不懂是。后來我“分解”了這四個(gè)按鍵,在Proteus中重新繪制原理圖。Proteus可以進(jìn)行一定的仿真,我還模擬仿真了一下。建立的模型如下:
編號(hào)和原來圖紙有所出入,但是原件參數(shù)還是一樣的。每次按某個(gè)按鍵,U1:B就會(huì)輸出不同的電壓。這下我也放心了,至少原理就那么回事——通過檢測(cè)不同的電壓判斷按鍵是否被按下。
3 反相放大器
觀察圖左邊的放大器,本質(zhì)上就是一個(gè)反相放大器。通過按下不同的開關(guān),獲得了不同的放大倍數(shù)。另外,放大器的正輸入端還有一個(gè)參考電壓,使得反相放大時(shí)不至于出現(xiàn)都負(fù)電壓的情況(但后來的計(jì)算發(fā)現(xiàn)還是出現(xiàn)了負(fù)電壓,不過沒有關(guān)系)。輸出和輸入的關(guān)系如下圖所示:
該圖來自《嵌入式系統(tǒng)中使用單電源運(yùn)算放大器》一文,在microchip官網(wǎng)上找到。microchip提供的資料,簡單且易于理解,不乏經(jīng)典的中文資料,應(yīng)用手冊(cè)條理清楚,堪稱典范。
Vout1(左邊放大器的輸出)存在這樣的關(guān)系:
Vout1 = -(R2/R1)*Vin + (1+(R2/R1))*VBIAS;
其中,Vin為3.3V,R1為800K,400K,200K和100K其中的一個(gè);R2為50K。VBIAS有兩個(gè)電阻分壓得到,100/(100+220)*3.3V。這樣就可以很簡單的計(jì)算出4個(gè)按鈕按下時(shí),反相放大器的輸出結(jié)果。但是需要注意的是,當(dāng)R1為100K時(shí),計(jì)算出的結(jié)果為-0.1V,小于0。由于放大器沒有使用雙電源,所以只能輸出大于0V的部分,理論計(jì)算小于0的部分,只能委屈一點(diǎn)當(dāng)0了。
4 同相放大器
同相放大器電路就簡單一點(diǎn)了,計(jì)算公式如下圖所示。同樣來自《嵌入式系統(tǒng)中使用單電源運(yùn)算放大器》一文。
這個(gè)放大器的放大倍數(shù)為3。實(shí)際的Vout = 3*Vout1。
5 總結(jié)
看的懂的覺得很簡單,但是“不說”。分析軟件的人要比分析硬件的多。我覺得這很難,好不容易看懂了,我就分享一下。具體的結(jié)果如下
UP鍵按下 2.67V
DOWN鍵按下 0V(-0.31V)
LEFT鍵按下下 1.39V
RIGHT鍵按下 2.24V