唐露新, 范航郡, 吳黎明, 李 揚
(廣東工業(yè)大學(xué) 信息工程學(xué)院,廣東 廣州510006)
單片機技術(shù)是現(xiàn)代電子控制的基本技術(shù),廣泛用于家電、工農(nóng)業(yè)、軍工、航空和醫(yī)療等行業(yè),單片機性價比高、可靠性高、使用方便、發(fā)展迅猛?,F(xiàn)在市面產(chǎn)品廣泛應(yīng)用的單片機由4 位、8 位已經(jīng)發(fā)展到32 位,主要流行C51、AVR 和ARM 等多個系列的單片機,匯集了人機界面、AD 與DA 轉(zhuǎn)換、信號處理和通信等功能,功能越來越強大。在此背景下,單片機技術(shù)已成為電子類相關(guān)工科大學(xué)生必須掌握的技能[1-2]。
單片機技術(shù)特點鮮明,容易組成小系統(tǒng),形成趣味和直觀實驗,但初學(xué)者往往覺得環(huán)節(jié)太多、無法把握,單個環(huán)節(jié)出錯往往影響整體,尤其嵌入式單片機等新技術(shù)更難掌握[3]。曹建樹等從教材、教學(xué)方法和能力培養(yǎng)等進行系列單片機教學(xué)改革,取得較好的效果[4]。譚亞麗通過編寫特色教材和研發(fā)實驗裝置,采用典型案例、主動學(xué)習(xí)和設(shè)計的方法,優(yōu)化單片機實訓(xùn)內(nèi)容和方法[5]。但是對單片機的實驗方法還不夠細致,重點不夠突出,因此有必要對傳統(tǒng)教學(xué)方法改革,在初步掌握部分理論概念的基礎(chǔ)上,以單片機典型實驗的關(guān)鍵點為主的教學(xué)方式,由淺入深建立單片機系統(tǒng)概念,提高興趣;進一步通過單片機系統(tǒng)擴展實驗、設(shè)計與綜合實驗等進階實驗,有機結(jié)合其他專業(yè)知識,使學(xué)生進一步深入;在此基礎(chǔ)上還可以學(xué)習(xí)更高級的嵌入式單片機實驗,根據(jù)自己的需要,掌握完成各種單片機技術(shù)[6]。我們圍繞51 系列和嵌入式兩類單片機,開發(fā)了具有應(yīng)用對象的典型單片機實驗裝置,采用進階式、啟發(fā)式和關(guān)鍵知識點的教學(xué)方式,制定顯示、輸入、控制和檢測等典型案例教學(xué)實驗,形成了由淺入深、多樣化實驗體系。
單片機技術(shù)主要內(nèi)容包括MCU 處理器、顯示與按鍵處理、數(shù)字量與模擬量信號輸入與輸出、外界通信等四大部分,由于需要組成完整系統(tǒng),才能觀測工作過程,所以每一部分效果難以單獨直觀顯現(xiàn),給初學(xué)者帶來一定困難。系統(tǒng)組成通常有仿真和實物制作兩種方法,軟件仿真不需要組成實際系統(tǒng),容易實現(xiàn),但是與實際還是有不少差別;實物制作不僅需要掌握軟硬件技術(shù),而且還需要有一定的布線和焊接工藝水平,成本較高,周期較長,接近實際產(chǎn)品。另外還可以連接檢測控制對象,傳統(tǒng)的傳感器、自動控制、信號處理等課程的東西可以方便實現(xiàn)。
因此在許多電類專業(yè)中,單片機技術(shù)一般作為專業(yè)的核心課程,例如測控技術(shù)與儀器、電子信息工程等專業(yè)的核心課程,與之相關(guān)的課程包括微機原理、傳感器技術(shù)、自動控制理論和信號處理等,因此單片機課程綜合性較強,要求學(xué)生具有一定電路基礎(chǔ)、編程能力和邏輯思維能力。必須更加注重實踐,才能起到關(guān)鍵和綜合的作用。
單片機技術(shù)中目前應(yīng)用最為廣泛的是8 位的C51系列單片機和16 與32 位的ARM 處理器的嵌入式單片機兩大塊,通常為兩門獨立課程,后者作為高級選修課程,具有一定難度,但目前較復(fù)雜的控制場合均采用計算處理和通信功能強大的ARM 處理器[7],因此我們采用這兩種典型單片機進行實踐教學(xué)。
一般單片機課程教學(xué)采用“理論為主,實驗為輔”的教學(xué)模式[8]。先在課堂上講授,從單片機組成、CPU、匯編指令,到接口、中斷和應(yīng)用等。實驗課相對理論課稍晚些開設(shè),實驗主要針對基本功能驗證,以達到理解和掌握基本內(nèi)容的目的。這樣教學(xué)比較系統(tǒng)全面,但有些繁瑣、復(fù)雜,許多學(xué)生難以系統(tǒng)把握。
通過分析學(xué)生基礎(chǔ)和單片機技術(shù)的特點,采用以實踐為主、由淺入深的進階式教學(xué)方法,針對必須具有功能和內(nèi)容,抓住學(xué)習(xí)重點,采用最簡方法搞清楚單片機的基本原理和工作過程,然后再深入學(xué)習(xí)擴展與應(yīng)用技術(shù)、嵌入式單片機等,其特點如下:①綜合考慮C51 單片機和嵌入式ARM 單片機的實驗體系,進行分階段要點式的教學(xué),在完成初級單片機功能基礎(chǔ)上,學(xué)習(xí)更高級的ARM9 單片機系統(tǒng),實現(xiàn)社會需求的更高級功能。②對C51 單片機實驗采取進階式學(xué)習(xí)方法,劃分為基礎(chǔ)實驗、進階實驗和綜合實驗,對不同學(xué)習(xí)能力和就業(yè)需求,按照不同程度學(xué)習(xí)。重點加強基礎(chǔ)實驗和綜合實驗,如綜合實驗是專業(yè)級的實驗,一般有1名熟練掌握的學(xué)生組成3 人小組實驗。
表1 所示為基礎(chǔ)51 單片機進階式實驗的分類與主要教學(xué)內(nèi)容,實驗分為基礎(chǔ)實驗、進階實驗和綜合實驗三個階段:
(1)基礎(chǔ)實驗。通過驗證單片機基本功能,掌握基本理論知識。將實驗內(nèi)容按功能分類,要求學(xué)生通過鍵盤和發(fā)光二極管、串行通信等簡單實驗掌握相應(yīng)基礎(chǔ)理論知識,熟悉單片機實驗操作、電路和編程。
(2)進階實驗。使用單片機控制小系統(tǒng)進行進階實驗。將基礎(chǔ)實驗?zāi)K組合,實現(xiàn)一定檢測控制功能的小系統(tǒng),建立系統(tǒng)概念。
(3)綜合實驗。在進階實驗的基礎(chǔ)上進行功能改進,糅合多種功能模塊到實驗系統(tǒng)中并通過增加或改變某方面功能的要求,帶動學(xué)生思考和探究。
嵌入式實驗分為基礎(chǔ)和創(chuàng)新系統(tǒng)兩個實驗階段:
(1)基礎(chǔ)實驗?;A(chǔ)實驗分為裸機實驗和嵌入式操作系統(tǒng)實驗,分別學(xué)習(xí)其中的硬件和軟件功能。
(2)創(chuàng)新系統(tǒng)實驗。選擇既有實用價值又具有知識綜合性的課題進行項目實驗。引導(dǎo)學(xué)生將知識運用到實際應(yīng)用當中。
單片機小系統(tǒng)主要由時鐘、復(fù)位、電源、控制等模塊組成,比通常硬件控制電路更具綜合性和系統(tǒng)性,與PC和嵌入式控制系統(tǒng)相比,簡單、容易理解掌握。將學(xué)生在基礎(chǔ)實驗過程當中所學(xué)到的時鐘、電源、控制等知識結(jié)合起來,指導(dǎo)設(shè)計出交通信號燈系統(tǒng)、步進電機控制系統(tǒng)等控制小系統(tǒng),從而形成更具趣味性和觀賞性的綜合實驗。
表1 基礎(chǔ)51 單片機實驗
進階式教學(xué)就是實驗難度由易到難、實驗內(nèi)容由淺入深、實驗項目由簡到繁。通常需要學(xué)習(xí)基礎(chǔ)實驗和進階實驗,先熟悉系統(tǒng)和驗證實驗,掌握單片機結(jié)構(gòu)及實驗操作過程,然后驗證顯示、鍵盤、A/D 轉(zhuǎn)換、串行通信等基本功能。需要獨立進行實驗操作、掌握電路、自己編程,打好扎實基礎(chǔ)。在此基礎(chǔ)上再進入到小系統(tǒng)的進階實驗和綜合實驗環(huán)節(jié),將各個基本功能模塊糅合在一起,并且加上一些附加電路,形成具有相互關(guān)系的控制小系統(tǒng),掌握檢測控制系統(tǒng)全貌。
以溫度測量的小系統(tǒng)為例,首先制定實驗?zāi)繕?,要求實現(xiàn)溫度檢測并在LCD 屏上顯示;學(xué)生在實驗裝置上選擇適當?shù)哪K搭建硬件電路,再通過軟件編程實現(xiàn)信號處理和控制,完成溫室檢測的模擬。
搭建硬件電路的過程需要結(jié)合傳感器課程內(nèi)容,采用DS18B20 作為溫度傳感器,將測得的溫度信息轉(zhuǎn)換成數(shù)字信號送入單片機。其中DS18B20 使用外部供電方式,與單片機的P2 口連接進行數(shù)據(jù)傳輸。顯示模塊采用能顯示大量字符的HD44780 液晶顯示器,與單片機的P1 口進行數(shù)據(jù)通信。
上述實驗中的單片機還有多余I/O 口未用,于是要求學(xué)生利用實驗裝置,給系統(tǒng)添加一個加熱管,可以實現(xiàn)自動溫度控制的功能。在此過程中會學(xué)到很多實踐經(jīng)驗。例如端口接入矩陣鍵盤,學(xué)生問到為何判斷鍵盤是否按下要用“if((P1&0xf0)! =0xf0)”而不是像之前基礎(chǔ)實驗時那樣用“if P1!=0xf0”?這是因為在系統(tǒng)應(yīng)用中要屏蔽P1 口其他位造成的干擾,這種實踐經(jīng)驗和技巧在基本實驗內(nèi)容中是學(xué)不到的。
綜合實驗將電路、計算機編程、傳感器技術(shù)等課程有機結(jié)合在一起,組成完整單片機系統(tǒng),不僅加深了對單片機系統(tǒng)的理解,更重要的是隨著實驗要求提高而開動腦筋,積極探討與研究,從而獲得實際操作經(jīng)驗,提高了自主學(xué)習(xí)能力。
結(jié)合地方經(jīng)濟和課程體系,通過一系列的教改項目,我們有針對性開發(fā)了精品課程、實驗裝置、教材和教學(xué)網(wǎng)站等單片機教學(xué)資源。建設(shè)了單片機原理精品課程[9],重點編寫了“單片機原理與應(yīng)用技術(shù)”[10]、“嵌入式系統(tǒng)設(shè)計與開發(fā)”[11]以及相應(yīng)的實驗教材,考慮到嵌入式單片機學(xué)習(xí)的難度,建立了“面向嵌入式技術(shù)的單片機技術(shù)”專題學(xué)習(xí)網(wǎng)站建設(shè)[12]。
傳統(tǒng)實驗箱由專用教學(xué)設(shè)備供應(yīng)商提供,集成了基本功能模塊,且實驗?zāi)K已封裝好,學(xué)生在實驗過程中按部就班操作驗證模塊功能,無法看到內(nèi)部數(shù)據(jù)和電路原理連接線,無法詳細編程和改變電路,還需要配另外檢測設(shè)備和信號發(fā)生器。
沒有合適的實驗裝置,也難以開展好進階式實驗教學(xué)。為此我們立項實驗設(shè)備研發(fā)的教改課題,根據(jù)教學(xué)需求有針對性先后開發(fā)了基于51 的“單片機技術(shù)綜合實驗開發(fā)裝置”[13]和“嵌入式多功能單片機實驗教學(xué)平臺”[14],已用于教學(xué)實驗多年,前者經(jīng)改進完善,申報獲得國家實用新型專利[15]。如圖1 所示,該裝置使用MCS-51 和AVR 的雙單片機結(jié)構(gòu)組成,帶有檢測儀器和監(jiān)測功能的綜合實驗平臺。其中MCS-51實現(xiàn)實驗編程功能、AVR 單片機實現(xiàn)儀器監(jiān)測功能,開發(fā)帶有虛擬儀器,集成簡易數(shù)字信號發(fā)生器、示波器、邏輯分析頻率計四大功能,方便學(xué)生在實驗中檢測數(shù)據(jù)和調(diào)試電路,有利于學(xué)生深度理解實驗原理。
圖1 單片機綜合實驗裝置原理框圖
單片機綜合實驗裝置框圖如圖1 所示,集成了數(shù)碼管、步進電機、溫度/亮度傳感器等模塊,根據(jù)需要可以組成多種控制小系統(tǒng)。能夠完成交通燈的控制、步進電機的控制、溫度/亮度的采集、顯示、PWM 控制、直流電機的控制等綜合實驗。一系列的單片機課程獨立的小系統(tǒng)實驗的結(jié)合,組成了較完整的單片機系統(tǒng)綜合實驗,并可以進行虛擬實驗。
由于該實驗裝置具有實驗需要的電源、信號源、控制對象、分析儀器等,使進階式實驗教學(xué)效果具有基本保障,學(xué)生能夠方便在一套系統(tǒng)中進行所有實驗,并進行測試,解決實驗設(shè)備不配套的問題。
隨著嵌入式單片機技術(shù)的普及,常用嵌入式芯片已經(jīng)到了32 位,功能很強、軟硬件更加復(fù)雜,所以都將嵌入式單片機作為選修課程。通常利用在C51 單片機學(xué)習(xí)過程中建立起的概念和基礎(chǔ)知識,容易進入嵌入式單片機學(xué)習(xí)。
表2 為兩種單片機,ARM9 處理器在主要性能指標比C51 單片機強大很多[7]。先利用ARM9 單片機實現(xiàn)C51 單片機實驗內(nèi)容,第二步完成C51 單片機所不能實現(xiàn)的操作系統(tǒng)功能,第三步進行綜合實驗。
表2 C51 單片機內(nèi)核與ARM9 處理器主要指標
嵌入式系統(tǒng)通常由嵌入式微處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及應(yīng)用軟件系統(tǒng)等四部分組成。任何一個嵌入式系統(tǒng)都是軟硬件相互結(jié)合、協(xié)調(diào)運行的整體,因此難度更大,只有了解各個系統(tǒng)軟硬件模塊之間的聯(lián)系,才能深層次的理解整個系統(tǒng)。
嵌入式開發(fā)軟件平臺分為兩種:①裸機程序,沒有移植任何操作系統(tǒng);②根據(jù)硬件平臺和開發(fā)需求先移植一個操作系統(tǒng),然后在操作系統(tǒng)的平臺中進行應(yīng)用軟件的開發(fā)。后者也是嵌入式系統(tǒng)與單片機系統(tǒng)最大的不同之處。
表3 為嵌入式單片機進階實驗內(nèi)容,嵌入式單片機綜合性技術(shù)與綜合性更強,所以基礎(chǔ)驗證實驗部分不僅需要實現(xiàn)個體模塊功能,而且要求實驗覆蓋面到嵌入式處理器、外圍電路、各類外設(shè)接口、嵌入式操作系統(tǒng)、板級支持包以及嵌入式應(yīng)用等方面,才能更好地理解嵌入式單片機系統(tǒng)組成,增強系統(tǒng)概念。
表3 嵌入式單片機實驗
例如串行通信實驗,可以穿插鍵盤與液晶顯示的實驗內(nèi)容,可在有限課時中壓縮驗證實驗比重,而又靈活結(jié)合基礎(chǔ)實驗內(nèi)容,可謂一舉兩得。進階實驗為操作系統(tǒng)實驗,針對既有實用價值又具有綜合知識的實驗。以溫度監(jiān)測系統(tǒng)為例,采用S3C2440 微控制器、DS18B20 為溫度傳感器,在Linux 操作系統(tǒng)平臺上設(shè)計溫室多點溫度監(jiān)測系統(tǒng)。
多點溫度監(jiān)測實驗需接入多個溫度傳感器,且要有時序控制。學(xué)生根據(jù)芯片手冊的邏輯時序圖完成傳感器驅(qū)動程序編寫。在GPG0 接口掛接多個DS18B20溫度傳感器,并對DS18B20 的DQ 端精確時序控制。實驗在Linux 環(huán)境下運行,學(xué)生完成驅(qū)動程序編寫之后,還要編寫系統(tǒng)應(yīng)用程序,使操作系統(tǒng)打開后通過進程調(diào)度對驅(qū)動進行操作,實現(xiàn)多點溫度監(jiān)測。
該系統(tǒng)實驗結(jié)合了軟件和硬件元素,知識綜合性和實用價值很強。相比起8 位單片機,ARM 在數(shù)據(jù)處理和網(wǎng)絡(luò)控制方面功能更強??梢栽谡n程設(shè)計等后續(xù)的學(xué)習(xí)安排中對本系統(tǒng)改進,實現(xiàn)Internet 遠程監(jiān)測、溫度控制等。此舉可幫助學(xué)生突破從普通實驗到實際設(shè)計過程中的瓶頸,為今后工作打下良好基礎(chǔ)。
經(jīng)過10 多年探索和實踐,特別是配合教材建設(shè)、實驗裝置開發(fā)和產(chǎn)學(xué)研結(jié)合等實踐教學(xué)改革,有效提高學(xué)生學(xué)習(xí)單片機的積極性和效率,確立了單片機課程的核心地位,帶動了其他課程教學(xué),啟發(fā)進階式實驗教學(xué)的作用和效果如下:
(1)在單片機教學(xué)中,啟發(fā)進階式實驗教學(xué)必須與相關(guān)實驗裝置和自編理論與實驗教材配套使用,形成系統(tǒng),才能取得較好的教學(xué)效果。
(2)這種教學(xué)實驗方法簡潔明了、重點突出、效果明顯,實驗裝置綜合了調(diào)試檢測儀器,比較適合課外自學(xué)和提早學(xué)習(xí),我們以前單片機技術(shù)課程通常在第4 ~6 學(xué)期才開設(shè),一部分動手能力很強的學(xué)生都會在大一提前學(xué)習(xí),該方法對他們特別有效,帶動了學(xué)生學(xué)習(xí)的興趣、主動性和積極性。
(3)通過我校10 余屆四個專業(yè)方向的本科生和多屆研究生教學(xué),該方法不斷改進,使學(xué)生重點把握能力和學(xué)習(xí)效率都有大幅度提高,學(xué)生學(xué)到了很多只有通過實踐才能學(xué)到的經(jīng)驗技巧。
(4)由于具有檢測和控制的多種綜合實驗,使學(xué)生容易掌握單片機應(yīng)用的專業(yè)技術(shù),在各種綜合課程設(shè)計、挑戰(zhàn)杯科技作品、電子設(shè)計等競賽中,普遍都有良好發(fā)揮,我院學(xué)生最近連續(xù)兩屆獲得全國挑戰(zhàn)杯科技作品一等獎各1 項。在教師科研和企業(yè)產(chǎn)品研發(fā)生產(chǎn)工作中,也體現(xiàn)較好的軟硬件技術(shù)工作能力。
[1] 孫懷義,石祥聰. 自控系統(tǒng)發(fā)展綜述[J]. 自動化與儀器儀表,2011,153(1):1-9.
[2] 王 君.單片機原理及控制技術(shù)[M]. 北京:機械工業(yè)出版社,2010.
[3] 陳淑潔.單片機實踐教學(xué)存在的問題與對策[J],實驗室研究與探索,2009,11(1):130-133.
[4] 曹建樹,代峰燕,俞建榮,等.應(yīng)用型工科院校單片機課程教學(xué)改革與實踐[J].實驗室研究與探索,2012,31(3):129-132.
[5] 譚亞麗,申 淼,申忠如.單片機專題實訓(xùn)內(nèi)容優(yōu)化和訓(xùn)練方法的研究[J].實驗室研究與探索,2012,31(7):173-175.
[6] 馮濟琴,朱 革,陳古波.ARM 嵌入式系統(tǒng)教學(xué)方法研究及實踐探索[J].中國現(xiàn)代教育裝備,2012(7):63-65.
[7] 羅 佳,孫運強.51 系列單片機與ARM 處理器的比較[J].工業(yè)控制計算機,2007,20(5):64-66.
[8] 楊 紅,馬文華.探索單片機課程教學(xué)和實驗新模式[J]. 中國現(xiàn)代教育裝備,2007(3):19-21.
[9] 唐露新. 單片機原理與應(yīng)用精品課程,2004. http://oa. gdut.edu.cn/danpian/demo1.htm.
[10] 吳黎明.單片機原理與應(yīng)用技術(shù)[M]. 北京:科學(xué)出版社,2011.
[11] 馬文華,鄧耀華,湯秀春. 嵌入式系統(tǒng)設(shè)計與開發(fā)[M].2 版. 北京:科學(xué)出版社,2011.
[12] 湯秀春,吳黎明,蔣永平,等.面向嵌入式系統(tǒng)應(yīng)用的課程專題學(xué)習(xí)網(wǎng)站建設(shè)[J]. 桂林電子工業(yè)學(xué)院學(xué)報,2006,26(4):319-320.
[13] 湯秀春,吳黎明,黃健邦,等. 自制單片機技術(shù)綜合實驗開發(fā)裝置、培養(yǎng)學(xué)生綜合素質(zhì)[J].廣東工業(yè)大學(xué)學(xué)報(社科版),2004,4(6):199-200.
[14] 湯秀春,吳黎明,鄧耀華. 嵌入式多功能單片機實驗教學(xué)平臺的研制[J].中國現(xiàn)代教育裝備,2006.(7):63-65.
[15] 湯秀春,吳黎明,王桂棠,等. 一種單片機綜合實驗裝置[P]. 中國實用新型專利:ZL200620060058.6.