雷 明
(四川建筑職業技術學院 圖信中心,四川 德陽 618000)
在多媒體教學普及的過程中,普遍存在如何將現代化教學設備和教師的課堂教學習慣有機結合的問題。目前大多數多媒體激光筆采用普通電池供電,如果電量不足則會影響使用。而激光筆多在配備了計算機的多媒體教室或會場使用,因此采用可充電鋰電池作為電源,利用計算機的USB接口直接給鋰電池充電,并且將充電部分直接集成到發射端上,整機體積小,攜帶方便。
系統主要由2個部分構成:手持發射端和PC機接收端。手持發射端負責檢測按鍵并通過無線發送數據,PC機接收端接收到無線數據后通過USB接口向計算機發送命令。硬件系統框圖[1]如圖1所示。

圖1 硬件系統框圖
該部分硬件電路主要由鋰電池保護電路、充電電路、電源電路、激光二極管發光電路、主控芯片、按鍵與nRF24L01接口電路組成。鋰電池經鋰電池保護電路、電源電路后給STC12LE4052AD單片機及后續其他電路供電。主控芯片負責檢測按鍵,并根據按鍵鍵值控制nRF24L01模塊發送數據。手持發射端硬件電路框圖如圖2所示。

圖2 手持發射端硬件電路框圖
主控芯片外圍電路主要包括晶振電路、復位電路及程序下載電路。由于該單片機程序下載使用串口直接下載程序,因此在電路設計時考慮到整體系統體積大小,沒有做TTL電平轉RS232電平的電路設計,只將單片機上的RXD、TXD和地線引出。實際使用時,單獨焊接一塊TTL電平轉RS232電平的模塊實現程序下載。STC12LE4052AD單片機采用高電平復位方式[2]。
1)功能鍵設置。在該部分電路中,共設計3個獨立按鍵,并且在普通的獨立按鍵上進行改進,使得有任意鍵按下時都能夠給單片機發送一個中斷信號。同時,為了使產生中斷信號時按鍵互不影響,將每個按鍵的輸出反向串聯二極管后接在中斷引腳上。為了降低按鍵時系統的功耗,按鍵電路里采用較大的電阻。
2)鋰電池充放電及其保護。鋰電池正常狀態下的放電電壓為3.7 V,在放電過程中電壓會逐漸減小。為了保障鋰電池不被損壞,且延長鋰電池壽命,鋰電池的最低放電電壓不能低于2.4 V、最高充電電壓不得高于4.2 V。本設計中采用DW01專用鋰電池電池管理芯片。
系統采用CN3062對單節鋰電池進行恒流/恒壓充電,內部固定的充電電壓為4.2 V,當外部充電電源掉電時,CN3062自動進入低功耗睡眠模式,耗電電流小于3 mA。此外,電路設計有充電狀態指示燈,指示電池是否進入充電狀態以及充電是否飽和。外接充電電源采用USB電源進行充電。鋰電池充電電路如圖3所示。

圖3 鋰電池充電電路
3)nRF24L01無線模塊接口電路。nRF24L01無線模塊接口為標準8腳雙列直插排針接口,其中模塊使能端口CE接單片機的P1.2口、SPI使能端口CSN接P1.3口、SPI時鐘信號SCLK接P1.7(即單片機復用SCLK口)、SPI數據輸出端口MOSI接P1.5(即單片機復用 MOSI口)、SPI數據輸入端口MISO接 P1.6(即單片機復用 MISO口)、IRQ接 P3.3(即單片機外部中斷 1)[3]。
4)激光二極管發光電路。本設計采用650 nm激光二極管,其工作電壓1.5~2.5 V,工作電流小于100 mA,具體電路如圖4所示。

圖4 激光二極管發光電路
該部分硬件主要由主控芯片、nRF24L01模塊、USB接口等部分構成。其中nRF24L01模塊負責接收手持端發送的數據;USB接口采用PDIUSBD12專用USB接口芯片,負責向PC機發送數據,以控制PC機;RS232串口主要負責程序下載以及調試過程中調試信息顯示;主控芯片采用STC89C52RC單片機,主要負責控制nRF24L01模塊接收數據、處理數據和控制PDIUSBD12向PC機發送數據。PC機接收端硬件電路框圖如圖5所示。

