以高整合度混合信號(hào)單片機(jī)實(shí)現(xiàn)電子計(jì)價(jià)秤應(yīng)用
PCB電路圖:
本文引用地址:http://www.ex-cimer.com/article/275891.htm3.2電路說(shuō)明
3.2.1 芯片ADC說(shuō)明
Load Cell輸入電壓由內(nèi)置穩(wěn)壓器2.4V輸出供給VDDA,ADC內(nèi)部的PGA放大32倍,Gain放大4倍,參考電壓由VDDA –VSS供給,F(xiàn)RB[0]設(shè)置[1],則ΔVR_I=1.2V ,由于ΣΔ24具有良好的溫漂特性,整體的溫度曲線約略為±10PPM,所以只要選擇低溫漂系數(shù)Load Cell,就可以達(dá)到溫度漂移的要求。
3.2.2 矩陣鍵盤說(shuō)明
在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個(gè)按鍵加以連接。這樣一個(gè)端口(如PT2埠8PIN)就可以構(gòu)成4X4=16個(gè)按鍵,比之直接將端口線用于鍵盤多出了一倍,而且線數(shù)越多,區(qū)別越明顯,比如再多加一條線就可以構(gòu)成20鍵的鍵盤,而直接用端口線則只能多出1鍵(9鍵)。由此可見,在需要的鍵數(shù)比較多時(shí),采用矩陣法來(lái)做鍵盤是合理的。
矩陣式結(jié)構(gòu)的鍵盤顯然比直接法要復(fù)雜一些,識(shí)別也要復(fù)雜一些,列線通過電阻接正電源,并將行線所接的MCU的I/O口作為輸出端,而列線所接的I/O口則作為輸入。這樣,當(dāng)按鍵沒有按下時(shí),所有的輸入端都是高電平,代表無(wú)鍵按下。行線輸出是低電平,一旦有鍵按下,則輸入線就會(huì)被拉低,這樣通過讀入輸入線的狀態(tài)就可得知是否有鍵按下。
矩陣按鍵識(shí)別方法:
(A)行掃描法:
行掃描法又稱為逐行(或列)掃描查詢法,是一種最常用的按鍵識(shí)別方法,
如上圖所示鍵盤,介紹過程如下。
(1)判斷鍵盤中有無(wú)鍵按下將全部行線Y0-Y3置低電平,然后檢測(cè)列線的狀態(tài)。只要有一列的電平為低,則表示鍵盤中有鍵被按下,而且閉合的鍵位于低電平線與4根行線相交叉的4個(gè)按鍵之中。若所有列線均為高電平,則鍵盤中無(wú)鍵按下。
(2)判斷閉合鍵所在的位置在確認(rèn)有鍵按下后,即可進(jìn)入確定具體閉合鍵的過程。其方法是:依次將行線置為低電平,即在置某根行線為低電平時(shí),其它線為高電平。在確定某根行線位置為低電平后,再逐行檢測(cè)各列線的電平狀態(tài)。若某列為低,則該列線與置為低電平的行線交叉處的按鍵就是閉合的按鍵。
(B)高低電平翻轉(zhuǎn)法:
(1)首先讓PT2口高四位為1,低四位為0。若有按鍵按下,則高四位中會(huì)有一個(gè)1翻轉(zhuǎn)為0,低四位不會(huì)變,此時(shí)即可確定被按下的鍵的行位置。
(2)然后讓PT2口高四位為0,低四位為1。若有按鍵按下,則低四位中會(huì)有一個(gè)1翻轉(zhuǎn)為0,高四位不會(huì)變,此時(shí)即可確定被按下的鍵的列位置。
最后將上述兩者進(jìn)行或運(yùn)算即可確定被按下的鍵的位置。
3.2.3 LCD Driver電路說(shuō)明
LCD驅(qū)動(dòng)電路
MCU通過IIC與LCD driver通訊,電路簡(jiǎn)單,操作方便,只須將數(shù)據(jù)發(fā)送給LCD driver HY2613,MCU就可以處理其它事情,且更新數(shù)據(jù)方便。
3.3軟件說(shuō)明
整體程序流程圖
3.3.1程序功能簡(jiǎn)介
(1)上電后除了MCU的初始化,對(duì)LCD初始化,讀取0g校正值、標(biāo)準(zhǔn)重量校正值和標(biāo)準(zhǔn)重量值,且抓取ADC的0點(diǎn)ADC值。初始化過程LCD顯示00.000g,待初始化完成會(huì)進(jìn)入ADC稱重,LCD顯示重量格式為XX.XXXg。
(2)矩陣按鍵操作
(3)ADC校正操作:
此操作只在稱重模式下有效,操作流程如圖所示。
圖ADC校正模式工作流程
模擬信號(hào)相關(guān)文章:什么是模擬信號(hào)
adc相關(guān)文章:adc是什么
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
評(píng)論