楊亞男,姚世豪,吳振輝
(1.黃河水利職業技術學院 電氣工程學院,河南 開封 475004;2.河南開封科技傳媒學院 信息工程學院,河南 開封 475000)
單片機開發板是現階段單片機技術在電子、嵌入式、物聯網等行業的重要應用,是為滿足廣大學生、技術人員、產品開發人員迅速學習和掌握單片機這門技術而設計的一款學習型電路板,也稱單片機學習板、單片機開發板[1]。在嵌入式、物聯網、人工智能迅猛發展的時代背景下,現今市場上常見的8 位MCU 已經不能滿足行業的應用需求[2]。國內市場應用最為廣泛的國產STC 單片機的生產公司,為了滿足行業發展的需求,推出了高性能的基于8051 內核的STC8H 系列的8 位單片機、STC32G 系列32 位單片機產品[3]。市場上現有的單片機學習板/開發板/電路板,均是由傳統的單片機芯片設計制作的,導致廣大學習者、開發人員無法順利地學習最新的STC8H 系列/STC32G 系列單片機。
本文設計了一款基于STC32G/STC8H 系列單片機的多功能、簡易型學習開發電路板,相同頻率下最高可比傳統的8051 單片機快70 倍,運行于30 MHz 工作頻率的STC32G系列單片機的指令效率大約相當于60 MHz 工作頻率的ARM Cortex-M0。該系列單片機還具有16 通道高速12 位ADC 轉換器、硬件SPI、硬件I2C、看門狗、互補對稱死區的高級PWM、RTC 時鐘、CAN、DMA、USB 等豐富的內置外設資源,支持全速USB 協議、USB 直接程序下載及仿真調試功能。板載資源既設計有單片機基礎學習必備模塊,也設計有豐富的無線物聯網模塊接口,滿足廣大學習和應用者基礎學習需求的同時,也滿足了現階段嵌入式、物聯網行業發展過程中的開發應用需求。
本文的開發板兼容國產STC 公司的STC8H8K64UPDIP40、STC32G12K128-PDIP40 型單片機芯片,是一款功能較為完善的簡易型低成本單片機學習實踐用電路板。板載資源的基礎學習部分有8 位LED 燈、LED-RGB 全彩LED燈、4 位獨立按鍵、1 位無源蜂鳴器、1 個四位一體的共陽極數碼管;常用擴展模塊部分設計有LCD1602 顯示屏接口、LCD12864 顯示屏接口、OLED12864 顯示屏接口、超聲波傳感器接口、溫度傳感器接口、紅外傳感器接口;無線物聯網部分設計有藍牙接口、WiFi 接口、LoRa 接口;功能部分電路設計有USB-B 型供電及串行程序下載仿真接口、Type-C型供電及程序下載仿真接口、5 V 轉3.3 V 穩壓電路、5 V 和3.3 V 系統供電電路跳線、CH340N 的USB 轉串口電路等。
本文選用KeilC51、KeilC251、IAREmbedded Workbench等作為單片機程序開發工具。該開發板在電路的設計以及所支持的常用外設資源方面,都能夠降低學習者初期的學習成本和難度[4]。
LED 燈的控制操作是單片機學習內容中最簡單、最基本的學習模塊,學習者對MCU 的學習均是從LED 燈的亮滅控制開始,也是MCU 的I/O 口輸出高低電平控制的直觀表現[5]。本文采用8 路LED 燈共陽極設計,LED 燈的負極端與MCU 的P1 口連接,使用P0 口的8 個I/O 口分別對8 個LED 進行控制,LED 的正極端通過限流電阻與系統電源連接,其中系統電源可以通過跳線斷開,可避免在將MCU 的P0 組I/O 應用于其他功能時LED 燈對其有干擾。LED 電路設計如圖1(a)所示。

圖1 基礎學習部分硬件電路設計
LED 數碼管是在學習單片機的初級階段涉及到單片機的I/O 口快速輸出功能時最為常見且簡單易學的數字顯示器件,是單片機學習板不可或缺的組成部分[6]。本文設計的LED數碼管顯示電路采用一個四位一體共陽極數碼管,便于對靜態數碼管顯示、動態數碼管顯示的控制操作。數碼管的公共段選端與MCU 的P2 組I/O 連接,四位數碼管的四個位選端由MCU 的P41、P42、P44、P45 四個I/O 口通過PNP 三極管進行選擇控制。三極管的電源供電部分通過一個跳線與系統電源連接,可使學習者在使用相關引腳的其他復用功能時避免數碼管的干擾。數碼管電路設計如圖1(b)所示。
作為人機交互的關鍵部件,按鍵是單片機初級學習和各類產品設計過程中都不可缺少的部分,它是學習單片機I/O口輸入功能過程中最簡單的外設器件[7]。本文采用4 路觸動按鍵低電平有效方式作為輸入電路,觸動按鍵的一端接系統GND,另一端與MCU 的P30、P31、P32、P33 四個引腳連接。在無按鍵按下時,因MCU 的I/O 口初始化為高電平,故檢測引腳電位為高電平。當按鍵按下的時候,I/O 口檢測電位為低電平。其中P32、P33 管腳為MCU 的外部中斷0、外部中斷1 引腳,按鍵可以使用外部中斷方式進行控制。電路設計如圖1(c)所示。
LED-RGB 全彩燈可以實現1 677 萬色,可滿足應用電子產品中對各種顏色燈光顯示的需求[8]。通過學習MCU 對LED-RGB 各種顏色顯示的控制,以及對無源蜂鳴器的控制,便于掌握MCU 的PWM 調節功能。本開發板LED-RGB 全彩燈電路為共陽極設計,其中負極與MCU 的I/O 口P35、P36、P37 進行連接,電路設計如圖2 所示。無源蜂鳴器的P16 引腳通過控制PNP 型三極管進行觸發,P16 引腳可以通過跳線斷開,可避免使用外部高精度時鐘時的電路干擾,電路設計如圖3 所示。