圖5 PC接收端硬件電路框圖
1)主控芯片外圍電路
考慮到單片機內部FLASH大小以及IO口數量,本設計采用STC89C52RC,復位電路為高電平復位。主要外圍電路接口有 8個 PDIUSBD12并行數據口 D0~D8,PDIUSBD12中斷口接單片機外部中斷0(即D12_INT接P3.2)。nRF24L01 模塊接口有 CE,CSN,SCK,MISO,MOSI,IRQ,分別接單片機P1口線,采用模擬SPI接口與nRF24L01進行通信。
2)PDIUSBD12外圍電路

圖6 PDIUSBD12外圍電路
PDIUSBD12是帶并行總線的USB接口器件,符合通用串行總線USB 1.1版規范,集成了SIE FIFO存儲器、收發器以及電壓調整器,可與任何外部微控制器/微處理器實現高速并行接口2 MByte/s,具有良好EMI特性的總線供電能力,可通過軟件控制與USB的連接,具有內部上電復位和低電壓復位電路[4]。本系統采用8位并口數據段與單片機相連,圖6中LED與PDIUSBD12的GL_N引腳相連,當PDIUSBD12與計算機握手成功時會產生一個低電平脈沖信號,LED指示燈閃爍[5]。PDIUSBD12外圍電路如圖6所示。

圖7 USB數據接口及USB供電電路
3)USB接口電路及USB供電電路
USB數據接口及USB供電電路如圖7所示。系統從USB端口引出USB電源作為系統工作電源,圖7中R3電阻值為0 Ω,當后續電路發生短路時,產生電流過大將燒壞電阻R3,斷開系統與計算機的電源連接,從而保證了計算機的USB端口不被損壞。同時增加L1作為上電指示燈。

圖8 手持發射端軟件設計流程圖
手持端軟件設計主要由按鍵檢測和nRF24L01無線數據發送兩大部分構成,在系統初始化完成后啟動定時器并循環檢測有無按鍵發生:如果沒有按鍵發生并且定時時間達到3 min則認為系統3 min沒有被使用,為了降低功耗則讓 nRF24L01模塊以及STC12LE4052單片機進入掉電模式;如果有按鍵發生則判斷鍵值并且清除定時時間重新開始計時,根據鍵值控制nRF24L01發送數據。手持發射端軟件設計流程圖如圖8所示。

圖9 PC機接收端軟件設計流程圖
本部分在系統中主要負責接收并處理手持端發送的數據,然后通過USB向計算機發送指令。PC機接收端軟件設計流程圖如圖9所示。
為了實現單片機對計算機的控制,采用了一個虛擬USB鍵盤,這樣單片機能夠發送計算機鍵盤上的任意一個按鍵,并且計算機能夠識別這個按鍵,其功能和計算機上的鍵盤完全一樣。
在本系統設計中共使用到3個獨立按鍵,一個組合按鍵,其中上翻頁鍵為UpArrow1,鍵值為0X52;下翻頁鍵為DownArrow1,鍵值為0X51;退出全屏播放為ESCAPE,鍵值為0X29;從當前頁播放為組合鍵LeftShift(鍵值為0XE1)+F5(鍵值為0X3E)。
筆者設計的通過nRF24L01點對點無線通信實現便攜式可充電的多媒體激光筆能夠實現用手持端遠程控制PPT幻燈片上下翻頁、從當前頁播放、退出播放等預設功能,手持端能夠使用USB電源進行充電。
[1]吳鍵,袁慎芳,無線傳感器網絡節點的設計和實現[J].儀器儀表學報,2006(9):21-23.
[2]昂志敏,金海紅,范之國,等.基于ZigBee的無線傳感器網絡節點的設計與通信實現[J].現代電子技術,2007(10):5-8.
[3]張慶國,童賽美.基于nRF24L01的點對點高速無線數據傳輸系統設計[J].計算機編程技巧與維護,2009(18):136-140.
[4]李志超,傅建明,許繪香.基于USB接口的高頻RFID閱讀器設計與應用[J].人力資源管理,2010(4):183-184.
[5]劉云朋,陳陽.USB控制芯片PDIUSBD12典型應用研究[J].計算機知識與技術.2009(25):245-247.