蔣鵬
摘要:本項目教師端和學生端能夠實現一對一或一對多的無線通信,具備了學生端自動簽到,教師端提問、答疑提示以及無線搶答器功能。并且結構簡單、成本較低、攜帶便利。
關鍵詞:STM32;師生互動;NRF24L01
中圖分類號:TP368 文獻標識碼:A 文章編號:1007-9416(2018)09-0009-01
基于對單片機的興趣,加上平時上課的觀察。我們認為現在學生的學習積極性不高,課堂上的師生互動較少,因此我們計劃設計一套師生互動平臺,應用于課堂教學中,輔助教師授課,活躍課堂氣氛。該平臺能夠實現學生端自動簽到、學生端提問提醒、教師端答疑提示、搶答等功能。我們認為該平臺能夠有效的幫助老師課堂授課并且能夠提高學生的學習興趣和教學過程中的參與度。
1 項目功能描述
該項目是圍繞著輔助課堂教學進行設計的,因此項目具備以下基本功能:(1)識別學生是否在線,判斷學生是否在教室上課。(2)能夠通過教師端指定學生回答問題,學生端會出現相關提示。(3)能夠實現搶答器功能。(4)在答疑過程中,有疑問的學生按下學生端相應的按鍵,該學生對應的信息就會出現在教師端平臺上。
2 硬件選擇
該項目的難點在于通信方式,如果采用有線方式,系統的組網會很困難,而且整個系統將會受到線路的限制,教師端也很難同時連接多個學生端。因此本項目采用NRF24L01模塊進行無線通信,該模塊具有通信距離遠,并且能夠實現一對一、一對多的通信模式,完全符合項目需求。NRF24L01是由NORDIC生產的單片無線收發器芯片,NFR24L01具有較高的通信速度,較遠的通信距離。在項目中教師端的NRF24L01可以與多個學生端的NRF24L01進行通信,因為NRF24L01具有6個通道,在同一通信頻率下一個主機可以和六個從機進行通信,也就意味著一個教師端可以與六個學生端進行通信。當需要更多的學生端時,可以通過增加一個教師端的NFR24L01,并且更改通信頻率來實現,這樣不同頻率的NRF24L01組之間的通信就不會相互干擾。NRF24L01還能夠開啟自動應答功能,教師機挨個給學生機發送詢問信息,開啟了自動應答后學生機在收到教師機的詢問信息后會自動應答,利用自動應答功能就能夠實現互動平臺的學生端在線簽到功能。
該項目教師端需要顯示較多的信息,如學生簽到情況、答疑情況等,數碼管和普通的液晶屏滿足不了設計需求。因此本項目采用了TFTLCD3.5寸彩屏,該屏幕色彩豐富,亮度高,支持中英文顯示并且可自定義字體及大小,非常適合應用于教師端。學生端則不需要配備顯示器,只需要發光二極管及蜂鳴器即可,即可滿足項目需求也能大大降低項目成本。
由于項目中采用了TFTLCD3.5寸彩屏,主控模塊就需要有更快的運行速度來滿足顯示器的顯示及信息刷新,并且還需要兼顧和NRF24L01的無線信息交換,這就要求主控模塊還需要有更高的可靠性,因此該項目主控模塊選擇了STM32F103C8單片機,STM32系列單片機具有72MHZ的時鐘頻率,運行速度快、可靠性高,并且型號眾多,用戶可以根據需求選擇最合適的型號,在同類產品中有較大的優勢和較高的性價比。
3 硬件設計
該項目硬件分為教師端和學生端兩個部分,教師端由:STM32F103C8、NRF24L01、TFTLCD3.5寸彩屏、按鍵構成,實現學生簽到情況顯示,學生搶答提示及指定學生回答問題功能。學生端由:STM32F103C8、NRF24L01、按鍵及蜂鳴器構成,實現簽到、搶答及教師提問提示功能。
4 TFTLCD3.5接口電路設計
TFTLCD的數據口A0~A7與STM32F103C8單片機的PA0~PA7相連,進行數據交換。片選信號CS與PB0連接;復位信號RST與PB1連接;命令/數據選擇位RS與PB2連接,由PB2決定發送信息的為命令還是數據;寫信號WR與PB3連接,當該位有效時,單片機能夠將命令、數據發送至顯示器中;讀信號RD與PB4連接,當該位有效時單片機能夠讀取顯示器中的信息,接口電路如圖1所示。
5 NRF24L01接口電路設計
NRF24L01的CE、CSN、IRQ、SCK、MISO、MOSI分別與STM32F103C8單片機的PB10~PB15相連,CE用于控制NRF24L01的狀態,CSN為片選信號,IRQ是中斷信號,SCK、MISO、MOSI用于高速數據傳送。接口電路如圖2所示。
6 軟件設計
系統初始化流程圖如圖3所示,教師端和學生端的系統初始化流程基本相同。在初始化中分別對TFTLCD、NRF24L01、中斷系統及延時程序和獨立看門狗進行初始化,在學生端不需要TFTLCD初始化,因為本項目具有多個學生端,考慮成本問題在學生端中并沒有配備TFTLCD屏。
教師端流程圖如圖4所示,教師端首先檢測本身的NRF24L01是否正常,并且在顯示屏顯示NRF24L01狀態。當NRF24L01在線時,教師端逐個檢測學生端的NRF24L01是否應答,通過應答與否來判斷學生是否在教室,實現在線簽到功能,并且將結果顯示在顯示屏上。同時,教師端還要檢測按鍵狀態,當相應按鍵按下時執行對應的程序,如指定學生回答問題或者實現搶答器功能等。
7 結語
本項目經過軟硬件調試,系統運行正常,已達到項目預期目標。教師端與學生端無線通信狀態良好、數據傳送穩定,基本功能使用正常,本項目具有一定的實用價值。
參考文獻
[1]譚浩強.C程序設計(第二版)[M].清華大學出版社,1999.
[2]楊振江.基于STM32 ARM處理器的編程技術[M].西安電子科技大學出版社,2016.