基于MC9RS08KA2紅外遠(yuǎn)距離多鍵控制方案設(shè)計
在空調(diào)和許多家電應(yīng)用中,常常使用無線數(shù)據(jù)接口(如紅外通信)來發(fā)送和接收數(shù)據(jù),在紅外通信中基本的要求是:待機(jī)模式低功耗,低電壓操作,低成本,簡易的代碼調(diào)制來客戶化定制不同的模式。
本方案包括發(fā)送和接收部分。設(shè)計中采用6引腳DFN封裝的MC9RS08KA2來實(shí)現(xiàn)紅外遠(yuǎn)程控制;采用6引腳的BDM接口實(shí)現(xiàn)Flash在線編程和調(diào)試。紅外遠(yuǎn)程控制發(fā)送部分通過紅外線發(fā)射產(chǎn)生數(shù)字控制幀到接收部分。紅外發(fā)送二極管和紅外接收調(diào)制元件是紅外控制的重要器件,作為家居應(yīng)用,紅外載波頻率的典型值是38kHz。對于不同的發(fā)射和接收設(shè)計,紅外線數(shù)據(jù)幀模式都是確定的,它依賴于應(yīng)用的要求。
載波頻率是38 kHz,在紅外線數(shù)據(jù)傳輸中考慮到低功耗問題,占空比設(shè)計成l/3,紅外發(fā)射二極管導(dǎo)通時間為8μs,截止時間為18μs。相對于占空比為1/2時,紅外發(fā)射二極管導(dǎo)通時間為13μs,截止時間為13μs,功耗降低了很多。數(shù)據(jù)位0/l表示基于調(diào)制信號的導(dǎo)通和截止時間。數(shù)據(jù)位0表示載波導(dǎo)通和截止時問都足0.5ms;數(shù)據(jù)位1表示載波導(dǎo)通時間足O.5 ms,截止時間是1.5 ms。
本次設(shè)計的數(shù)據(jù)幀由前導(dǎo)碼、多個數(shù)據(jù)碼、1字節(jié)的客戶識別碼和1個停止位組成。前導(dǎo)碼代表不同的IR接收器,數(shù)據(jù)碼用于控制開閉信號、加減、不同模式等,客戶識別碼用于識別小同的客戶,停止位用于標(biāo)識當(dāng)前傳輸結(jié)柬。
1 MC9RS08KA2微處理器
MC9RS08KA2(KA2)是一個超低功耗、低引腳封裝的MCU,適合于家居、玩具和遠(yuǎn)程控制的應(yīng)用。它是RS08 CPU內(nèi)核,包含62字節(jié)RAM、2 KB Flash和1個8位的定時器,具有鍵盤中斷、低壓檢測和模擬比較功能,有6引腳和8引腳2種封裝形式。設(shè)計中通過軟件延時的38 kHz載波頻率,硬件電路使用9個按鍵實(shí)現(xiàn)遠(yuǎn)程控制,具有可反復(fù)編程和凋試的BDM接口,工作電壓低至1.8V,系統(tǒng)采用鋰電池供電,低功耗模式下的電流值是lμA。
2 系統(tǒng)說明
設(shè)計中使用MC9RS08KA2作為發(fā)送和接收處理器。發(fā)送部分執(zhí)行鍵盤掃描、數(shù)據(jù)幀編碼、載波頻率產(chǎn)生,以及通過紅外線發(fā)送數(shù)據(jù)幀。接收部分執(zhí)行鍵盤掃描、數(shù)據(jù)幀解碼、LCD和LED顯示。
2.1 硬件部分
MC9RS08KA2具備內(nèi)部時鐘ICS模式,不需要額外的外部時鐘源,內(nèi)部RC晶振的最高時鐘頻率町達(dá)20 MHz(10MHz的總線頻率)。如圖1所示,6引腳封裝具備足夠的資源來識別9個按鍵。盡管MC9RS08KA2沒有內(nèi)建ADC轉(zhuǎn)換器,但是可通過內(nèi)建的比較器來實(shí)現(xiàn)ADC功能。通過電阻網(wǎng)絡(luò),比較器檢測不同按鍵按下的電壓值來識別按鍵。通過按下按鍵將KBl2連接到地,因此CPU上會有鍵盤中斷發(fā)生,同時按鍵電阻網(wǎng)絡(luò)會在ACMP一引腳產(chǎn)生一個確定的電壓。當(dāng)KB1中斷發(fā)生時,開始對RC網(wǎng)絡(luò)(R1l和C3)的ACMP+充電。當(dāng)檢測到有按鍵按下時,通過計算ACMP+的充電電壓達(dá)到電阻網(wǎng)絡(luò)在ACMP一上的分壓值的時間來識別按鍵(Sl~S9)。
為了保持系統(tǒng)的低功耗,MC9RS08KA2直接驅(qū)動紅外線發(fā)射,如圖2所示。電路使用PTA3來驅(qū)動IR發(fā)射硬件接收部分(如圖4所示)使用PDIP-8封裝的MC9RS08KA2,通過數(shù)碼管顯示不同的按鍵數(shù)值,通過PTA3驅(qū)動繼電器來控制電器(如燈具或直流電機(jī))。
2.2 軟件部分
當(dāng)系統(tǒng)發(fā)送部分上電后,MC9RS08KA2進(jìn)行初始化。時鐘提升到16MHz,初始化變量寄存器,使能低壓監(jiān)測,I/0口和PTA2設(shè)置為輸入,使能KBl2的下降沿中斷方式。初始化完成后,主程序進(jìn)入待機(jī)模式。當(dāng)有按鍵按下時,系統(tǒng)喚醒,CPU執(zhí)行按鍵識別和數(shù)據(jù)幀的發(fā)送;之后系統(tǒng)繼續(xù)進(jìn)入低功耗模式.繼續(xù)準(zhǔn)備按鍵喚醒。發(fā)送流程如圖5所示。
接收部分(如圖6所示)則在初始化I/O口后,檢測是否有紅外信號。若無,則繼續(xù)檢測;若有,則判斷數(shù)據(jù)幀地址碼足否與接收機(jī)相匹配。若匹配,則通過調(diào)用數(shù)碼顯示二極管。當(dāng)PTA3是邏輯高電平時,IR發(fā)射二極管接通。
R14是一個限流電阻,可以通過改變輸出的PWM信號占空比來改變IR發(fā)射二極管的輸出功率。硬件發(fā)送部分原理圖如3所示。
驅(qū)動程序顯示地址號,同時驅(qū)動繼電器動作;若不匹配,則繼續(xù)下一輪接收。
結(jié) 語
系統(tǒng)采用了Freescale公司低成本、高集成度的IC,因而體積很小,功能強(qiáng)大。該方案用于控制家居室內(nèi)不同的電器,用一個紅外發(fā)射器,多個相同的紅外線接收裝置,發(fā)射器不同的按鍵對應(yīng)不同的電器。實(shí)際證明,系統(tǒng)能正常識別每種不同電氣設(shè)備,無誤動作,效果良好。