任璐+李文石+錢敏



摘 要:無線記分系統的設計分為發送端和接收端兩部分。發送端控制程序通過RS232串口通信發送比分數據到單片機控制的下位機,并經由nRF24L01無線射頻模塊的天線發送數據;接收端通過單片機控制的無線射頻模塊天線接收數據,并使用8段LED數碼管顯示記分情況。系統的整體設計包括硬件電路、軟件程序設計;發送端上位機界面程序采用VB6.0設計,發送端下位機和接收端單片機程序采用C51。給出了軟件設計流程圖、硬件實物運行現場圖。測試表明,系統運行性能良好。
關鍵詞:無線計分系統;單片機控制;nRF24L01;后臺控制
中圖分類號:TP274.2;TN925 文獻標識碼:A DOI:10.15913/j.cnki.kjycx.2016.22.005
體育比賽深受人們喜愛,比賽記分是比賽過程的重要組成部分。相比于大型比賽采用昂貴的大型電子記分系統,大部分中小型球賽依舊采用傳統人工翻牌的記分模式。因此,針對以上問題,我們設計了一款輕巧的便攜型式電子無線遙控記分系統,成本相對低廉。該系統采用NORDIC公司的nRF24L01無線通信收發芯片和STC公司的STC89C52RC單片機。系統的硬件電路簡單,電路制作費用低 。經過多次實驗測試,系統的工作性能穩定,效果良好,可以廣泛運用于中小型球類比賽。
1 系統總體方案
該無線遙控記分系統由發送端、接收端兩部分組成;發送端由上、下位機兩部分組成;下位機由觸摸按鍵、LED顯示數碼管、nRF24L01射頻發送模塊和MCU核心處理單元構成;上位機采用PC,通過普通9針RS232串口與下位機通信;接收端由nRF24L01射頻接收模塊、MCU核心處理單元、LED顯示數碼管組成。系統結構如圖1所示。
2 系統硬件設計
發送端下位機硬件系統包括主控制單元我國、射頻收發模塊、晶振電路、復位電路、顯示單元、串口通信單元(包括電平轉換模塊)、電源模塊等。接收端包括主控制單元、射頻收發模塊、晶振電路、復位電路、顯示單元、電源模塊等。下面介紹主要部分電路的設計。
2.1 核心處理單元
核心處理單元采用STC公司生產的低功耗、高性能、超強抗干擾的微控制器STC89C52RC。基于CMOS工藝,攜有8 K在系統可編程Flash存儲器,與80C51產品指令和引腳完全兼容,能為眾多嵌入式控制應用系統提供高靈活度非常有效的解決方案。
STC89C52RC單片機內部資源豐富,系統設計過程時充分利
———————————————————————————
用了這一特性,將其作為主控芯片,沒有增加過多外設。單片機的I/O端口具體資源利用情況為:P1口及中斷與nRF24L01射頻收發模塊相連接,控制信息的發送/接收;P0口與數碼管的段選線連接,控制顯示的字段;P2端口與數碼管的位選線相連接,控制顯示數字的位;P3.0口(Rxd)與MAX232芯片的T2 OUT引腳相連;P3.1口(Txd)與MAX232芯片的T2 IN引腳相連接。P3.0和P3.1兩端口作為PC機和單片機之間的串行通信口,負責兩機之間信息傳輸的橋梁。軟件部分是單片機對nRF24L01讀/寫控制使之讀出當前的比分值,并實現與PC機的通信。
PC機的串口是RS-232電平,單片機的串口是TTL電平,為了使其能夠進行通信,使用集成芯片MAX 232進行電平轉換。
2.2 射頻模塊
nRF24L01是單片射頻收發芯片,工作于2.4~2.5 GHz ISM頻段。低功耗工作電壓為1.9~3.6 V。工作溫度范圍較大,可在-40~80 ℃內正常工作。nRF24L01配外置天線,無阻擋傳輸距離50~100 m,配PCB內置天線,無阻擋傳輸距離為20~50 m。該芯片有125個通訊通道,可滿足多點通訊和調頻需要。無線收發器包括頻率發生器、增強型Shock BurstTM模式控制器、功率放大器、晶體振蕩器、調制器、解調器。輸出功率、頻道選擇和協議的設置可以通過SPI接口進行設置。空中數據傳輸率最高可達2 Mb/s,有自動應答和自動再發射功能。通過對相應寄存器的寫入和讀出來完成對芯片的控制,比如實現nRF24L01相應寄存器的初始化工作、識別處理數據的收發情況,并確保在數據傳輸中不發生數據丟包現象等。
PCB 布線的質量對射頻性能有很大影響,一個差的PCB板設計可能導致丟包,甚至可能導致無法實現其應有的功能。nRF24L01的射頻PCB板設計及其周邊元件包括匹配網絡等可以從Nordic下載。此外,使用至少兩層板(包括一個地層)。nRF24L01的直流供電電源應盡可能靠近芯片的 VDD 引腳,并經高質量的RF電容去耦;最好用一個大電容 (比如4.7 uF的鉭電容)并聯一個小電容;nRF24L01的供電電源必須經過很好的濾波,并與數字供電電源分離。
PCB板避免使用長的電源走線,所有元器件的地、VDD及去耦電容應盡可能地靠近nRF24L01芯片。如果在PCB 板的頂層有鋪銅“地”,VSS應直接與鋪銅面連接;如果在PCB板的底層有鋪銅“地”,則應該在離VSS腳盡可能近的地方放置過孔連接。每個VSS最少應有一個過孔,所有數字信號線和控制信號線都不能與晶振和電源線距離過近。
*[基金項目]江蘇省高等學校創新創業訓練計劃項目(編號:201413983008Y)
2.3 四位LED數碼管顯示
顯示部分是一個四位8段LED數碼管。8段數碼管由多個發光二極管封裝在一起組成“8”字形,引線在元件內部已連接完成,只引出各個筆段和公共電極。其工作環境范圍寬泛,可達-40~75 ℃;壽命長,正常情況下可超過80 000 h。數碼管外殼采用阻燃PC塑料制作,強度高、抗沖擊、抗老化、防紫外線、防塵、防潮。
8段數碼管可以通過專用驅動芯片控制,可滿足各種復雜工程需求。為了點亮數碼管,可以選擇靜態驅動方式或動態驅動方式。
在本系統中,數碼管采用動態驅動方式。該方式中,四位數碼管的段選線相應的并聯在一起,由一個8位I/O端口控制,形成了段選線的多路復用。而位選線分別由相應的I/O線控制,實現了各位的分時選通。
2.4 觸摸按鍵
本設計中發送端下位機上設置了幾個按鈕,可作為直接計分數據的發送開關,用于測試和手持式控制。此時,不需要使用上位機。由于本系統中所需按鍵數較少,因此,采用彈性小按鍵作為觸摸按鍵,直接用I/O端口線構成單個按鍵電路,接口電路配置靈活、軟件結構簡單。按鍵輸入采用低電平有效工作模式。
3 系統軟件設計
3.1 發送端下位機/接收端C51軟件設計
發送端下位機/接收端C51程序設計包含微控制器的初始化、對nRF24L01的訪問和對四位8段數碼管的控制。根據系統的硬件設計,需要對nRF24L01模塊和數碼管顯示模塊進行硬件資源的配置和定義。
nRF24L01模式是由PWR_UP、CE和PRIM_RX三個引腳定義的,根據系統的需要來配置其工作狀態。在配置時,需要分別根據三個引腳的不同狀態配置不同模式。以下僅列出部分硬件資源。
單片機數據發送流程為:①將接收機的地址(RX_ADDR)和要發送的數據(TX_DATA)寫入nRF24L01;②配置寄存器(CONFIG寄存器)的工作模式,使其處于發送模式后,通過微控制器將CE拉高,時長至少10 μs;③讀取狀態寄存器STATUS內的內容;④判斷發送完成標志位是否被置位;⑤清空標志位和數據緩沖,nRF24L01進入空閑狀態。
單片機數據接受流程為:①將本機的地址和要接收的數據寫入nRF24L01;②配置CONFIG寄存器,使其切換為接收模式,然后將CE拉高,時長至少130 μs;③判斷接收完成標志位是否被置位;④清空標志位;⑤讀取數據緩存區內的數據;⑥清空數據緩沖,此后nRF24L01進入任意模式。
對于數碼管顯示模塊程序而言,出于節省I/O口、減小功耗的考慮,數碼管顯示采用動態掃描方式,P2.0~P2.3作為位選信號的輸出端,P0.0~P0.7作為段選信號輸出端,利用人眼的視覺暫留現象和二極管的余暉效應達到顯示效果,具體如下:
3.2 發送端上位機主控界面VB軟件設計
為了方便進行一體化控制,比如計分數據存儲、多場次計分等,本系統設計了后臺PC上位機主控制界面程序,采用VB6進行程序設計。上位機和下位機之間采用通用RS232串口進行數據通信。程序控制界面設計如圖2所示。
后臺主控制程序VB初始化程序如下:
4 結束語
本項目根據實際需要完成了計分系統的研究與設計,包括整機設計、下位機底層硬件和軟件設計,較好地達到了預期目標,系統實物圖如圖3所示。圖中列出了發送端上位機(PC控制臺界面)、下位機(圖中所示為發送端)、串口連接線和接收端。
系統充分利用了STC89C52RC單片機微型化、低功耗、抗干擾能力強和nRF24L01可較遠距離傳輸信息等優點,節省了電力和人力成本。該系統可根據賽制要求更改,以適用于不同的競賽場合。
參考文獻
[1]李賀,程祥,曾令國.基于nRF24L01芯片的近程無線通信系統設計[J].現代電子技術,2014(15).
[2]叢林,楊凱,胡文東,等.基于nRF24L01和STM32L152RD超低功耗無線通信系統[J].電視技術,2013(17).
[3]謝明明,陳學崗,陳常婷.基于nRF24L01+的數據無線傳輸系統的設計與實現[J].電子設計工程,2013(20).
[4]莢慶,王代華,張志杰.基于nRF24L01的無線數據傳輸系統[J].現代電子技術,2008(07).
[5]時志云,王代華,張志杰.基于nRF24L01和PICl6F877的無線數據傳輸系統設計[J].電子測量技術,2008(01).
〔編輯:張思楠〕