圖2 LED-RGB 電路接口設計

圖3 無源蜂鳴器電路接口設計
紅外線的發射和接收是電子產品設計和日常生活中應用較多的無線載波通信技術,溫度傳感器采集是應用較為廣泛的溫度采集技術[9]。對紅外收發設備內容的學習便于掌握紅外載波通信數據的分析和處理;通過對溫度傳感器相應內容的學習可掌握MCU 的總線通信協議。本開發板的無線紅外接收通過P32 引腳進行控制,同時可便于利用MCU 的中斷功能。因P32 引腳與觸動按鍵復用,故使用跳線進行斷開設計,電路設計如圖4 所示。溫度傳感器接口使用P34 引腳進行控制,電路設計如圖5 所示。

圖4 紅外接收接口電路設計

圖5 溫度傳感器接口電路設計
開發學習板系統電源和3.3 V 兩路電源通過擴展由排針各引出3 路,方便有不同電壓需求的外設進行供電連接,該設計如圖6 所示。

圖6 電源供電電路
超聲波傳感器是常用的距離探測傳感器,常用于智能尋跡小車、避障機器人等領域。LCD 顯示屏是電子產品中常用的字符顯示器件,均是單片機學習過程中不可或缺的外設模塊[10]。本開發板傳感器超聲波與OLED12864 為復用接口設計,便于學習者選擇使用超聲波或者OLED12864 顯示屏,通信引腳使用單片機的P00、P01 端口,電路設計如圖7 所示。電路板設計支持LCD1602 顯示屏、LCD12864 顯示屏,考慮電子產品設計中數碼管和LCD 顯示屏一般不會同時使用,設計LCD 顯示屏通信引腳與數碼管通信引腳為相同的單片機I/O 口,LCD 顯示屏數據傳輸引腳設計使用MCU 的P2組I/O 端口,控制引腳設計使用單片機的P41、P42、P44、P45 引腳,電路設計如圖8 所示。

圖7 超聲波傳感器電路接口設計

圖8 LCD 顯示接口電路設計
隨著物聯網、人工智能的迅速發展,無線傳感的應用和開發已經成為當今單片機開發中的主要熱點[11]。結合時代發展需求,本開發板設計有藍牙模塊接口、LoRa 無線模塊接口、WiFi 模塊接口。其中藍牙模塊接口、WiFi 模塊接口使用MCU 的RXD2 串行通信引腳,LoRa 無線模塊接口使用MCU 的硬件SPI 引腳(P14、P15、P13、P54),這種設計不僅便于學習者對于無線物聯網模塊的學習和操作,也能同時學習STC32G/STC8H 系列單片機硬件串行口2、硬件SPI 通信的應用。
穩定的電源供電是系統可以正常工作和帶動負載的關鍵。低功耗的穩壓電源便于開發者進行物聯網低功耗設備的開發、設計及驗證。本文電源供電部分采用方口USB 供電、Type-C 供電設計,滿足系統負載電流需求。電壓穩壓部分采用ME6118A33B3G 的5 V 轉3.3 V 穩壓芯片,其靜態線性功耗低且性能穩定。系統供電電源5 V 或3.3 V 可以使用跳線進行切換,并且設計有自鎖開關用來控制系統電源,電路設計如圖9 所示。

圖9 電源和程序下載/仿真/通信電路設計
STC32G/STC8H 系列單片機不僅支持傳統的串行口程序下載、程序仿真和串口通信,同時新增支持USB 直接程序下載、程序仿真和USB2.0 通信。為使學習者能更充分地學習和利用STC32G/STC8H 資源,在本地電路設計中使用USB-B 型接口連接USB 轉串口電路。CH340N 芯片通過跳線可以與MCU 的P30、P31 引腳相連接,Type-C 接口通過跳線可以直接與MCU 的P30、P31 引腳相連接,這種設計既可以使用USB 轉串口進行程序下載、程序仿真和串口通信功能,同時也可以實現USB 通信、USB 直接程序下載、USB 直接程序仿真功能。電路設計如圖9 所示。
本文設計MCU 的復位引腳P54 通過一個跳線與復位電路進行連接,若需要使用復位引腳可連接跳線,若將P54 用作普通I/O 功能,即可斷開跳線。MCU 引腳雙列擴展排針,便于學習者進行其他模塊的學習測試,電路設計如圖10所示。本文PCB 電路設計及各模塊布局如圖11 所示。

圖10 最小系統電路設計

圖11 整體電路PCB 布局設計
本文設計的基于STC32G/STC8H 系列單片機的多功能開發學習電路板,填補了STC32G/STC8H 系列單片機簡易型學習開發板的空白。經過嚴格的測試及學習者的實際應用發現,本設計不僅可以滿足廣大學生、技術人員、產品開發人員迅速學習最新型的、面向現今社會發展需求的STC8H系列/STC32G 系列單片機芯片的基礎應用內容,同時更加便于對物聯網技術等方面內容的學習及開發驗證和測試。該開發板設計布局合理,板載資源囊括了常用的基礎學習模塊,各功能塊隔離科學、切換方便且外擴資源豐富多樣化,有助于使用者在單片機領域的進一步深耕和實踐。