摘要: 為解決教師在多媒體教學(xué)演示中要不斷地利用鼠標(biāo)進(jìn)行翻頁,、跳轉(zhuǎn)等控制, 設(shè)計(jì)以低功耗MSP430F149 單片機(jī)為控制核心,,接收紅外遙控發(fā)射的指令信息,,并通過串口轉(zhuǎn)USB 接口和計(jì)算機(jī)通信,控制通過PowerPoint 演示軟件所制作的教學(xué)課件的運(yùn)行、翻頁,、關(guān)閉等,,此遙控教鞭與傳統(tǒng)的鼠標(biāo)控制相比使用更方便,功能更強(qiáng)大,。
傳統(tǒng)教學(xué)中, 教師以黑板和粉筆為最主要的教學(xué)用具,, 這種教學(xué)手段單一,, 課堂效率低, 不能激起學(xué)生學(xué)習(xí)的興趣,。多媒體輔助教學(xué)模式的興起,, 彌補(bǔ)了傳統(tǒng)教學(xué)的不足, 在實(shí)際操作中教師在進(jìn)行多媒體演示時(shí),, 要不時(shí)地進(jìn)行鼠標(biāo)操作,, 使之不得不中斷與學(xué)生的互動(dòng)。無線遙控教鞭是一個(gè)很好的解決方案,。
1 系統(tǒng)框架
整個(gè)系統(tǒng)由發(fā)射電路,、接收電路和計(jì)算機(jī)軟件三部分組成。發(fā)射部分,, 即手持教鞭部分,, 以日本NEC 的uPD6121G 為控制核心。首先,, 當(dāng)按下按鍵后,, 掃描鍵盤得到遙控碼, 不同的鍵值對(duì)應(yīng)不同的編碼信息,, 此鍵值信息代表著向計(jì)算機(jī)中演示的軟件PowerPoint 發(fā)送的控制命令,, 然后將此編碼信息經(jīng)調(diào)制后由紅外發(fā)光管向外發(fā)射。接收部分的控制核心為TI 公司推出的低功耗MSP430 單片機(jī),, 主要完成發(fā)射端傳送來的紅外調(diào)制信息的接收和解碼操作,, 將解析出的控制命令信息經(jīng)串口轉(zhuǎn)USB 接口傳送至計(jì)算機(jī), 此硬件模塊可直接插在計(jì)算機(jī)的USB 接口中,, 直接由USB 接口供電,; 計(jì)算機(jī)中的上位機(jī)軟件采用C# 編寫, 使用Microsoft Studio 2005 自帶的SerialPort 組件,。SerialPort 對(duì)象接收到數(shù)據(jù)時(shí),, 將在輔助線程上引發(fā)DataReceived 事件。處理此事件,, 得到從串口發(fā)送來的控制命令數(shù)據(jù)信息,, 實(shí)現(xiàn)控制多媒體演示軟件PowerPoint 的目的。系統(tǒng)框架如圖1 所示。
2 硬件系統(tǒng)
2.1 紅外遙控發(fā)射模塊
通用紅外遙控發(fā)射電路由編/解碼專用集成電路芯片uPD6121G 進(jìn)行控制操作,,發(fā)射部分包括鍵盤矩陣,、編碼調(diào)制、LED 紅外發(fā)送器等部分,。電路原理圖如圖2 所示,。
日本NEC 公司的uPD6121G 組成發(fā)射電路的編碼原理描述如下, 當(dāng)發(fā)射器按鍵按下后,, 即有遙控碼發(fā)出,, 所按的鍵不同遙控編碼也不同, 具有以下特征: 采用脈寬調(diào)制的串行碼,, 以脈寬為0.565 ms ,、間隔0.56 ms 、周期為1.125 ms 的組合表示二進(jìn)制的“0” ,; 以脈寬為0.565 ms ,、間隔1.685ms 、周期為2.25 ms 的組合表示二進(jìn)制的“1”,, 其波形如圖3 所示,。
上述“0” 和“1” 組成的32 bit 二進(jìn)制碼, 經(jīng)38 kHz 的載頻進(jìn)行二次調(diào)制以提高發(fā)射效率,, 達(dá)到降低電源功耗的目的,。然后再通過紅外發(fā)射二極管產(chǎn)生紅外線向空間發(fā)射, 如圖4 所示,。
由圖可知,, 遙控編碼是連續(xù)的32 bit 二進(jìn)制碼組, 其中前16 bit 為用戶地址和地址反碼,, 防止不同機(jī)型互相干擾,, 后16 bit 為用戶操作碼和操作反碼, 也可以稱為功能碼,。本次設(shè)計(jì)就采用此種紅外遙控,。
2.2 紅外遙控接收模塊
接收電路使用一體化紅外接收頭HS0038 , 接收紅外信號(hào)頻率為38 kHz ,, 接收距離可達(dá)35 m,。它能將遙控信號(hào)的接收、放大,、檢波,、整形集于一身, 并且輸出可以讓單片機(jī)識(shí)別的TTL 信號(hào),, 這樣大大簡化了接收電路的復(fù)雜程度和電路的設(shè)計(jì)工作,, 方便使用,。其與單片機(jī)連接原理圖如圖5 所示, 由單片機(jī)采集紅外遙控命令并在內(nèi)部完成解碼工作,。
2.3 基于PL2302 的串口轉(zhuǎn)USB 接口模塊
由于RS232 標(biāo)準(zhǔn)串行接口已逐漸在電腦主板中淘汰,, 為了充分利用USB 接口即插即用的特點(diǎn), 本設(shè)計(jì)采用了PL2303 芯片實(shí)現(xiàn)了RS232 與USB 接口的轉(zhuǎn)換,, 省去了RS232 電平以TTL 電平的裝換,。用PL2303 實(shí)現(xiàn)的USB 轉(zhuǎn)串口的電路如圖6 所示。
3 軟件系統(tǒng)
3.1 單片機(jī)系統(tǒng)軟件
單片機(jī)采用TI 的低功耗MSP430F149 為控制核心,,其主要功能是解碼紅外遙控器發(fā)送來的信號(hào)和驅(qū)動(dòng)液晶顯示,。其中解碼紅外遙控信號(hào)是實(shí)現(xiàn)本設(shè)計(jì)的關(guān)鍵,紅外接收電路的信號(hào)輸出接到單片機(jī)的外部中斷0 上,,當(dāng)單片機(jī)接收到信號(hào)后進(jìn)入中斷函數(shù), 首先判斷是否為引導(dǎo)碼,, 如果是則進(jìn)入解碼程序,, 否則丟棄。解碼程序通過精確的延時(shí)函數(shù),, 判斷每個(gè)發(fā)送過來的每一位為0 還是1,, 并把數(shù)據(jù)保存到date 數(shù)組中, 其中date [0] 保存地址碼,,date [1] 中保存地址反碼,,date [2] 中保存數(shù)據(jù)碼,date[3] 保存數(shù)據(jù)反碼,。解碼的流程圖如圖7 所示,。
圖7 系統(tǒng)軟件流程圖
3.2 上位機(jī)軟件
上位機(jī)軟件采用C# 編寫, 使用Microsoft Studio 2005自帶的SerialPort 組件,。SerialPort 對(duì)象接收到數(shù)據(jù)時(shí),, 將在輔助線程上引發(fā)DataReceived 事件。處理此事件,, 得到從串口發(fā)送來的數(shù)據(jù),, 并給計(jì)算機(jī)發(fā)送相應(yīng)的命令。
本軟件界面人性化,, 用戶在設(shè)置過程中有簡單的操作提示,, 使得人機(jī)對(duì)話更為簡單, 當(dāng)設(shè)置完成后可以讓程序隱藏到后臺(tái)運(yùn)行,。小軟件還有漂亮的皮膚界面,, 上位機(jī)軟件截圖和軟件的工作流程如圖8 所示。
本設(shè)計(jì)以MSP430F149 單片機(jī)為控制核心,, 所設(shè)計(jì)的遙控教鞭功耗低,, 僅須兩節(jié)電池供電,; 命令接收采用USB 接口, 其供電可直接通過計(jì)算機(jī)取電,。工作時(shí),, 只要打開控制軟件和PPT 演示軟件, 其操作就可通過手執(zhí)部分隨意控制,, 可方便地應(yīng)用于教學(xué),、會(huì)議室等需演示的場(chǎng)合。