許京雷 常靜
DOI:10.3969/j.issn.1671-489X.2023.14.139
摘? 要? 通過對微處理器課程教學目標的分析,確定該課程實驗內容設置的原則,以此為依據對實驗內容進行合理設置,對51和STM 32實驗分別舉例分析具體實驗內容,說明具體步驟和實驗要求,通過具體實踐,實現課程對操作技術的要求。
關鍵詞? 微處理器;實驗;51開發板;STM 32
中圖分類號:G642.423? ? 文獻標識碼:B
文章編號:1671-489X(2023)14-0139-03
Setting of Experiment Content of Microproce-ssor Course//XU Jinglei, CHANG Jing
0? 引言
微處理器課程是本科測控技術與儀器專業的一門學科必修課,是一門實用性較強的課程。本課程通過對微處理器中的典型產品51和STM 32的總體性能,中斷、并行、串行等技術的分析,說明產品如何實現良好的可編程性,如何將微處理器技術融入產品研發流程[1]。通過本課程的學習,學生能夠針對微處理器復雜工程問題進行理論分析和實際測算,找出關鍵因素,解決相關問題[2]。了解微處理器的應用現狀及發展趨勢,培養學生在已有的微處理器理論和實踐基礎上,能創新地應用于各個領域。通過課程學習,在學生具備扎實的微處理器設計基本理論和設計分析的基礎上,培養學生具有對于測控過程、裝置或系統工程問題,設計合理的微處理器方案的能力[3]。微處理器實驗內容設置為24學時,占總學時60學時的40%,實驗內容的設置直接關系到課程目標的實現,意義十分重要,筆者對實驗內容設置原則,具體設置內容進行分析。
1? 實驗內容設置原則
本課程內容包括兩種微處理器,一種是初級微處理器51,其代表型號是AT89S51,初級微處理器的特征是主頻10 MHz左右,盡管性能有限,但推出時間早,應用廣泛,時至今日,仍然有大量兼容產品使用,包括大量包含51內核的產品,因此,通過實驗加強51的掌握仍然十分必要。另一種是中級微處理器STM 32,其代表型號是STM 32F103VET6,
中級微處理器的特征是主頻100 MHz左右,性能得到了很大提升,顯示能力也有大幅提高,常規帶有觸摸彩色液晶顯示屏。更為重要的是,隨著主頻和內存的全面提升,在應用層面上,發生了全新的質的變化,可以運行操作系統。這是初級微處理器不具備的特征,具體是中級微處理器可運行嵌入式操作系統或者微處理器操作系統。
針對以上分析,實驗內容的設置應該遵守三條原則。
一是均衡性原則,即對于51和STM 32應設置同樣的實驗時間;既可熟練51的使用,又可掌握STM 32的使用,51結構簡單,容易應用,應該達到熟練的程度;STM32結構比較復雜,不要求全面深入掌握,只要求掌握常規的操作。
二是C語言原則,本課程實踐特色比較突出,應拋棄側重原理分析的匯編語言,無論51還是STM 32,均全面采用C語言,符合工程開發實際情況,著重思維算法,提高開發效率。
三是操作系統原則,針對STM 32的全新特征:安裝和運行操作系統,了解和練習多任務運行的機制,是在實驗設置時必須考慮的內容。
2? 微處理器51實驗內容設置
本部分可設置12學時實驗,具體為51并口,51點陣,51矩陣鍵盤,51外部中斷,51定時器,51串口,對51的基本功能做全面練習。實驗之前要講解注意事項:不要觸摸實驗板的金屬部分,如銅箔、管腳和導線接頭。實驗板盒輕拿輕放,正面朝上,放在桌子內側,摔壞要賠償。實驗前檢查液晶屏,實驗后破裂要賠償。實驗盒的STM 32開發板的仿真器必須放在液晶旁邊以保護液晶,壓裂要賠償。數據線不要從開發板拔掉。實驗結束后關閉電腦,清理垃圾,實驗盒集中存放在后面箱子,課代表關好電燈門窗。以51并口實驗為例,51并口實驗目的是學習并口P2口的使用方法,學習延時子程序的編寫和使用,為驗證實驗。
2.1? 學習實驗器材和開發環境的使用
51開發板所用的微處理器是STC89C52,是AT89S51的升級版,軟件上完全兼容后者,主要區別是程序存儲器增加4 KB。安裝51開發板軟件:打
開51開發板軟件\KeilC51\C51V901.exe安裝,注意檢查安裝目錄為C:\Keil,電腦賬戶為字母,進入控制面板修改,并注冊,Win10系統要在Keil4圖標上右擊以管理員身份運行。
2.2? 建立C51工程框架
先在磁盤建立工程文件夾,例如,D:\test1,再打開Keil uVision4,點擊菜單project→new μvision project,選中D:\test1文件夾,把工程
的名字命為test1,點擊保存,在select device對
話框選擇Atmel的AT89C51,點擊ok,在隨后的復
制啟動代碼對話框選擇否。點擊菜單file→new,
再點擊工具欄按鈕save,將文件命名為main.c。
在左側project框雙擊Source Group 1,點擊main.c,點擊Add,再點擊Close。點擊工具欄按
鈕target options,在target標簽的xtal填入
12,在output標簽勾選create HEX file,點擊ok。下次打開工程點擊菜單project→open或右擊uvproj選UV4。
C51程序結構:
1)包含頭文件,打開main.c,輸入#include
2)宏,類型和全局變量定義(可以沒有);
3)子函數(局部變量定義寫在開頭位置,可以沒有);
4)主函數void main(){}(必須有)。
編寫程序并保存,點擊工具欄按鈕rebuild或build,顯示0 Error(s), 0 Warning(s)即表示通過編譯連接。
2.3? 學習51開發板使用串口下載程序,安裝開發板串口驅動
打開51開發板軟件\應用驅動\開發板USB轉串口CH340驅動\CH341SER.EXE安裝。數據線連接開發板和計算機,打開下載軟件:51開發板軟件\燒寫軟件\PZ-ISP下載軟件.exe,點擊打開文件,選擇D:\test1\test1.hex,芯片類型選擇STC89Cxx(New),點擊程序下載,下載后自動運行。
2.4? 介紹51開發板LED的原理
如果要點亮一個LED就把單片機相對應的IO賦
為低電平,板子最左為D8。如點亮D8,程序先添加
全局變量定義sbit? P27= P2^7;然后在main()輸
入P27=0。提出實驗要求:P2口實現從左到右流水燈,左右來回流水燈,奇偶交替閃爍,每過程重復5次,過程間隔5 s。實驗步驟如下。
1)建立C51工程框架。編寫C51程序,需編寫延時程序等。編譯程序并下載運行。
2)對程序作出注釋和說明。
3? 微處理器STM 32實驗內容設置
本部分可設置12學時實驗,具體為STM 32的GPIO口,STM32按鍵中斷,STM 32液晶觸摸屏,STM32嵌入式操作系統,液晶觸摸屏和嵌入式操作系統均為綜合性實驗,各自4學時。以STM 32的GPIO口實驗為例,該實驗目的是了解GPIO的概念,掌握GPIO口的數據操作,為驗證實驗。
3.1? 學習STM 32開發板的主要特性以及Keil5的環境搭建
STM 32開發板所用的微處理器是STM32F103ZET6,
是STM 32F103VET6的升級版,軟件上完全兼容后者,主要區別是GPIO管腳增加32個。安裝STM32開發板軟件:打開STM 32開發板軟件\KeilMDK\mdk514.exe安裝,注意檢查安裝目錄為C:\Keil_v5,賬戶為字母,然后安裝芯片包:雙擊Keil.STM32F1xx_DFP.1.0.5.pack。最后注冊,Win10系統要在Keil5圖標上右擊以管理員身份運行。
3.2? 建立STM 32工程框架
先在磁盤建立工程文件夾,例如D:\test7,然
后把STM 32固件庫文件夾Libraries復制進去,再
打開Keil uVision5,點擊菜單project→new
μvision project,選中D:\test7文件夾,把工程
的名字命為test7,點擊保存,在select device對
話框選擇STMicroelectronics的STM32F103ZE,點
擊ok,在隨后的manage run對話框點關閉。點擊
菜單file→new,再點擊工具欄按鈕save,將文
件命名為main.c。點擊工具欄按鈕file extensi-
ons,在groups框新建分組CMSIS,StdPeriph_Driver,點ok。雙擊分組Source Group 1添加
main.c,點ok關閉。雙擊分組CMSIS添加core_
cm3.c,system_stm32f10x.c ,startup_stm32f10x_
hd.s(均在文件夾Libraries\CMSIS,文件類型選
擇all files),分組StdPeriph_Driver添加stm
32f10x_gpio.c和stm32f10x_rcc.c(均在文件夾Libraries\StdPeriph_Driver\src)。點擊工具欄按鈕options for target,在target標簽的xtal填入8并選中Use MicroLib,在C標簽的define框填入USE_STDPERIPH_DRIVER,STM32F10X_HD,在
include框點右側按鈕添加.\Libraries\CMSIS和.
\Libraries\ StdPeriph_Driver\inc,點ok關閉。
打開已有工程點擊菜單project→open或雙擊uv-
projx。
STM32程序結構:
1)包含頭文件,打開main.c,輸入#include “stm32f10x.h”;
2) 宏,類型和全局變量定義(可以沒有);
3)子函數(局部變量定義寫在開頭位置,可以沒有);
4)主函數int main(){}(必須有)。
點擊工具欄按鈕rebuild或者build,顯示0 Error(s), 0 Warning(s)即表示通過編譯連接。若編譯出現找不到*.o文件,把計算機賬戶改為字母,右擊我的電腦—屬性—高級,找到環境變量,把TEMP和TMP的值改為D:\user\temp,文件夾需先創建。
3.3? 練習下載程序
STM32開發板使用仿真器下載程序,仿真器免驅版自動識別不需要安裝驅動,仿真器連接開發板和計算機,點擊工具欄按鈕options for target,在debug標簽右側選擇use CMSIS-DAP-Debugger,選中run to main,點settings,在cortex對話框的debug標簽的reset框,選擇SYSRESETREQ,在
Flash Download標簽選擇Reset and Run,點ok關
閉cortex對話框,點ok關閉options對話框。點工具欄按鈕download下載程序,下載后自動運行,若不運行,按復位鍵或從電腦usb口拔掉插頭重新插上。
3.4? 介紹STM32開發板的LED模塊的原理
從左到右D1—8連接到GPIO的PC0—7上,低電平亮。提出實驗要求:對連接在GPIO的LED模塊實現從左到右流水燈效果。實驗步驟如下。
1)建立STM 32工程框架。編寫STM 32程序,需編寫時鐘使能程序,端口配置程序等。編譯程序并下載運行。
2)對程序作出注釋和說明。注釋的漢字若有亂碼點菜單edit/configuration,選擇GB2312編碼。
4? 結束語
以微處理器課程實驗內容設置為研究對象,在分析教學目標基礎上,對現有的實驗內容進行調整,增加STM 32相關實驗,并且對STM 32的全新特征,設置嵌入式操作系統的實驗,以滿足工程實踐中對于中級微處理器的性能需求。通過合理設置相關實驗具體內容,實現微處理器課程的教學目標。
5? 參考文獻
[1] 郝尚富,馬艷麗,武曉琴.以學生為中心的“微處理器
與接口技術”課程思政建設[J].教師,2021(11):52-53.
[2] 李暾,賀旭,屈婉霞,等.微處理器敏捷設計方法綜述
[J].計算機輔助設計與圖形學學報,2021,33(2):298-
309.
[3] 吳愛萍.新時代應用型本科人才培養目標下的微處理器
課程群構建研究[J].中國現代教育裝備,2020(23):68-
70.
作者簡介:許京雷、常靜,副教授。