前言:想要寫出一篇引人入勝的文章?我們特意為您整理了STM32下學生課堂手機管理系統探析范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:目前,學生擁有手機比較普遍,給課堂管理帶來一定的不便。而傳統的手機袋管理模式存在管理不便、效率低下的問題。基于“stm32控制器+上位機”的手機管理系統讓學生通過自帶的數據線將手機連接到STM32控制器的USB口,控制器實時監測并將數據傳送至上位機,上位機軟件直觀顯示學生手機上交情況,方便教師管理,提高了課堂手機管理水平。同時,系統設計有語音提示及一些教學功能,也能夠滿足課堂教學的基本需要。
關鍵詞:STM32;單片機;手機管理;課堂管理
隨著科學技術的發展、生活水平的提高,智能手機越來越普及,并越來越影響和改變著人們的生活方式和習慣。學生擁有手機帶來便利的同時,也產生了一些負面影響[1]。比如部分學生自律性較差,上課玩手機的現象屢禁不絕。目前普遍采用的管理方式是布質手機袋管理。上課前,學生將手機存放到手機袋指定編號位置,教師逐一查看手機是否交上來,時不時還要催促學生,費時費勁,效率太低,并且有部分學生以手機在充電為由,不予配合。為減少此類現象的發生,提高教師課堂手機管理的效率,設計了本系統。
一、整體設計
如圖1所示,整個系統包括控制器和上位機軟件。控制器由1塊STM32主控板和4塊手機連接板組成,每塊連接板有16個USB接口。控制器設計包括電源供電、液晶顯示、按鍵輸入、語音播報和時鐘等模塊。控制器是以STM32單片機為核心,通過USB接口電路檢測學生手機上交情況,將數據保存起來,并通過RS232數據線和上位機(教師機)通訊將數據傳送到上位機。使用時,學生按照學號將手機放在專門設計的標有學號的小方格子架上,用數據線插到USB接口。主控板不僅能夠監測手機上交情況,同時還可以對手機進行充電。上位機軟件通過Excel表格讀取班級名單,并顯示出來。通過與主控板通訊,讀取手機上繳數據,用不同顏色標示出已交手機和未交手機的人員名單,使人一目了然,方便管理。同時,軟件具有一些教學常用功能,如語音提示、時間顯示、考試計時及提示,方便教師課堂活動應用。手機接入檢測是系統設計的關鍵點。USB2.0設備的USB接口,其管腳有+V、GND、D+、D-等管腳。其中,+V、GND是設備供電管腳,D+、D-管腳是數據通信線。USB設備有高(全)速、低速設備之分,主要是通過D+、D-管腳的上拉電阻區分[2]。例如:低速設備的D-管腳接一個1.5KΩ的上拉電阻,D+不接;高速設備則相反。這樣,當USB終端設備插上HOST主機時(例如電腦),如果是高速設備,則D+被拉高,D-不變;低速設備則與之相反[3]。插上設備之后,D+、D-管腳呈現不同的電平信號,可以通過此特性,判斷手機是否接入系統。
二、主要硬件電路設計
(一)STM32單片機
主控板采用STM32F103ZET6單片機作為核心設計芯片。STM32是意法半導體公司基于ARM公司32位Cortex-M3框架內核結構設計的中等容量MCU,其具有64KB-128KB的Flash存儲器,20KB的SRAM存儲器,多達80個IO口,片上外設資源豐富,如USB、CAN、Timer、I2C、USART等[4]。其運行頻率達到72MHz,運行速度快,完全滿足該系統設計要求,同時具有Serialwiredebug(SWD)&JTAGinterfaces仿真接口,方便開發調試。
(二)手機接入檢測電路設計
手機接入檢測電路設計如圖2所示。USB接口是A型接口母座,其D+、D-數據線通過15K的下拉電阻接地。手機通過USB數據線插入到該接口時,在D+、D-管腳呈現一個高低電平信號,高電平約2.3V,低電平約0.3V。為了電平穩定檢測,提高抗干擾能力,使用電壓比較器設計整形電路,使輸出高電平為3.3V,低電平為0V。電壓比較器的輸出接至單片機的IO口,作為手機接入的檢測。
(三)RS232通訊電路設計
主控器和上位機軟件的通訊,主要采用串口協議,其電路設計如圖3所示。主芯片采用美信公司的MAX232ESE,其是RS232協議通訊芯片,采用雙通道收發,通訊波特率高達120kbps,具有外圍電路簡單、通訊速率高、傳輸距離遠、穩定可靠的特點[5],滿足設計要求。
(四)液晶顯示電路設計
主控器上的液晶屏能夠顯示手機上交情況及其他一些信息。使用晶聯訊電子的JLX19296-770液晶屏作為人機交互界面,能夠顯示192×96點陣的單色圖片,具有LCD背光、功耗低、指令功能強、接口簡單、傳輸速率高、可靠性高等特點。配合字庫芯片,能夠顯示各種字形和圖案[6]。
三、軟件設計
(一)單片機程序設計
單片機程序設計包括按鍵檢測模塊、語音模塊、液晶屏顯示控制模塊、時間模塊、串口通訊模塊。主程序采用輪詢的處理方法,對手機接入情況進行檢測,將數據保存并顯示在顯示屏;同時,實時讀取時間芯片,更新液晶顯示。有按鍵按下時,進入相應的顯示界面,同時播報相應的語音提示。單片機和上位機通訊,按照自定義格式的協議通訊。其通訊幀格式如下:STX+Data[0]+Data[1]+…+Data[15]+SumH+SumL。其中,STX是幀開頭,固定為0X02;數據Data[0]~Data[15]等數據為手機接入檢測數據,將一個字節拆分為兩個字節后,轉為ASCII碼所得;Sum為校驗和,是將STX~Data[15]數據代數和累加之后所得數據,高低字節部分拆分為兩個字節轉ASCII所得。單片機發送數據,采用中斷的方式,即待發送的字節寫入發送緩沖區之后,發送數據長度減一。數據發送完產生中斷請求,單片機進入中斷服務函數,判斷發送數據長度是否為零,如果不為零,繼續發送下一個字節,同時數據長度減一[7]。重復此流程,直至數據長度為零,如圖4所示。
(二)上位機軟件設計
上位機軟件設計采用VisualBasic語言編寫,主要模塊有Excel讀寫模塊、語音播報模塊、顯示模塊和通訊模塊。為方便不同的班級使用,Excel表格存放各班學生的姓名和學號信息。軟件運行時點擊“打開班級”即可選擇班級的Excel表格,導入學生信息。語音播報模塊主要是播報語音,輸出到多媒體音箱,起到提醒作用,如請交手機、拿回手機等。顯示模塊主要是顯示已交手機和未交手機的學生名單。通訊模塊,軟件主要是通過SerialPort控件[8],實現與STM32主控板的通訊。
四、小結
經過制作與驗證,本手機管理系統能夠兼容檢測安卓和蘋果手機。學生手機插上數據線連接USB口后,都能夠被主控板檢測出來,同時也能夠對手機進行充電。軟件界面友好,能夠實時監控手機上交情況,同時語音提示功能也方便了教學管理。不足之處是,手機充電電流偏小,沒有正確配置D+、D-電壓,導致充電時間過長。部分學生手機充電線只有VBus和GND兩根線,無D+、D-數據線,只能夠充電,無法監控。整體而言,手機管理的功能基本上達到了預期功能,滿足了課堂教學管理需要。
作者:郭興龍 單位:廣東省廣州市市政職業學校