STM32的便攜式手機藍牙考勤機系統(tǒng)設計
摘要:在研究各種考勤系統(tǒng)的基礎上,提出了一種手機藍牙實現(xiàn)考勤的方法。該系統(tǒng)采用STM32F103RBT6微處理器作為核心,利用藍牙模塊搜索手機藍牙設備與本地數(shù)據(jù)庫進行匹配,通過語音播報和液晶顯示兩種方式給出考勤結果。該設計可以改變傳統(tǒng)的被動式考勤方式,且成本低、操作簡便。
關鍵詞:考勤系統(tǒng);藍牙;STM32F103RBT6;SYN6288;NOKIA5110
引言
目前,大部分考勤系統(tǒng)還是磁卡考勤系統(tǒng),這類系統(tǒng)不僅簽到速度慢,而且終端設備和磁卡也造成一定成本和浪費;指紋考勤、人臉識別考勤、視網(wǎng)膜考勤等新一代考勤技術雖然大大地提高了考勤效率和準確率,但是這類考勤機的費用較高、操作比較麻煩。以上幾種都是采用被動式的考勤機制,科技的發(fā)展和生活節(jié)奏的加快為被動式考勤方式帶來了新的挑戰(zhàn),手機藍牙考勤機就是針對以上考勤機的缺點而設計的,使用手機藍牙考勤機可以實現(xiàn)人員經過即可輕松簽到。
1 考勤機硬件設計
1.1 系統(tǒng)整體硬件設計
如圖1所示,考勤機系統(tǒng)主要由以下5個部分組成:基于Cortex-M3核的STM32F103RBT6微處理器作為核心控制器件,主要負責控制系統(tǒng)各部分的工作和交換數(shù)據(jù);藍牙模塊用于搜索手機藍牙設備,并將查找到的手機藍牙設備地址通過異步串行通信發(fā)送給微處理器STM32F103RBT 6;SYN6288語音芯片通過UART接口來實現(xiàn)數(shù)據(jù)傳輸,實現(xiàn)“應到”與“實到”的人數(shù)語音播報;NOKIA5110液晶顯示屏顯示考勤結果,微處理器通過SPI1接口將考勤結果發(fā)送給顯示屏進行顯示;SD卡/U盤保存用戶信息,微處理器通過SPI2接口將數(shù)據(jù)發(fā)送到SD卡/U盤,然后通過讀取SD卡/U盤來獲得簽到者的信息。本系統(tǒng)出于便攜的目的,采用了低功耗設計,系統(tǒng)只需外接兩節(jié)普通1.5 V干電池即可連續(xù)工作數(shù)月以上。各部分均采用獨立的硬件接口,互不干擾。
1.2 藍牙模塊及外圍電路設計
系統(tǒng)所使用的藍牙模塊采用廣州匯承信息科技有限公司生產的HC-05芯片。HC-05是民用級,支持當前絕大多數(shù)手機藍牙設備,并可向上兼容其他更高協(xié)議。該模塊具有集成度高、穩(wěn)定性好、功耗低、外圍電路少等優(yōu)點,完全滿足本系統(tǒng)的需求,圖2是藍牙模塊的外圍電路。其中STATUS_OUT是輸出狀態(tài)指示燈引腳,考勤時D1會閃爍,說明藍牙模塊正常工作;MOD引腳是藍牙AT模式選擇引腳;RXD和TXD是串口通信接口,實現(xiàn)串口通信功能。
1.3 STM32微處理器
STM32系列微處理器基于ARM Cortex—M3內核,是專為要求性能高、成本低、功耗低的嵌入式應用而設計的。本設計采用的是STM32F103 RBT6芯片,屬于“增強型”系列,時鐘頻率最高可達72 MHz,內置32 KB RAM和128 KB高速Flash存儲器。128位寬度的存儲器接口和獨特的加速結構使得32位代碼能夠在最大時鐘速率下運行。在本系統(tǒng)中,使用了STM32F103RBRT6的UART0、UART1、SPI1、SPI2、RTC等功能,充分發(fā)揮了STM32F103RBT6的性能優(yōu)勢。
1.4 NOKIA5110液晶屏
NOKIA5110液晶屏具有以下特點:
①84×48的點陣LCD,可以顯示4行漢字;
②采用SPI接口與主處理器進行通信,減少了接口信號線數(shù)量(包括電源和地在內的信號線僅有9條),支持多種串行通信協(xié)議(如AVR單片機的SPI、MCS-51的串口調試模式等),傳輸速率高達4 Mbps,可全速寫入顯示數(shù)據(jù),無等待時間;
③可通過導電膠連接模塊與印制版,不用連接電纜,用模塊上的金屬鉤可將模塊固定到印制板上,因而非常便于安裝和更新;
④LCD控制器/驅動器芯片已綁定到LCD晶片上,模塊的體積很??;
⑤采用低電壓供電,正常顯示時的工作電流在200μA以下,且具有掉電模式。
圖3是考勤結果在NOKIA5110液晶上的顯示效果圖。該液晶模塊操作簡單,實用性強。
1.5 語音模塊
本系統(tǒng)采用北京宇音天下公司出品的中高端TTS(文本到語音)芯片SYN6288。該芯片支持GB2312、GBK、BIG5及UNICODE內碼格式的文本。語音合成效果清晰、自然、準確。芯片較強的中文姓氏處理能力使得因簽到人員姓名的不確定性所導致誤報的可能性大大降低。利用其內置的聲音提示音,使得語音播報效果更加自然。
2 系統(tǒng)軟件設計
2.1 系統(tǒng)軟件總體流程
圖4是系統(tǒng)總體流程圖,從圖中可以看出系統(tǒng)執(zhí)行的一個總體過程。系統(tǒng)上電復位后,讀取藍牙模塊的配置文件,通過菜單選擇相應的考勤模式,搜索周邊手機藍牙設備地址,并與本地數(shù)據(jù)庫藍牙地址進行匹配。該考勤機系統(tǒng)可以實現(xiàn)手動考勤和定時考勤兩種考勤模式;信息采集可以實現(xiàn)單獨采集和批量采集兩種方式;同時可以通過SD卡/U盤來保存數(shù)據(jù)。
下面是系統(tǒng)主程序,主要是實現(xiàn)系統(tǒng)菜單的選擇,然后進入每個菜單模塊進行操作,從而完成不同的考勤模式選擇、系統(tǒng)配置、時鐘設置和移動設備的選擇等操作。
2.2 獲取SD卡/U盤中的考勤數(shù)據(jù)庫
首先,在SD卡/U盤建立一個考勤群體的Excel數(shù)據(jù)庫文檔,如圖5所示;然后,通過實地信息采集,獲得考勤人員的藍牙地址,保存起來,如圖6所示;考勤時搜尋手機藍牙地址,并與數(shù)據(jù)庫中的藍牙地址進行比對,就可以實現(xiàn)考勤功能,如圖7所示??记谌藛T的數(shù)據(jù)庫大小可以根據(jù)需要來定義,按照上面的步驟實現(xiàn)考勤的功能。
2.3 微處理器與藍牙模塊通信和數(shù)據(jù)處理
STM32F103RBT6的UART接口提供了一個分數(shù)波特率發(fā)生器,保證了數(shù)據(jù)通信的低誤碼率。同時,它支持同步單向通信和單線半雙工通信,使用多緩沖器配置的DMA方式,可以縮短考勤數(shù)據(jù)交互與處理時間。因考慮到考勤過程中微控制器與藍牙通信模塊問涉及大量的數(shù)據(jù)信息的交互,為了保證數(shù)據(jù)的可靠性,配置藍牙模塊工作在AT模式2下(通信波特率38 400)。微控制器通過發(fā)送不同的AT命令,即可控制藍牙模塊獲取有關藍牙設備的相關信息。藍牙模塊在收集到藍牙設備的相關信息后,通過UART通信將數(shù)據(jù)信息反饋給微處理器,微處理器在接收到藍牙模塊收集到的信息后,對報文進行分析整合,完成數(shù)據(jù)的處理。
結語
藍牙技術與考勤設備相結合,以手機替代傳統(tǒng)磁卡等作為簽到標識的考勤方式,大大提高了考勤效率,在降低成本的同時方便了企業(yè)的管理??梢酝ㄟ^查找Excel文件數(shù)據(jù)庫來獲得考勤人員的數(shù)據(jù),同時也易于文檔的管理和保存。測試結果表明,該系統(tǒng)具有反應速度快、通過率高等優(yōu)點,可實現(xiàn)對傳統(tǒng)考勤系統(tǒng)的升級與替換,適應不同企業(yè)的需求,有著很好的應用前景。