陳雙燕,湯巧治
(閩南理工學(xué)院電子與電氣工程學(xué)院,福建石獅362700)
微機(jī)原理與單片機(jī)技術(shù)課程一體化教學(xué)改革研究
陳雙燕,湯巧治
(閩南理工學(xué)院電子與電氣工程學(xué)院,福建石獅362700)
在電子技術(shù)高速發(fā)展的今天,微機(jī)和單片機(jī)技術(shù)在各行各業(yè)得到了廣泛應(yīng)用。結(jié)合教學(xué)實(shí)踐經(jīng)驗(yàn),針對(duì)目前微機(jī)原理與單片機(jī)技術(shù)這兩門課程在教學(xué)中存在的問題,提出了將兩門課程進(jìn)行一體化整合的教學(xué)改革方案。在理解微機(jī)原理的基礎(chǔ)上,引入Keil和Proteus平臺(tái)深入進(jìn)行單片機(jī)C語言的教學(xué),以任務(wù)為主導(dǎo),將理論與實(shí)踐緊密聯(lián)系,以提高教學(xué)質(zhì)量,以及應(yīng)用型本科學(xué)生的動(dòng)手能力和創(chuàng)新能力。
微機(jī)原理;單片機(jī)技術(shù);人才培養(yǎng);課程教學(xué)
目前,微機(jī)原理與單片機(jī)技術(shù)這兩門課程基本上是國(guó)內(nèi)工科大學(xué)電類專業(yè)的必修課以及專業(yè)基礎(chǔ)課[1]。微機(jī)和單片機(jī)的技術(shù)在電子技術(shù)高速發(fā)展的今天,在各行各業(yè)得到了廣泛的應(yīng)用,如儀器儀表、數(shù)據(jù)采集與處理、家用電器、工業(yè)控制等領(lǐng)域。微機(jī)原理及單片機(jī)技術(shù)課程主要培養(yǎng)學(xué)生的邏輯思維、編程思想以及模塊化設(shè)計(jì)能力[2],在動(dòng)手實(shí)踐中,對(duì)開拓學(xué)生的創(chuàng)新意識(shí)、提高學(xué)生分析和解決問題的能力以及工程實(shí)踐能力有著重要的作用。
目前,微機(jī)原理一般作為單片機(jī)技術(shù)課程的先導(dǎo)課程[3],很多大學(xué)都是在開設(shè)微機(jī)原理課程后的下學(xué)期開設(shè)單片機(jī)課程。
1.1微機(jī)原理與單片機(jī)教學(xué)的特點(diǎn)
微機(jī)原理與單片機(jī)技術(shù)這兩門課程既有相似之處,又有不同的地方。
(1)微機(jī)和單片機(jī)這兩門課程的概念很多,既抽象又復(fù)雜,專用名詞很多[4],比如匯編語言的操作指令、各個(gè)寄存器的名稱等。對(duì)于學(xué)生來說,不容易記住,覺得入門很難。
(2)微機(jī)原理這門課的邏輯性很強(qiáng),前后關(guān)聯(lián)比較多。如果學(xué)生在學(xué)習(xí)微機(jī)原理這門課的開始,沒有掌握好微處理器的編程機(jī)構(gòu)與存儲(chǔ)器組織,那么后續(xù)學(xué)習(xí)指令系統(tǒng)和尋址方式就會(huì)比較吃力。而單片機(jī)這門課程也是這樣,如果開頭的基礎(chǔ)知識(shí)沒有掌握好,學(xué)生將會(huì)失去學(xué)習(xí)的興趣。
(3)微機(jī)和單片機(jī)的編程語言都有匯編語言,指令很多,比較復(fù)雜,也有很多正確使用指令需要注意的問題。
1.2微機(jī)和單片機(jī)教學(xué)中存在的問題
在微機(jī)原理和單片機(jī)技術(shù)這兩門課程的教學(xué)過程中存在以下問題。
(1)微機(jī)原理課程所研究的是8086、8088等比較陳舊的微處理器型號(hào),而單片機(jī)課程所研究的是經(jīng)典的51單片機(jī)。微機(jī)原理這門課程可以幫助學(xué)生理解最基礎(chǔ)的微型計(jì)算機(jī)各個(gè)模塊的概念,微型計(jì)算機(jī)的工作原理以及接口電路的連接原理。但是微機(jī)原理這門課程應(yīng)用很少,在日常生活中,幾乎不會(huì)使用8086去做設(shè)計(jì),而相對(duì)來說,單片機(jī)在日常生活中應(yīng)用廣泛。
(2)教學(xué)手段比較單一。由于實(shí)驗(yàn)設(shè)備、硬件條件的限制,微機(jī)和單片機(jī)這兩門課程主要是在課堂進(jìn)行理論教學(xué)。由于寄存器、總線、尋址方式、匯編語言指令等概念比較抽象,因此,比較難被學(xué)生消化和吸收。而實(shí)驗(yàn)課的內(nèi)容通常是驗(yàn)證理論的結(jié)果,很少能引發(fā)學(xué)生對(duì)理論本身更深層的思考。
(3)教學(xué)內(nèi)容重復(fù)。微機(jī)和單片機(jī)這兩門課程,在接口技術(shù)中,有一些可編程接口芯片是重復(fù)介紹的,比如可編程并行接口芯片8255A,可編程計(jì)數(shù)器/定時(shí)器8253,另外,關(guān)于中斷系統(tǒng)、串行通信、模數(shù)轉(zhuǎn)換、數(shù)模轉(zhuǎn)換等模塊也是兩門課程都有涉及的。
(4)編程語言重復(fù)學(xué)習(xí)。微機(jī)和單片機(jī)技術(shù)在應(yīng)用編程時(shí)所使用的匯編語言有一定的相似之處,但也有一些不同的地方,容易發(fā)生混淆,沒有必要要求學(xué)生同時(shí)掌握這兩種匯編語言。
(5)匯編語言與后續(xù)課程聯(lián)系欠缺。只學(xué)習(xí)微機(jī)或者單片機(jī)匯編語言,對(duì)學(xué)生的后續(xù)課程嵌入式系統(tǒng)、DSP處理器、C++等課程沒有打基礎(chǔ)的作用,如果學(xué)習(xí)了單片機(jī)C語言,那么后續(xù)這些課程會(huì)學(xué)習(xí)得更好。
筆者在福建省閩南理工學(xué)院教過兩輪的單片機(jī)技術(shù),也教過兩輪的微機(jī)原理,發(fā)現(xiàn)對(duì)于學(xué)生來說,單片機(jī)比微機(jī)有意思,因?yàn)閱纹瑱C(jī)有更多的應(yīng)用,學(xué)生學(xué)習(xí)單片機(jī)的熱情也比較高。因此,筆者建議將微機(jī)和單片機(jī)兩門課程整合在一起,課程結(jié)構(gòu)如圖1所示。
圖1 微機(jī)原理和單片機(jī)技術(shù)課程一體化結(jié)構(gòu)
2.1以微機(jī)原理為基礎(chǔ)
微機(jī)原理這部分的內(nèi)容主要講述微型計(jì)算機(jī)的基本結(jié)構(gòu)以及基本工作原理,學(xué)生通過對(duì)這門課程的學(xué)習(xí),可以掌握微機(jī)的基本理論,為后續(xù)的單片機(jī)課程打下比較扎實(shí)的理論基礎(chǔ)。但是,涉及到微機(jī)原理的指令尋址方式以及匯編語言指令系統(tǒng)則不做系統(tǒng)介紹。另外,與微機(jī)原理相關(guān)的接口技術(shù)也盡可能簡(jiǎn)單介紹。
2.2以單片機(jī)的原理及接口技術(shù)為核心
在學(xué)生理解微型計(jì)算機(jī)基本工作原理的基礎(chǔ)上,深入講解單片機(jī)的CPU的功能單元、時(shí)鐘與時(shí)序以及存儲(chǔ)器組織和并行口。在這個(gè)基礎(chǔ)上,簡(jiǎn)單介紹單片機(jī)的匯編語言指令系統(tǒng),接著延伸到單片機(jī)的中斷系統(tǒng)、定時(shí)/計(jì)數(shù)器,最后介紹單片機(jī)與外圍芯片的接口,包括串行通信,存儲(chǔ)器等片外資源的擴(kuò)展,模數(shù)、數(shù)模接口擴(kuò)展等。
2.3以單片機(jī)C語言教學(xué)為主
單片機(jī)應(yīng)用系統(tǒng)的程序設(shè)計(jì),不僅可用匯編語言完成,也可采用C語言來完成[5],還可以用匯編語言和C語言進(jìn)行聯(lián)合編譯。匯編語言對(duì)單片機(jī)的內(nèi)部資源的操作直接,代碼簡(jiǎn)潔且緊湊。但是,當(dāng)系統(tǒng)的規(guī)模比較大時(shí),匯編語言就顯得繁瑣、可讀性差,很難進(jìn)行調(diào)試。由于C語言具有良好的可讀性、可移植性和基本的硬件操作能力,所以,設(shè)計(jì)人員一般會(huì)采用C語言進(jìn)行比較大型的系統(tǒng)程序設(shè)計(jì)。
在筆者講授這兩門課程的時(shí)候,發(fā)現(xiàn)學(xué)生對(duì)于匯編語言接受得比較差,比如講到矩陣鍵盤的程序設(shè)計(jì)時(shí),要花很大的精力和時(shí)間讓學(xué)生理解匯編語言程序。大部分學(xué)生對(duì)C語言更感興趣,因?yàn)镃語言更容易懂,指令也更好記,更直觀。而且,如果只學(xué)習(xí)匯編語言的話,那么后續(xù)的嵌入式系統(tǒng)、DSP、VC++等課程的學(xué)習(xí)就會(huì)有比較大的困難。單片機(jī)C語言會(huì)是一個(gè)很好的過渡。
再者,大部分電類專業(yè)學(xué)生的畢業(yè)設(shè)計(jì)會(huì)和單片機(jī)有關(guān),單靠學(xué)生在畢業(yè)設(shè)計(jì)的那幾個(gè)月自學(xué)單片機(jī)C語言,可能無法保證畢業(yè)設(shè)計(jì)的質(zhì)量。若是在課堂教學(xué)上,學(xué)習(xí)了單片機(jī)C語言,就能夠提高學(xué)生畢業(yè)設(shè)計(jì)的積極性和質(zhì)量。
2.4以Keil和Proteus為實(shí)踐平臺(tái)
Proteus軟件是一款嵌入式系統(tǒng)仿真與開發(fā)平臺(tái),來自英國(guó)Labcenter公司,是一種可視化的軟、硬件系統(tǒng)協(xié)同仿真軟件,做到了一體化和互動(dòng)效果,是目前電子設(shè)計(jì)愛好者廣泛使用的電子線路設(shè)計(jì)平臺(tái)[6]。Proteus軟件支持許多通用的微控制器,如PIC、AVR、HC11以及8086、8051等;包含強(qiáng)大的調(diào)試工具,可對(duì)寄存器、存儲(chǔ)器實(shí)時(shí)監(jiān)測(cè);可對(duì)KeilμVision2、IAR C-SPY等開發(fā)工具的源程序進(jìn)行調(diào)試,可與Keil實(shí)現(xiàn)聯(lián)調(diào)。
Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會(huì)更加深刻。
筆者試過在單片機(jī)課程教學(xué)的第一次課演示了Proteus軟件的仿真,將幾個(gè)簡(jiǎn)單的系統(tǒng)演示給學(xué)生看,如簡(jiǎn)易電子琴、雙步進(jìn)電機(jī)、電子時(shí)鐘等。筆者發(fā)現(xiàn),可以激發(fā)學(xué)生的學(xué)習(xí)興趣,也為后續(xù)的課堂教學(xué)起到一定的促進(jìn)作用。在與教授同一門課程的教師們交流單片機(jī)教學(xué)心得的過程中,筆者發(fā)現(xiàn),每堂課都給學(xué)生演示一些與這次課教學(xué)內(nèi)容相關(guān)的仿真,效果比較好。
在學(xué)生的實(shí)驗(yàn)課上引進(jìn)Keil軟件進(jìn)行編程,并且通過Proteus軟件進(jìn)行硬件設(shè)計(jì),最終實(shí)現(xiàn)軟硬件調(diào)試,這樣比單純地驗(yàn)證實(shí)驗(yàn)程序,收效更好。另外,在教學(xué)過程中,教師可以布置仿真及程序設(shè)計(jì)的任務(wù)給學(xué)生,讓他們課后去完成,交電子版的作業(yè),這樣可以培養(yǎng)學(xué)生的自學(xué)能力,也可以激發(fā)他們的學(xué)習(xí)熱情,熟練地掌握這兩款學(xué)習(xí)單片機(jī)的重要軟件,也為后續(xù)課程做鋪墊。
2.5以任務(wù)為核心進(jìn)行教學(xué)
將單片機(jī)的課程教學(xué)分為幾個(gè)任務(wù),按照任務(wù)的難易程度,由簡(jiǎn)單到復(fù)雜循序漸進(jìn)。比如最初是比較簡(jiǎn)單的彩燈循環(huán)亮系統(tǒng),接著到簡(jiǎn)易電子琴系統(tǒng),再到比較復(fù)雜的電子萬年歷系統(tǒng)。將單片機(jī)的相關(guān)的教學(xué)內(nèi)容融合在這幾個(gè)系統(tǒng)設(shè)計(jì)中,及時(shí)應(yīng)用課堂上學(xué)到的理論知識(shí),在老師的指導(dǎo)下進(jìn)行這幾個(gè)系統(tǒng)的設(shè)計(jì),可以有效地提高教學(xué)水平,也提高學(xué)生的實(shí)踐能力和動(dòng)手能力。
電子信息技術(shù)以及計(jì)算機(jī)技術(shù)的飛速變革使得電類專業(yè)的人才培養(yǎng)及教學(xué)過程落入一種隨時(shí)待改且需長(zhǎng)期探索的嚴(yán)峻處境。微機(jī)原理和單片機(jī)技術(shù)的課程教學(xué)是相輔相成的,本文在深入學(xué)習(xí)和思考這兩門課程教學(xué)過程的特點(diǎn)和不足之處的基礎(chǔ)上,提出將兩門課程整合在一起進(jìn)行教學(xué),并且以微機(jī)原理為基礎(chǔ),深入學(xué)習(xí)單片機(jī),在Proteus和Keil平臺(tái)上,以任務(wù)為核心進(jìn)行單片機(jī)C語言的教學(xué)改革方案,為應(yīng)用型本科高校電類專業(yè)的人才培養(yǎng)和課程教學(xué)提供了有益的思路和方法。
[1]任斌.微機(jī)原理與單片機(jī)技術(shù)課程建設(shè)與改革實(shí)踐[J].新課程:教育學(xué)術(shù),2012,(4):42-43.
[2]武英,李鋼生,李秀娟.單片機(jī)課程體系教學(xué)改革初探[J].中國(guó)電力教育,2010,(4):74-75.
[3]蔡述庭,劉銀萍,謝云,等.微機(jī)原理及單片機(jī)技術(shù)課程教學(xué)改革研究[J].實(shí)驗(yàn)科學(xué)與技術(shù),2011,9(5):70-72.
[4]周玉庭,陳靜,郝培華.微機(jī)原理與接口技術(shù)課程的改革與實(shí)踐[J].重慶工學(xué)院學(xué)報(bào),2006,20(5):191-193.
[5]李全利.單片機(jī)原理及接口技術(shù)[M].第2版.北京:高等教育出版社,2009:259-260.
[6]周潤(rùn)景,張麗娜,丁莉.基于PROTEUS的電路及單片機(jī)設(shè)計(jì)與仿真[M].第2版.北京:北京航空航天大學(xué)出版社,2010:1-5.
Research of Integrated Teaching Reform of Princip le ofMicro-controller and MCU
CHEN Shuang-yan,TANG Qiao-zhi
(School of Electrical and Electronic Engineering,Minnan University of Science and Technology,Shishi,F(xiàn)ujian 362700,China)
Nowadays,with the rapid development of electronic technology,micro-controller and MCU was widely used in various industries.In order to solve the problems in the teaching ofmicro-controller principle and MCU,the teaching reform plan of the integration of the two courses was proposed which based on the teaching practice experience.On the basis of understanding the principle of micro-controller,the C language of MCU was introduced thoroughly on the platform of Keil and Proteus software.The teaching reform was task oriented and closely linked to the theory and practice,so as to improve the quality of teaching,aswell as hands-on skills and innovation capacity of applied undergraduate students.
micro-controller principle;MCU;training program;professional teaching
G 642
A
1672-545X(2016)06-0260-03
2016-03-04
陳雙燕(1986-),女,福建福清人,講師,碩士,從事的工作:電子信息技術(shù)領(lǐng)域的教學(xué)與研究。