簡介
遙控設備在日常生活中非常易見,家電遙控器、玩具遙控器等方便了用戶對設備的控制。針對不同需求,遙控設備設計也不同,例如電視機遙控器不帶顯示屏,通常用紅外信號傳輸;空調遙控器則帶顯示屏,常用紅外(IR)和射頻(RF)傳輸信號;另有一些高端遙控產(chǎn)品可通過手機等更新固件,實現(xiàn)版本的升級。本文介紹了一套用于遙控設備的通用方案,該方案支持 LCD 顯示;支持紅外通信且可擴展射頻通信方式;用戶輸入采用觸摸按鍵實現(xiàn),時尚美觀;本方案預留NFC 接口,可擴展 NFC 功能;在電源管理方面,支持電池供電,USB 充電和無線充電,方便實用。
1 原理介紹
1.1 電容式觸摸按鍵原理
觸摸按鍵在電子設備中得到越來越多的應用。用觸摸按鍵實現(xiàn)人機交互的電磁爐,微波爐,電冰箱等家電產(chǎn)品越來越受青睞,預計未來會有越來越多的觸摸按鍵產(chǎn)品取代傳統(tǒng)的機械式按鍵產(chǎn)品。觸摸按鍵具有堅固耐用,反應速度快,節(jié)省空間,美觀大方,易于清潔等諸多優(yōu)點。觸摸式按鍵可分為四大類,電阻式,電容式,紅外線式及表面聲波式感應按鍵。其中電阻式,紅外線式和表面聲波按鍵主要應用于觸摸屏中,在單個按鍵中很少使用。本方案將重點討論電容式觸摸按鍵在單個按鍵中的應用。
電容式觸摸按鍵采用電容量為判斷標準,在觸摸按鍵的設計中,它具有一些優(yōu)點,例如可直接集成在 PCB 中,觸摸感應區(qū)域外形尺寸設計靈活,相對成本較低等等。簡單來講,電容式觸摸按鍵在按下的時候改變了電容值,從而改變電路振蕩周期,通過對振蕩周期改變值的檢測實現(xiàn)對按鍵的檢測。圖1 是電容式觸摸按鍵原理示意圖。
圖1 觸摸按鍵原理示意圖
空載狀態(tài)下,感應區(qū)域電容由材料和結構決定(圖1 左上圖),電容值為C1+C2.變化電容基于寄生效應,主要由外界導體與PAD 之間的寄生電容組成(圖1 右下圖),手指按下,寄生電容值變化,容值為C1+C2+C3||C4。將此電容接入電路組成振蕩器,電容值的改變導致振蕩電路輸出頻率變化,通過測量輸出頻率判斷按鍵的觸發(fā)狀態(tài)。
按鍵感應區(qū)域設計需要避免誤觸發(fā)以及兼顧靈敏度。通常來說,單個按鍵感應區(qū)域需要做的足夠大,以達到識別按鍵目的;相鄰按鍵感應區(qū)域應保持一定距離,避免誤觸發(fā);觸摸感應區(qū)形狀原則上可任意,單個按鍵以圓形、方形為佳。
TI 的MSP430 支持多種觸摸實現(xiàn)方式,參考文檔[1]。
1.2 紅外信號傳輸原理
紅外遙控原理可參考文檔[2]。本文采用 NEC 協(xié)議編碼,簡單說是通過脈沖串之間的時間間隔來表示邏輯“0”和邏輯“1”。載波信號頻率為38k,邏輯“1”用 0.56ms 的38k 載波和 1.5ms的無載波表示,邏輯“0”用0.56ms 的載波和0.56ms 的無載波表示,幀頭用9ms 載波加4.5ms無載波表示。編碼幀格式參考圖2,具體格式定義可根據(jù)實際情況稍作修改。
圖2 紅外編碼數(shù)據(jù)幀格式
TI 的 MSP430 系列 MCU 自帶 Timer,可方便產(chǎn)生 38k 載波,編碼時的載波有無控制可由Timer 的 PWM 輸出模塊實現(xiàn)[3]。其 PWM 輸出模塊可配置成7 種輸出方式,可方便實現(xiàn)上述編碼。采用MSP430 的Timer 的PWM 輸出功能,僅需要一個Timer 和一路PWM 即可輕松實現(xiàn)紅外編碼,無需額外硬件,軟件實現(xiàn)簡單。為系統(tǒng)設計節(jié)省成本和開發(fā)時間。
1.3 可充電觸屏遙控模塊方案設計
傳統(tǒng)的遙控模塊采用機械按鍵實現(xiàn),本方案采用觸摸按鍵設計,按鍵和顯示在同一塊LCD 屏上,外形時尚、美觀。本方案作為參考設計,除了遙控器基本功能(按鍵,顯示,發(fā)射,按鍵聲)外,還設計了充電和USB 模塊,并擴展了RF 和NFC接口??沙潆姺绞教岣吡遂`活性,用戶僅需要充電而不必更換電池。USB 模塊可實現(xiàn)和PC 端應用軟件通信。本方案不僅僅是遙控器方案,在其他應用領域,本方案也有很大的參考價值,用戶僅需要根據(jù)需求對本方案功能模塊進行裁剪即可。本方案電源模塊支持電池供電和USB 或直流適配器充/供電;觸摸按鍵采用比較器B實現(xiàn);RF 和NFC 模塊采用SPI 和MCU 接口;MSP430自帶的USB 模塊可方便與PC 端應用軟件接口,實現(xiàn)PC 和MCU 的雙向通信。系統(tǒng)框圖如圖3 所示。
圖3 系統(tǒng)框圖
2 設計實例
2.1 硬件設計
2.1.1 電源模塊設計
本系統(tǒng)采用電池供電,且設計了充電電路,支持USB或直流充電。電源經(jīng)LDO穩(wěn)壓后輸出3.3V 供給MCU,保證MCU 工作電壓的穩(wěn)定。其電路實現(xiàn)如下圖4 所示。
圖4 電源模塊電路設計
2.1.2 LCD及背光模塊設計
MSP430F6638自帶LCD控制器,可方便地驅動段式LCD屏。屏幕背光亮度由Timer輸出PWM波控制,調節(jié)方便。背光電路設計如圖5 所示。通過改變PWM 的頻率和占空比,可改變背光亮度,從而改變LCD屏視覺效果。
圖5 背光電路設計
2.1.3 觸摸按鍵設計
MSP430F6638自帶比較器B,最多可支持12個觸摸按鍵,比較器B的輸出接入Timer的CLK 輸入端,當手指按下,觸摸感應區(qū)電容值發(fā)生了變化,比較器翻轉周期變長,比較器輸出作為 Timer 的計數(shù)脈沖,在固定的時間內計數(shù)值變小,根據(jù)固定時間內Timer 計數(shù)值的變化來判斷按鍵動作。通過合適配置寄存器和軟件算法處理,可實現(xiàn)觸摸按鍵檢測。電路設計如圖 6 所示。注意為了降低噪聲,每通道外接電阻不宜過小,可選500k 左右。比較器B 翻轉電平通過配置寄存器實現(xiàn),請參考手冊[3]。
圖6 觸摸按鍵電路設計[!--empirenews.page--]
2.1.4 紅外發(fā)射模塊設計
紅外模塊采用普通紅外管實現(xiàn),通過配置Timer輸出合適的PWM波實現(xiàn)紅外編碼。紅外發(fā)射瞬間電流較大,通過MCU 的GPIO控制三極管驅動紅外發(fā)射燈管,提高發(fā)射電流。紅外發(fā)射模塊需配合接收模塊采用同樣的編碼格式實現(xiàn)通信。紅外模塊電路圖如圖7 所示。
圖7 紅外發(fā)射模塊
2.1.5 USB模塊設計
MSP430F6638自帶USB模塊,可實現(xiàn)USB通信,其硬件設計簡單。本文用USB虛擬UART 實現(xiàn)和PC 通信。關于USB 調試請參考TI 官網(wǎng)資料[4]。
2.2 軟件設計
2.2.1 嵌入式軟件設計
系統(tǒng)軟件流程如圖8 所示。無按鍵動作時,系統(tǒng)運行RTC,顯示當前時間,溫度且把時間,溫度以及按鍵狀態(tài)(每個按鍵動作有無)信息發(fā)送給PC。當有按鍵按下后,除了上述功能外,系統(tǒng)還將執(zhí)行按鍵上層邏輯,比如是否進入時間設定模式,是否開蜂鳴器以及發(fā)射哪種紅外碼等等。
圖8 軟件流程圖
2.2.2 PC端軟件設計
為了方便實現(xiàn)人機交互,使用C Sharp語言開發(fā)了配套的PC端軟件實現(xiàn)和MCU的雙向通信。通過PC端軟件可查看DEMO的當前狀態(tài),包括時間,溫度,按鍵動作等,另外也可通過PC 端改變DEMO 背光的亮度。PC 端軟件如圖9所示。
圖9 PC 端軟件
DEMO 通過USB線與PC端COM口連接,MSP430F6638 的 USB 通過軟件協(xié)議虛擬UART,在PC端選擇合適的COM 端口號可實現(xiàn)PC軟件和 DEMO 的互連。圖9中左圖反映DEMO 的實物,當有按鍵按下的時候,對應的按鍵圖標閃爍一下,同時在記錄框輸出文字記錄這個動作(Button xx Pressed!)。最下面圖表則實時顯示當前溫度信息。
2.3 DEMO展示
DEMO 實物如圖10所示。鍵盤區(qū)12個按鍵,每個按鍵按下圖標會閃爍一下,同時蜂鳴器會響0.3s左右。每個按鍵做了不同功能,可根據(jù)需求發(fā)射不同的紅外碼實現(xiàn)遙控器的功能。演示DEMO中代碼支持RTC和溫度計功能,支持靈活調整時間,同時可通過PC端軟件來調節(jié)屏幕背光。DEMO還可擴展光傳感模塊,可根據(jù)環(huán)境光強弱智能調節(jié)背光亮度,達到較好的視覺效果。
該DEMO具有通用性,在所有需要顯示和人機交互的微控制系統(tǒng)中均可參考此方案,只需對FW 做簡單修改即可實現(xiàn)所需功能。同樣,MSP430 系列眾多的產(chǎn)品線為客戶提供了不同成本的多種選擇。客戶可根據(jù)具體需求選擇合適的MCU和合適的代碼模塊組合,以實現(xiàn)最高的性價比。
圖10 DEMO 實物
3 總結
本方案使用MSP430F6638 作為主處理器,展示了用其實現(xiàn)觸屏遙控器的電子模塊設計實例。在遙控器,無線設備以及其它需要按鍵和顯示的應用場合均可參考本方案。MSP430 豐富的產(chǎn)品線也為前述應用場合提供了豐富的選擇,客戶可根據(jù)具體需求選擇合適的產(chǎn)品,達到最優(yōu)性價比。