時間:2023-05-29 18:00:08
開篇:寫作不僅是一種記錄,更是一種創造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇單片機原理及接口技術,希望這些內容能成為您創作過程中的良師益友,陪伴您不斷探索和進步。
關鍵詞:單片機;改革;實踐;考核
中圖分類號:G642.0 文獻標志碼:A?搖 文章編號:1674-9324(2013)36-0062-02
從上個世紀70年代第一只單片機面市,短短三十多年的時間,單片機技術已成為計算機技術的一個重要分支,由于單片機體積小、性價比高、控制能力強等優點,廣泛應用到工業控制、機電一體化、儀器儀表、消費產品、汽車、航空航天、辦公自動化和通信等各個領域。在就業形勢日益嚴峻的情況下,對我校機電類學生來講,如果學好單片機原理及接口技術這門課程,學生就有更多的就業機會,對以后的個人發展具有十分重要的作用。但是如何使他們在短短的一學期學好這門課,是我們需要解決的主要問題,本文在教學內容、教學方法、實踐環節、考核方式等方面進行有益的探索。
一、教學內容的改進
在單片機的開發過程中,常用的編程語言有匯編語言和C語言,每種語言有各自的特點。匯編語言編程具有代碼緊湊、運行效率高、可直接對硬件內部進行控制等優點,但匯編語言也有一些缺點比如語句抽象、編程效率低,學習周期長,可移植性差。而C語言有功能豐富的庫函數、運算速度快、編譯效率高、有良好的可移植性,而且可以直接實現對系統硬件的控制。另外用C語言來編寫目標系統軟件,會大大縮短開發周期,且明顯地增加軟件的可讀性,便于改進和擴充,從而研制出規模更大、性能更完備的系統。因此,用C語言進行單片機程序設計是單片機開發與應用的必然趨勢。但我們還在一成不變地進行匯編語言的學習,甚至教科書上也沒有提及到C語言的單片機編程。因此為了學生畢業后能夠更好的適應社會,滿足企業的需要,我們要合理選擇教材,教學內容轉為以C語言教學為主,匯編為輔,同時兼顧兩者的混合編程。這樣既使學生容易學習,又適應了企業單片機開發的需求。
二、教學方法的改進
1.提高學生的學習積極性。興趣是學好任何一門課程或技術的基礎,所以,激發學生興趣異常重要。針對這門課程在有限的教學課時內,學生難學,老師難教的特點,我們更新思想,轉變觀念,從提高學生對課程的學習興趣出發,對于單片機課程來說,采用實例法教學是必不可少的。總結這么多年的教學經驗,我個人認為第一次課簡單介紹一下單片機,然后可以舉一些學生常見的、經常用到的單片機應用的具體產品,比如學生經常見到的智能電子秤、智能存包柜、出租車計價器等。通過分析產品的原理,循序漸進地培養學生的學習興趣。另外第一次課除了講些實例以外可以給學生演示一下流水燈的實驗,準備焊接好的實驗板,用仿真器仿真流水燈的工作過程,再給學生講解一下單片機的I/O口控制發光二極管點亮的原理,激發學生學習這門課程的興趣。
2.轉變觀念,擺脫傳統授課方式。一直以來,對于這門課程的教學都存在著偏重理論而忽視實踐的問題,教師基本上都是按照傳統的方法按章節授課,很少涉及實踐部分的內容,造成了理論與實踐嚴重脫節,調動不起學生的學習積極性,直接影響到授課效果,更談不上培養學生的創新意識了。有的即使開設了實驗課,實驗設備的陳舊也使得學生一開始學到的知識就是過時的,無法直接應用于實際工作當中。所以,探討新的教學方法勢在必行。單片機教學采用形式多樣的教學方法,形式多樣的教學方法可以激發學生思維,使教學方法不局限于傳統,傳統的以教師為中心,教師講、學生聽、記筆記的教學方式,應結合更多的教學方法,講授法、練習法、實驗法、演示法等。
3.課余時間通過網絡學習。學生課下可以利用網絡資源進行自主學習,現已將教學資源全部傳到校園網絡教學平臺,學生可以網上下載課件、學習資料。另外通過網絡問卷、網上答疑,教師可及時了解學生的學習情況并給予指導。除此之外,給學生介紹多種形式的專業網站和參考資料、促進學生自主學習。如常用單片機、電子網站、論壇:21IC中國電子網(http://)、周立功單片機世界(http://)、凌陽單片機(http://.cn);著名電子公司、雜志網站:單片機愛好者(http://)等。每次給學生布置一些作業讓學生通過網絡去查找資料,進行學習。這樣作業不會枯燥無味,通過網絡學習可以增加同學們的知識面,網站上的一些資料可以更好地幫助學生學習這門課程。
三、實踐環節的改進
1.實踐教學。單片機原理及接口技術對于機械工程學院機電類學生來說是一門實踐性很強的專業課,學生不光要有扎實的理論知識,更要有過硬的動手能力,這就要在學習過程中利用一切可以利用的機會去實際操作。目前我們的實驗課安排了10個學時,但是10個學時遠遠達不到鍛煉學生動手能力的目的,根據以往的教學經驗,因為以前做實驗都是直接用實驗箱來做,學生只需要根據電路圖連線,編制程序,觀察實驗結果,學生學完這門課程以后只能根據電路要求編制一些簡單的程序,但是動手能力較差,不會焊接電路板,不會調試電路,甚至有些常見的元器件都不認識,更不用說走向社會從事相關的工作。因此,我院購買了電路板、常用元器件,常用的工具如電烙鐵、萬用表等,給學生提供認識常用元器件、動手搭建電路、焊電路板的機會,給學生講解完注意事項后讓學生帶回宿舍利用課余時間焊接電路板,然后進行仿真調試,增強學生的實際操作能力。
2.第二課堂。實驗室開放是現代實踐教學發展必由之路,在我們的實驗室開放中,除了實驗室管理上的開放,重點體現在開設第二課堂,支持學生課外科技活動,進行了以下幾方面的努力:(1)積極參與電子競賽,提高創新能力。各類大學生電子設計競賽、機電產品創新大賽是展示學生創新能力的極好機會,為了搞好競賽,我們教研室專門抽調幾位教師,在賽前還組織了參賽隊員的集訓。在已參加的幾屆全國電子設計競賽、山東省電子設計大賽、山東省機電產品創新大賽中,我系學生都獲得了優異的成績。通過參加競賽活動,大學生的綜合設計能力和科技制作能力大大提高。(2)自主立項,培養自身獨立設計能力。為了培養學生獨立工作能力和實踐能力,在人力、物力上積極支持學生開展課外科技活動。鼓勵學生自行開發設計線路板,完成課程設計題目。引導學生申請科研立項、找方向、寫材料、定方案、開展項目研究。在每年的科研立項活動中分別獲得多個立項,學生的綜合能力得到提升。
四、改革考核方式
以前單片機的考核方式都是采用閉卷考試的形式,總成績由考試成績加上平時成績組成,考試成績占70%,平時成績占30%,平時成績中有包括課堂考勤、作業、實驗。但是這樣做的后果是學生只注重理論的學習,對實踐學習不能夠引起足夠的重視,因而學完課程后動手能力差,不能單獨進行單片機應用系統的開發,因此改革考核方式勢在必行,除了傳統的試卷考試外,增加實驗技能的考核。閉卷部分的試題包括基本概念、基本理論、編寫程序和畫原理圖,題型可采用填空、選擇、簡答、編程等方式。由于教學大綱上本課程的沒有課程設計,所以實驗技能只能通過平時的實驗課來給學生打分。目前的實驗是要求學生動手制作焊接電路板,然后編程進行仿真,可以根據學生在整個過程中的表現來評分,焊接、編程、仿真、調試等各項能力進行評價。焊接的電路板是否有短路、斷路、虛焊現象,仿真軟件是否熟練、不能實現所要實現的功能會不會調試、會不會查找錯誤進行修改處理等等作為評價的依據。
五、結論
本文從當今社會需求和實際應用的角度出發,本著激發學生學習興趣、擴大知識面以及培養創新精神的原則,對單片機原理及接口技術課程的教學方法、考核方式等各方面進行了改革。教學手段的改革和實驗教學已經在機械類本科班的教學和實驗中得到應用。通過教學實踐,學生不僅掌握了課本中的理論知識,鍛煉了實際動手能力,達到預期的教學效果。
參考文獻:
[1]趙全利.單片機原理及應用教程[M].北京:機械工業出版社,2012.
[2]陳亮,康娟,劉濤.單片機課程教學改革的幾點看法[J].技術監督教育學刊,2006,(1).
關鍵詞:微機原理;接口技術;優化;多媒體教學
中圖分類號:G642文獻標識碼:A文章編號:1009-3044(2009)36-10351-02
Research on the Reform in Teaching Contents of the Principles of Micrcomputer & Interfaces
CHENG Yun, XIE Si-lian, ZHAO Zhi-gang
(Department of communication and control Engineering, Hunan University of Humanities and Science and Technology, Loudi 417000, China)
Abstract: By integrating with the course characteristic of "The Principles of Microcomputer & Interfaces", this paper puts forward the reform measures such as optimization teaching contents, proper utilization of multimedia. Teaching practice showed that this reform had achieved good results.
Key words: microcomputer principle;interface technique;optimization;multimedia teaching
《微機原理與接口技術》是電氣信息類專業的一門重要的專業技術基礎課[1],也是電子、自動化等專業學生的研究生考試課程。該課程的主要任務是使學生從理論和實踐上掌握微型計算機的基本組成、工作原理、匯編語言程序設計方法、接口電路及硬件電路的連接,建立微機系統的整體概念,為今后進一步學習打好基礎,同時該課程又是后續課程如單片機原理及應用、DSP技術、ARM嵌人式系統等課程的基礎。由于這門課的教學內容與后續課程尤其是單片機原理及應用有較多相似的地方,因此,一些高職院校的做法常常是用單片機原理及應用來取代這門課,作為本科院校,還有必要開設這門課嗎?如果要開的話,其教學內容如何確定才不至于與后續課程有較多的交叉?本文從如何提高微機原理課程教學質量、增強教學效果,談談在教學上的一些體驗和認識。
1 優化教學內容,突出教學重點
由于總的學時的不斷壓縮,使得我們對一些專業基礎課的課時則不斷壓縮,對于不繼續開設《單片機原理及應用》這門專業課的學生來說,《微機原理與接口技術》的內容需要全部開出來,而對于有單片機原理及應用這門課的專業學生來說,可以只開設微機原理與匯編語言方面的內容,而接口技術則留到單片機原理及應用里面講,把省下的課時加到電子技術和單片機原理及應用的課程設計里,這兩門課的課程設計時間都延長了一周,即由原來的2周延長到3周。另外在每一章節講授之前,先指出重點和難點,重點部分精講[2],要求學生全面掌握。例如,在講8086/8088結構一節時,存儲器地址分段是本章的重點和難點,講課時應配以大量圖表形式進行重點闡述并輔以例題和練習題加深理解,而關于計算機硬件一節,學生在前修課程中已經學過,只是粗略復習一下即可。其他章節也采用類似的方法。這樣,學生知道每一章節的重點、難點,學習有了目標,大大提高了學習效率,增加了學習本課程的積極性。
由于《微機原理與接口技術》課程內容多、 細、 零散、 前后內容交錯且涉及到的知識面又廣,學生初次接觸時往往覺得難學,特別是隨著教學進度的推進,學生感覺所接收到的知識比較散,很能理清頭緒,更談不上好好理解并加以運用了。所以在教學中可利用圖表法[3]對課程內容進行科學地歸納組合,即將相關的內容組合到同一個模塊中,然后抓住課程內容的主動脈用連線將模塊之間的聯系標識出來并加以說明,從而使課本上那些分散、 零碎的知識點一一串起來,形成一個層次清晰、結構明朗、聯系緊密的圖表。有了這結構清晰的圖表,學生即可以對相關內容進行總體上的把握又可對某一個具體的知識點進行縱向的擴展和橫向的比較,學生學習起來也不會感到混亂,且會激發學習的興趣。
2 恰當應用多媒體教學,提高教學效果
《微機原理與接口技術》課程中微機的工作原理部分是很抽象的、看不見的、摸不著的,學生覺得難以理解。若使用多媒體教學,讓關鍵部分具體化、形象化,讓重點凸出、顯示出來,可以促進學生的理解和記憶。這就要求多媒體課件制作必須根據課程的相關知識,用最合適的應用軟件,制造高標準、高質量的多媒體課件。為加強課堂教學的效果,我們可以采用理論教學和實驗演示同時進行的方法,使學生在輕松有趣的學習(氛圍)中掌握所學知識。例如,在講解芯片引腳圖和芯片的內部結構圖時,可在課件中通過點擊相應文字或按鈕來控制這些圖片的顯示或隱藏,并在圖片旁邊顯示文字說明或語音提示,從而增強圖片的可讀性,如圖1所示;又如,匯編語言指令和數據尋址方式是課程的基礎,可在課件中用FLASH動畫來模擬原本無法看到的指令執行過程和數據流動方向。在此課程中,類似的情況還有很多,采用多媒體教學一方面可以加快教學速度,彌補教學時的不足;另一方面圖文并茂,動感演示,無疑會激起學生的學習興趣,課后閱讀時容易產生聯想。
3 實踐效果
根據新的培養方案與所采取的改革措施,我們已經實施了兩年,從實際的效果來看,課程內容教學改革是非常成功的。通過微機原理及匯編語言的學習,然后再學習單片機,90%的學生覺得單片機易學易懂,達到了我們的預期效果。
4 結束語
我院《微機原理與接口技術》已被列為2009年湖南省精品課程,我們將以此為契機,認真扎實地開展教學研究,一定要把這門課程建成合格的省級精品課程。
參考文獻:
[1] 周明德.微型計算機系統原理與應用[M].4版.北京:清華大學出版社,2004.
關鍵詞:微機原理;施教對象;講授藝術
中圖分類號:G64文獻標識碼:B
文章編號:1672-5913(2007)04-0016-03
1 引言
“微機原理與接口”課程(以下簡稱“微機原理”)一直作為高等院校電類各專業、計算機專業、機械設計制造及自動化、機電一體化、過程裝備與控制、化工儀器儀表等工科專業必修的課程之一(電類為專業基礎課)。近年,隨著計算機技術、微電子技術的飛速發展,微機及其相關的技術以超常的速度跟進,新技術新設備層出不窮,使得微機原理課程的內容越來越多;另外,計算機及其相關產品越來越多地沖擊著人們的工作方式和生活方式,高等院校中越來越多的理工科專業要求開設微機原理(計算機硬件基礎)課程。然而,正是微機原理課程教學內容量大, 教學對象面廣,各類專業的學生基礎差別較大,使得非計算機、非電專業的學生感到抽象難學;另外,部分學校課程名稱及授課內容較混亂,如同是微機原理課程,有的班級上80X86,有的班上8051(多為機械專業等非電專業,建議課程名稱應統一為“微機原理及接口技術”和“單片機原理及應用”);第三,在教學時數上課時差別教大,多為:計算機專業: 60―80學時;電類專業:60―75學時;機械類專業:40―50學時;第四,基礎知識差別大:計算機專業有先導課“計算機系統結構”、“計算機組成原理”,還有平行開設的“匯編語言程序設計”;電類專業有模電/數電等先導課程;其他理工類專業(如機械類專業)卻只有僅僅是把電路分析、模擬電路、數字電路、電機學、變流技術等整合為一門課的電工學,以及“計算機應用基礎”。可見有限學時下微機原理課程要在不同施教對象中按照“厚基礎、寬口徑、重應用”的宗旨,因材施教并非一件易事。
此外,由于計算機硬軟件技術發展很快,而且硬件新技術、匯編語言新版本大多和原有的基礎技術一脈相承,所以有些老師覺得講授最新的更好,而有些老師則認為還是講授基礎性知識好,兩者難于統一。
本課題研究小組經過大量的研究實踐,在本校教學中大膽進行改革,把“微機原理與接口”課程(“計算機硬件基礎”)分成3~4個授課層次(如A、B、C、D類)分別制定出不同的教學大綱來執行,因材施教,各取所需。
2 在計算機專業中把握好整體與個體、取與舍的辯證關系
微機技術的發展使得微機原理課程包羅了太多的內容:除了指導委員會確定的七個基本知識單元(微處理器、存儲器、指令系統、輸入和輸出、I/O接口技術和微機應用系統)之外,32位、64位CPU內部結構及多級流水線工作原理、虛地址下的尋址過程、高檔CPU新增指令及MASM32匯編語言語法規范(乃至WIN32編程等)、段頁存貯管理及芯片組、總線標準(EISA、PCI、USB等)等新內容也不能不涉及。
如果仍然僅以8086CPU來講授,對計算機軟件、計算機應用專業學生來說,未免過于落后,因為8086CPU和現用的Pentium相比,至少已經淘汰了三代;另外,對計算機專業學生來說,他們已經學習了先導課“計算機系統結構”、“計算機組成原理”,“計算機”和“80X86微機”二者是整體與個體、一般與特殊的關系,并且一般還有與“微機原理”同步開設的“匯編語言程序設計”(一般開設順序多為:匯編語言微機原理接口技術[單片機應用]),因此,在有限學時下,象數制、原碼、補碼加減原理、ALU原理、16位匯編語言等部分完全應從簡處理,而應重點講授80386/80486/Pentium內部結構及工作機理、存貯管理技術(包括段頁式存貯管理、Cache原理與訪問管理、虛擬存貯管理)、I/O接口及外設接口(硬、軟盤驅動器接口、網絡與通信接口、打印機接口等)、芯片組技術,總線標準與接口技術(ISA、PCI、USB等)等,尤其是8086/8088時代的接口芯片多數已淘汰,新的芯片組在結構和功能上已與早期芯片具有本質區別,所以將原來側重芯片的內部結構改為側重芯片應用是必由之路。這樣才符合“厚基礎、寬口徑、重應用”的培養目標。當然,計算機專業的“微機原理”教學大綱的制訂絕對不是孤立的,比如32位匯編語言和Win32編程如果在“匯編語言程序設計”大綱中要求掌握的話,“微機原理”大綱就可另辟重點。
3 在電類各專業中把握好一般到特殊、基礎與應用的辯證關系
“微機原理與接口”是電類各專業處于核心地位的專業基礎課,本專業的學生在此之前有些雖沒有學過“組成原理”、“系統結構”等課,但諸如匯編語言、中斷、定時與計數技術、存貯器擴展、串并口擴展、總線標準等都是后備課如“單片機原理與接口”、“計算機控制”、“可編程控制器PLC”、“DSP數字信號處理”等課(電類專業一般為:微機原理及接口技術 60―80學時單片機原理及應用40―60學時)以及日后從事科研所必需的,尤其是“單片機原理與接口”和“計算機控制技術”的學習必須以“微機原理及接口技術”奠基。
事實上,從“微機原理”到“單片機原理”是一般到特殊的關系,“單片機原理”是“微機原理”的后補課程,兩門課都是實用性很強的課程,學好了微機原理,單片機原理是稍學即會。象微機原理中的地址、寄存器、鎖存器、控制字、堆棧、中斷、定時與計數技術等概念可在單片機原理課程學習中直接應用;但是,工業過程控制中用的更多的是單片機控制和PLC控制(即使象網絡控制、現場總線控制其終端實現也一般用單片機或PLC控制),所以和單片機共有的匯編語言、CPU結構原理,存儲器擴展、并/串行口擴展、總線、LED及鍵盤的接口等內容的講述要不厭其煩,舉一反三,而前述的計算機專業所側重的高檔CPU的段頁式存貯管理、Pentium結構及芯片組、硬、軟驅接口、MASM32及Win32編程技術等雖不能不提,但應適當從簡,不要讓學生感到既多又雜,抽象難學,甚至出現畏難情緒,要知道,基本原理部分如果不理解透徹,單片機應用及計算機控制系統的學習就無所適從,而且直接影響著畢業設計的質量。
4 在非電、非計算機理工類專業中把握好基本原理與一般原理、開與合的辯證關系
由于微機(單片機、PLC)作為智能化機電產品的大腦與心臟,在超精密加工、數控機床、機電一體化、機器人技術中有著日益廣泛的應用,使得微機原理(有的學校開設微機原理課,但實際講授內容為“單片機原理”)也成為機電一體化、過程裝備等機類專業學生必修的一門課程,但是在授課過程中我們明顯感到兩點:第一,學生與微機相關的基礎知識薄弱,因為他們僅僅是把電路、模電、數電、電機學、變流技術等整合成一門電工學去學的,觸發器、譯碼器、計數器、存儲器等知識中的部分,甚至全部內容都是蜻蜓點水、點到為止,沒有深入學習;第二,在機械類專業中“微機原理”課程學時很有限,一般在40-50學時之間;基于上述原因,學過兩周該課的大多數同學反映,該課抽象難懂,神秘莫測。所以一開始應把數制及典型單元電路的原理講清楚以揭開CPU的神秘面紗;要有重點有選擇地講清其原理,如門控電路及控制字,一位ALU的結構、傳統CPU取指令和執行指令的過程、步驟。另外,對機械類專業學生來講,他們掌握單片機原理可能比8086原理更重要,所以在8086原理講完后,最好花幾個課時介紹8051等單片機,8051和80X86同為Intel公司的拳頭產品,匯編語言助記符十分相象,有了80X86作基礎,作比較,學8051很輕松;這也是開與合的關系。開是發散,由8086發散到8051單片機;合是聚集,機類學生計算機原理僅此一門,8051不能不聚到中去講,但8086是基礎,是主要講授對象,8051單片機是應用,要講究適度,開是放的開,聚是收得攏,百變不應離其宗。
5 在文、管、法等文科專業中把握好深入與淺出的辯證關系
學習的目的是為了應用,而計算機是一個工具,對這個工具的原理應該多少懂一些,這是這類學生的目的所在,正是由于匯編語言課深奧枯燥,大家才喜歡使用可視化的高級語言及其編程工具,所以這類專業的“微機原理與接口”一般更名為“計算機硬件技術基礎”。對這類專業學生不要大講特講80X86宏匯編語言程序設計、CRT顯示控制編程等較深內容,只有有的放矢,深淺適度,才能調動學生的積極性,激起學生的求知欲,從而收到相得益彰的效果。淺是表達,深是理解;淺是弄懂,深是探求;淺是深的必要前提,深是淺的必然深化。要按照“培養既精通本專業知識,又能應用計算機知識,解決實際問題的復合型人才”計劃來培養,讓缺乏基礎知識的學生由淺入深,循序漸進地學習和學習計算機原理,掌握基本知識,更要掌握一些實用知識如芯片組技術、USB接口、PCI、AGP總線、EIDE、SCSI標準等,要配合實物與實驗幫助學生從感性知識上升到理性認識。
6 在講授藝術上要把握好雅與俗、莊與諧、形象與抽象的關系
(1)恰當的應用俗語是提高學生理解能力的必要手段,“雅”是指用專業語言,用詞規范,語句縝密,“俗”是口語,具有通俗易懂,親切自然,比如,微機原理中的“總線”就是計算機系統中的“信息高速公路”,CPU總線浮空,就是該段“高速公路”關閉。
(2)工科“微機原理”也要講求“莊”與“諧”,“莊”是莊重、嚴肅,“諧”是詼諧、幽默,莊諧并用,寓莊于諧,讓學生在輕松愉快的氣氛中接受知識,但“莊”與“諧”的應用要適度。比如,“二級控制模塊DMA請求總線使用權”是“中層領導向最高層領導申請”,因為“DMA控制器有總線控制權,所以不是處于最底端;又如 “偽指令和指令相比不產生機器代碼,不占據存儲單元、起管理作用”可說成“偽指令是指令的后勤管理員”。
(3)提高學生形象思維能力也是課堂教學中幫助學生理解的重要手段,形象的比喻及嚴密的邏輯性語言可以觸類旁通,幫助理解。例如,“間接尋址”是寄存器中放的是存貯單元的有效地址,按該地址便能找到操作數,可以這樣理解,“張三要找李四,但只有王五有李四住址”,所以張三找到王五也就找到了李四,這是間接找法。
7 結 語
總之,在有限學時下,對于包羅了太多的內容的“微機原理”課程,我們一定要針對不同的專業對象,把握好幾個辨證關系,合理地制定適合于該專業的教學大綱,而不應把一個相同內容的大綱強加到所有的專業;另外,講課是一門藝術,在語言藝術上,熟能生巧,這是筆者講授“微機原理”多年的深刻體會。
參考文獻:
[1] Intel公司.IA-32 Intel Architecture software Developer’s Manual,volume1:Basic Architecture[Z].
[2] 陸慎,等.事實求是地制定教學計劃[J].廣西工學院學報,1999(8).
[3] 富春巖,王皓杰,等.非計算機專業研究生計算機教學的研究[J].計算機教育,2006(3):8.
[4] 王克義.非計算機專業“微機原理”課程的改革實踐與研究[J].計算機教育,2005(11).
[5] 仇玉章.32位微型計算機原理及應用[M].北京:清華大學出版社,2004.
[6] 鄭學堅.微型計算機原理及應用[M].北京:清華大學出版社,2002.
[7] 周明德.微型計算機系統原理及應用(第四版)[M].北京:清華大學出版社,2004.
投稿日期:2006-08-07
作者簡介:
關鍵詞:本科教育;課堂教學;應用能力
作者簡介:陳進(1955-),男,湖南岳陽人,湖南理工學院信息與通信工程學院,教授;郭龍源(1973-),男,福建龍巖人,湖南理工學院信息與通信工程學院,副教授。(湖南 岳陽 414006)
基金項目:本文系2013年湖南理工學院教改基金項目(項目編號:2013B19)的研究成果。
中圖分類號:G642 文獻標識碼:A 文章編號:1007-0079(2014)09-0085-03
“應用為本”是應用型大學的根本特征,[1]應用型本科教育如何培養學生的應用能力,許多論文針對中國高校實踐教學環節比較薄弱的情況,在如何加強實踐教學環節方面進行了有益的探索和研究。
應用型本科院校培養的應用人才屬于“理論應用型”,其應用能力應該體現為具有運用科學理論知識和方法來綜合分析、解決問題的綜合能力以及將解決方案付諸實施的實踐能力。[2]因此,應當在教學各個環節――不僅僅在實踐教學環節――全面地培養學生的應用能力。
課堂教學是本科教學最重要的部分,是人才培養的主陣地。[3]如何在課堂教學中培養學生的應用能力,筆者根據多年“數字電路”和“單片機原理與接口電路”課程的課堂教學經驗,從課堂教學內容取舍、課堂教學過程中的講授、習題的布置與講解等方面對如何培養學生的應用能力談一些自己的體會。
一、從培養學生應用能力出發對課堂教學內容合理取舍
教學內容是課堂教學的生命,從培養學生應用能力出發,應該合理地對教學內容進行取舍。
1.教學內容要緊跟應用發展
知識的創新和應用日新月異,而教材內容更改往往滯后。面對這種情況,教學內容要緊跟應用發展,盡可能與當前工程實際接軌,使學生走向社會后能夠盡快上手應用。
“單片機原理與接口技術”課程,大多數教材采用匯編語言編程。但是,目前單片機實際應用中,設計與開發多使用C51語言編程。根據這個情況,筆者采用匯編語言編程的教材,補充講C51語言編程,并且在應用編程例題上交替采用兩種編程語言。
隨著半導體技術的發展,單片機串行擴展接口已經普遍應用,在《單片機原理及接口技術》教材[4]中,雖然介紹了單片機串行擴展技術,并指出“單片機串行擴展技術與并行擴展技術相比具有顯著的優點”,但在其他各種接口的章節,仍然是講授并行擴展接口,為此筆者增加了串行接口芯片的內容。例如在A/D接口技術中,除了講一個典型并行接口芯片0809與AT89C51接口電路外,增加了串行接口芯片AD7896與AT89C51接口電路的內容。
2.教學內容要從應用角度出發突出重點
課堂教學要從應用角度出發,突出重點,精簡內容,盡量避免或減少繁雜的理論推導。需要說明的是,應用型本科人才的“應用性”不只是繼承性應用,而且是創造性應用。[5]因此,精簡內容并不是基礎知識不講,而是有些基礎知識還需要重點講授。
邏輯門電路是《數字電子技術》中作為基礎的一章,[6]其內容包括了CMOS、TTL等各系列電路的內部組成與工作原理、傳輸特性、電參數定義、邏輯功能與邏輯符號。由于這一章節內容多,特別是集成邏輯門電路的內部電路比較繁瑣。若教學內容面面俱到,只能走馬觀花式講解,學生分不清主次,也無法弄懂。若對于內部電路不講解,也同樣會使得學生知識欠缺,造成應用能力減弱,這是有過教訓的。[7]非微電子專業應用中只用到與邏輯門的輸入、輸出接口,所以學生關鍵是掌握邏輯門內部電路中的輸入、輸出電路結構和工作原理以及與應用相關知識,這是課堂教學的重點。例如,CMOS邏輯門電路,只需要詳細講解CMO反相器內部電路,其他CMOS門的內部電路可不講。因為各種CMOS門電路在輸入、輸出端都加了反相器作為緩沖電路。CMOS反相器內部電路十分簡單,學生容易懂。
“數字電子技術”課程中,介紹了多種集成電路芯片。從應用角度出發教學,重點應放在器件引腳、邏輯功能及典型應用講解,而對其內部電路,不要過于糾結。例如譯碼器74138,在本課程的存儲器擴展和后續課程中都會出現地址譯碼,因此必須引入地址譯碼的概念,并重點講解地址譯碼的意義和作用。筆者在課堂教學中,通過圖1所示地址譯碼電路課件,重點講解地址譯碼的意義和作用。
3.教學內容要適當增加工具軟件的內容
隨著計算機技術的發展,各種工具軟件應運而生。課堂教學在突出重點精簡內容后,留有時間講授工具軟件。這一部分內容以教師引導,學生自學為主。“數字電子技術”課程引入電子線路仿真軟件Multisim 10,“單片機原理與接口技術”課程引入單片機集成開發環境Keil ?Vision4。引導學生對分析和設計的電路和自己編寫的程序進行仿真,有利于培養學生的應用能力。課堂教學中,講解例題和習題時進行仿真,有利于學生對教學內容的理解。
二、在課堂教學過程中注意培養學生應用能力
認真做好教學課件,讓學生有感性認識。要通過多媒體課件,使學生對學習的知識有一定的直觀感覺,這種感性認識是有利于培養學生應用能力的。
“數字電子技術”課程中顯示譯碼器這一章節,筆者在多媒體課件中使用與實際數碼管類似的圖標,來說明共陰極數碼管的段碼是如何得到的,以及顯示譯碼器的功能。當介紹了共陰極數碼管引腳為高電平時對應LED發光后,用圖2所示課件分別給出顯示“0”,“1”,“2”的abcdefg的值和段碼,對應LED發光和數碼管顯示對應數字。多媒體課件不是靜止的,而是動態的,課件中首先是數碼管顯示“0”,然后要學生考慮哪些LED發光,再使“a,b,c,d,e,f”LED發光,最后出現“0”的段碼“11111100”;“0”,“1”,“2”按照這個過程出現一次,段碼是如何得到的就很清楚了。圖2顯示的是數字“2”的段碼“11011010”的來由。
然后很容易引入七段顯示譯碼器的功能:輸入的十進制數代碼進行譯碼,輸出段碼abcdefg,點亮LED顯示器的各段,顯示對應的數碼。圖3是說明74HC4511的譯碼功能的課件界面。
1.注重從總體思路入手,培養學生的應用能力
課堂教學中比較復雜的問題,教師應該從總體思路合理引導,使學生先明白總體思想,就比較容易理解具體的步驟,這樣也能夠培養學生分析問題和設計電路時從總體思路入手的習慣。
例如,“數字電子技術”講解8位D/A采用雙極性輸出方式所設計的電路的原理,必須先講清楚設計總體思路:利用已有的單極性輸出D/A電路,設計雙極性輸出電路,措施是:數字提升,模擬下降。第一,數字提升,將輸入的帶符號的二進制補碼+128,變成單極性數字量;第二,采用單極性轉換電路得到單極性輸出模擬量;第三,模擬下降,將輸出模擬量-5V,變成雙極性輸出模擬量。這個總體思路清楚了,實現數字提升、模擬下降的具體方法就好理解了。
“單片機原理與接口技術”課程中,串行通信編程,也必須先講清楚程序設計總體思路。以較簡單的雙機通信方式1發送編程為例。首先要強調發送時只要將需要發送的數據送到發送緩沖器,則串行口自動地按照指定的數據格式、波特率從TXD引腳發送。發送完后,TI=1,產生串行口中斷。
編程需要解決什么問題?主程序:編程指定發送數據格式和波特率,中斷設置;需要發送到數據準備好,發送數據指針指向發送第一個數據;將發送的第一個數據,送入發送緩沖區;中斷服務子程序:判斷需要發送的全部數據是否發送完,完了退出,如未完,發送數據指針下移,將下一個發送數據送入發送緩沖區。編程的總體思路清晰了,再講解相關程序就容易理解了。
2.盡量貼近實際,讓學生盡早接觸應用
課堂教學中,相關示例要盡量貼近實際應用,讓學生盡早接觸應用,同時也讓學生容易理解。
《數字電子技術》第9章中,教材采用的一個泛指的工業生產過程控制對象,說明為什么需要D/A和A/D。為了貼近實際應用,筆者采用一個染色鍋溫度控制實例來說明,如圖5所示。
“單片機原理與接口技術”課程中,C51編程一章的例題都是與硬件電路無關的軟件編程,而單片機實際應用主要是根據硬件電路設計程序。因此,筆者講解一個軟件與硬件結合的例題,電路如圖6所示,并且在?Vision_4下進行仿真調試,使學生盡早進入單片機應用的境界,同時在作業中也安排了一個類似習題。
三、通過做習題培養學生的應用能力
學生做習題,其實也是一種應用,雖說只是“紙上談兵”,但如果習題都做不好的話,就更談不上實際應用。因此,布置習題和指導學生做習題也是課堂教學中培養學生應用能力的一個重要環節。要有選擇性地布置習題。布置的習題要少而精,不要太難,但不能都是基礎題。筆者在“單片機原理與接口技術”課程中,除了前3章外,每一章布置一個接近應用的綜合習題。例如第5章中斷,補充了一個習題如圖7所示。這個習題是一個軟件與硬件結合的比較完整的中斷編程,通過這個習題,對單片機中斷編程有一個總體的概念。
要引導學生對習題進行仿真調試,特別是要求有一定能力的學生這樣做。在調試過程中,出現問題盡量自己分析原因并且解決問題,這是對于實際應用能力培養是非常重要的。當學生自己獨立或者在老師指導下解決了問題,甚至學生經過多次調試仍然不能分析出原因,最終由教師分析出原因。只要有這個過程,就培養了學生分析問題和解決問題的能力。
“單片機原理與接口技術”課程中定時器/計數器一章中,習題要求P1.0輸出周期為400?s占空比為10%的矩形脈沖。某學生采用C51編程,進行調試時發現輸出波形如圖所示與要求不符。反復檢查所編程序,沒有找到任何問題。為什么實際輸出結果不對?在教師的指導下,分析其原因是C程序編譯后,中斷服務程序增加了保護現場和恢復現場,造成中斷程序執行時間大于40us,使得輸出波形不對。
要在課堂上認真講解習題。對于錯誤帶普遍性的和重點的習題要詳細講解,要分析學生為什么會錯,癥結在哪?講解習題與講解例題的效果是不一樣的,因為學生做過這個習題,不會做或者做錯了,是經過思考的,再聽教師講解,就知道錯在哪里,為什么會錯,印象深刻。一般說來,講解過的習題絕大多數學生都會做了。
在講解習題的過程中,要有意識地培養學生的應用能力,如仿真調試波形不符的一例,在習題課中引導學生進行仿真,分析C51中斷程序編譯后的匯編語言程序執行時間大于40us,培養學生自主調試能力,并針對部分學生認為匯編語言無用的思想,指出即便采用C語言編程,在分析所出現的問題時,仍然需要用到匯編語言。
四、結束語
要在課堂很好地培養學生的應用能力,首先教師本身就應該具有較好的實際應用經驗,否則就是一句空話。目前高校中一部分教師是從學校到學校,自身缺乏實際應用能力。因此,對于應用型的本科院校,在強調教師高學歷的同時,應該注重教師的實際應用能力。對于在校的年輕教師,應該采用各種方式,進行一定的應用能力培養。
參考文獻:
[1]朱科蓉.應用型大學的核心競爭力及其提升策略[J].北京聯合大學學報(人文社會科學版),2006,4(4):9-12.
[2]徐理勤,顧建民.應用型本科人才培養模式的探索與實踐[J].高教探索,2007,(2):57-60.
[3]彭美云.提高本科課堂教學效果的建議[J].中國大學教育,2010,
(7):17-19.
[4]張毅剛,彭喜元.單片機原理及接口技術[M].北京:人民郵電出版社,2008.
[5]唐向宏,章堅武,姜斌.應用型本科人才培養模式的探索與實踐[J].電氣電子學報,2009,(Sl):76-78.
[6]康華光.電子技術基礎(數字部分)[M].北京:高等教育出版社,
2006.
關鍵詞:單片機;教學;工程能力
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2015)13-0149-02
一、目前單片機教學在工程能力培養上存在的問題
隨著單片機在社會中的應用越來越廣,企業對單片機領域的人才有較大的需求[1]。但在高校人才培養計劃中,與單片機人才培養密切相關的是《單片機原理及接口技術》和《單片機原理與應用》等相關課程,也逐步在探討與開展“理論教學+實踐教學”的單片機教學模式,并已有多個高校為單片機安排了專門的實驗教學學時,該教學方法從一定程度上改善了學生的動手能力,但實驗與工程應用相對脫節,學生并未掌握單片機系統的設計方法[2],同時在教學過程中缺乏對學生工程概念的培養以及企業項目開發流程的指導,培養出來的學生缺少綜合開發能力,與企業所需要的具有工程能力的人才有很大差距。因此,本文探討了一種基于工程能力培養的單片機課程教學方法,即在教學過程中有步驟有計劃地引入企業項目開發的基本流程,并指導學生如何根據流程來開展項目開發工作,培養學生的工程觀念以及工程能力,與企業的用人需求相一致。
二、單片機教學中工程能力的具體體現
工科學生的工程能力包括知識的學習與應用能力,思維判斷與分析能力,工程設計與實踐能力,表達與交流能力以及創造與創新能力[3]。對于單片機課程而言,注重培養的工程能力主要體現在:一是對單片機理論知識的學習及將其應用到單片機系統設計與開發中的能力;二是可根據單片機系統需求說明書,結合單片機理論知識,設計出符合工程需求的單片機系統的能力;三是在前期積累基礎上的升華,對專業知識的融會貫通,并可在系統的設計與開發中,具有優化系統的能力――創新能力。
三、單片機教學中培養工程能力的具體措施
我校電子信息專業在第五學期開設《單片機原理及接口技術》課程,該課程特點是硬件與軟件并重,理論與應用相結合,同時還涉及多個學科,信息量大且課時少[4]。根據單片機課程的特點,結合我校電子信息專業學生從前期已學習課程而具有的知識儲備(前期學習儲備課程詳見表1),以及單片機的教學與實踐,同時從課堂理論教學環節、實驗室的實踐教學環節以及課后指導環節,采取相應的措施來培養學生工程能力。
1.理論教學環節工程能力的培養。通過改變教學策略―將傳統的以教為主的理論教學模式,轉變為教―學―做一體的教學模式,增強學生知識的學習與應用能力,提升實際工程問題的分析與解決能力。在教學過程中,除了教師對理論知識的講解,并引入相關案例,使學生加深對知識的理解外,還引導學生如何自己著手來設計具有一定功能的單片機系統。促使學生有效融入本課程的學習,提升動手能力以及創新能力。具體實施步驟如下:首先,在課堂教學初始階段,可結合單片機系統在我們實際生活中的一些應用實例,同時通過講解應用實例中的單片機系統的開發步驟,并引入企業單片機應用系統開發的流程。使學生對本課程有一個較為全面的認識,了解本課程的學習方向以及今后的就業方向,減少職業陌生感,提高學生學習興趣。另外,還鼓勵學生將之前在《電子系統仿真技術》中關于protues軟件平臺的使用知識,以及在《電子電路工程實踐》中學習的如何制作與調試PCB板的知識,與在本門課程中學習的單片機系統知識進行融會貫通,積極動手設計單片機硬件系統,并在protues上進行單片機系統的仿真,增強對單片機系統硬件的理解,特別是整個硬件系統的工作機制和如何根據所設計的硬件系統的需求,來設計符合系統硬件性能的單片機系統。其次,在課堂教學時,除了遵循教學大綱教學要求外,將企業單片機項目開發的實際使用的技術,與本課程所學知識進行對比討論,并對在企業工作所需的,但在教學大綱中未涉及或涉及較少的知識,進行有效補充。比如在講到指令系統、匯編語言程序設計時,可補充如何使用keil軟件來開發單片機系統的軟件,以及如何在keil中驗證自己所寫的代碼是否正確,并可通過單片機內部寄存器和單步執行來查看一下執行一些指令過程中,寄存器內部信息的變化,使學生更為深入了解單片機指令系統,指令系統的工作過程以及匯編語言的程序設計與運行過程。另外由于匯編語言本身的局限性,目前企業在開發單片機系統時,普遍采用單片機c語言,為了學生知識可與企業需求同步,在教學中結合學生前期所學的《c語言程序設計》課程,指導學生如何將c語言與單片機系統軟件設計結合起來,引導學生采用單片機c語言來開展單片機系統的軟件設計,并在實踐課上進行運行驗證,實現知識的融會貫通。
2.實踐教學環節工程能力的培養。目前我校單片機實驗教學學時僅為12學時,在后續的實踐環節,考慮到各個學生對課程知識的掌握程度不同,在單片機實踐教學環節采取驗證實驗與自主設計相結合的方式來開展實踐課――實驗教學環節采用驗證性實驗和自主設計性實驗兩個部分來構成,加強學生的工程設計與實踐能力。國內大多數院校的單片機實驗環節都在實驗箱上進行,實驗箱的接線操作比較古板,無法給學生提供足夠的設計空間,學生只能單純地對實驗代碼進行運行,觀察實驗箱對應的硬件。針對這一現狀,我校自行開發了一套實驗系統板可供安排各種綜合性實驗,學生還需要根據教師的要求,對代碼進行相應的修改,并能清晰說明整個代碼的運行流程以及修改依據,有效鍛煉學生分析代碼的能力以及表達能力。自主設計實驗環節仍然是在實驗系統板上進行,但教師在上相應的實踐課之前,需要對該次課所用的源碼進行有效梳理,刪減掉一些功能性代碼,同時對需要學生自行增加的代碼,提供必要的注釋,提前提供給學生,使學生能有較為充裕的時間來復習理論知識,并可充分思考如何解決實踐課的問題。這樣,學生不僅能更深領會該實踐課要實現的系統功能,并能在通讀已經提供的代碼和結合系統功能,對缺少的代碼補充完整。而且在上實踐課時,學生是有備而來,可以盡快地投入到實驗中,如果有深思已久,卻仍然無法解決的問題,可與老師一起探討如何解決問題,直到問題解決,增加學生成就感的同時,還可以提高學生分析與解決問題的能力,促進師生的溝通與交流,提高學生的表達與交流能力。
3.課后指導環節中工程能力的培養。通過加強《單片機原理及接口技術》與電子信息專業實踐教學環節相結合,可有效彌補單片機課程本身信息量大但課時偏少的問題。本專業第2學期開始,陸續開設了認識實習(第二學期)、電子電路工程實踐(第三學期),對后續的單片機學習提供了相關的知識儲備,并與單片機課程開設的同一學期,開設了智能電子儀器設備設計與實踐,學生可參考單片機課堂上學習的單片機系統設計流程來開展實踐環節的智能電子儀器設備的需求分析與軟硬件的設計,同時,在該實踐中對于具體產片的硬件設計與制作,數據采集過程中的A/D、D/A轉換,以及數據顯示等部分內容,可幫助學生在單片機學習過程中,對單片機硬件系統,A/D、D/A轉換接口、顯示接口的理解,并通過該實踐,學生可根據產品的需求,對產品功能以及性能的實現方式有極大的自由,學生可根據自己的想法以及對當前產品資料的查閱,然后對需要設計的產品進行自主創新,提高學生的創新能力。同時第五學期學習的單片機課程知識以及工程能力,可很好地服務于第六、第七學期開設的電子系統設計創新與實踐、先進電子制造實踐與生產實習,乃至學生最終的本科畢業設計。
通過在《單片機原理及接口技術》理論教學、實驗教學以及課后指導三個環節加強學生工程能力的培養,學生不僅可以更好地掌握理論知識,還可以將理論知識有效地運用到具體的單片機系統的分析中,同時在設計具體的單片機系統時,不再忙亂無章,而是有意識地根據單片機系統開發的基本流程,來逐步開展系統的分析與設計。學生的工程觀念以及實際工程項目開發能力顯著提高,同時增強學生對未來就業的信心,為將來的就業打下一定基礎。
參考文獻:
[1]何新洲,肖學玲.任務驅動教學法在單片機教學中的應用[J].湖北成人教育學院學報,2011,(11).
[2]吳定會,紀志成.單片機原理與應用課程教學的改革與實踐創新[J].江南大學學報(教學科學版),2008,6(28).
【關鍵詞】單片機 理論與實驗 課程設計 協同教學
【中圖分類號】G64 【文獻標識碼】A 【文章編號】2095-3089(2016)31-0243-01
引言
單片機理論、實驗和課程設計相關課程體系是各高等院校電子電氣信息類工科專業基礎專業課程設置的重要組成部分,為大學生深入學習掌握單片機的基本原理,設計方法,實踐應用等打下基礎。大多數理工科高校開設這些課程,對學生進行綜合培養。對于單片機的理論與實踐教學,既可以選擇匯編語言,也可以選擇C語言進行。在高校的實際教學工作中,大多數老師是選擇匯編語言進行教學的,因為從匯編語言入手能更好的掌握單片機的硬件資源使用原理等,也有部分老師是直接使用C語言進行教學,認為匯編語言編程過于繁瑣,而C語言編程能夠在將來的實踐工作中得到更好的應用。本文通過總結作者多年來在單片機相關課程教學積累的經驗和教學研究心得,以51單片機理論、實驗和課程設計教學為例,對如何在使用不同編程語言進行繁瑣和復雜的教學中使學生更好地掌握單片機知識體系進行了探討。
1.單片機理論教學
1.1 匯編語言理論教學
單片機是一個把中央處理器CPU、數據存儲器RAM、程序存儲器ROM、并行IO接口、串行IO接口、定時器計數器、時鐘振蕩電路等集成在一起的控制芯片,硬件資源簡單且豐富,也易于擴展電路,所以單片機的學習側重點首先在于掌握硬件資源使用方法。因為匯編語言實際上是CPU能夠識別的機器碼的助記符,從匯編語言入手開始教學,能夠使學生更好地掌握單片機的硬件資源使用原理。使用匯編語言編程可以很方便地對單片機存儲器地址直接進行存取操作,也能很方便地對存儲器地址進行整體安排分配,前提是對單片機硬件資源非常熟悉,能夠靈活調用。比如指令MOV、MOVC和MOVX可以分別訪問單片機內部的數據存儲器、程序存儲器和外部擴展的數據存儲器。匯編編程的缺點在于進行算術運算和邏輯判斷跳轉等比較繁瑣。
1.2 C語言理論教學
國內的單片機C語言程序設計教程多數的編排都會在前面開始的章節介紹單片機硬件資源以及匯編語言指令系統,然后以更大篇幅講述C語言程序設計語法和針對硬件資源的編程。針對單片機的C語言程序設計語法與計算機C語言高級程序設計編程語法基本一致,而針對硬件資源的指令又類似于匯編語言指令系統,所以應該可以說單片機C語言程序設計是計算機C語言高級程序設計和匯編語言指令結合體。要掌握好C語言編程依然要對于單片機的硬件資源理解透徹并能靈活調用。但是C語言針對硬件資源的指令與匯編語言指令比較起來卻不如匯編那么直觀,也不如匯編指令那樣更加有助于單片機硬件體系結構的理解。
為了使初學者能夠更好地理解單片機硬件體系結構,掌握硬件資源的調用,選擇匯編語言進行教學顯然是更加合適的。
2.單片機實驗教學
單片機作為電子電氣信息類專業的一門專業基礎核心課程,比某些專業基礎課程如電路原理、數字電子技術、模擬電子技術等更加注重編程實踐的練習。單片機實驗課程一般都是配套安排在單片機理論課程的下半學期,這樣能夠更加有助于理論的理解和掌握。作為理論課程的配套課程,單片機實驗課程在教學上必須與理論課程保持一致性,選擇匯編語言進行實驗教學就是必然和最好的選擇。
在實驗設備的選擇上,學院實驗室早期購置過星研單片機Star ES51實驗箱,后來又購置了大批光佑STC開發板,可以兩者選其一。
早期的單片機實驗都是集中在實驗室進行,兩人共用一臺實驗箱,通過連線和讀寫配套程序仿真運行來進行實驗。這樣的實驗有一些明顯的不足,比如配套程序調用了很多鍵盤顯示的子程序,而這些子程序沒有直接給出來,實驗箱的很多硬件電路連接也沒有給出詳細原理圖,所以造成了實驗結束后多數學生也是對實驗原理和編程似懂非懂的結果。
有了STC開發板后,每個學生可以分配一塊開發板,各自進行單片機的編程仿真實驗,還可以將開發板帶回宿舍課后繼續練習,實驗可以更方便地進行。實驗開發板的原理圖清晰,例子程序豐富,通過讀寫配套例程可以較好的掌握單片機的基本原理。
顯然使用匯編語言選擇STC開發板進行單片機實驗是實驗教學的最好安排。實驗課程的要求注重于單片機基礎知識的掌握和硬件資源的調用。
3.單片機課程設計教學
單片機課程設計的安排是為了進一步提高學生的實踐能力,所以課程設計的教學就不再局限于基本原理的掌握,而是必須達到更高程度的實踐效果。匯編語言編程有利于對基礎知識的理解和單片機硬件資源的掌握,卻不利于復雜邏輯的處理。所以在學生已經基本掌握了基礎理論的情況下,課程設計選擇C語言編程,可以讓學生更加方便的進行復雜程序的編寫。
單片機課程設計實踐項目內容的安排上,必須注重單片機內部和外部硬件資源的綜合調用,以便完成具有實際意義的綜合程序的編寫。課程設計實踐項目安排了可以綜合調用單片機I/O口資源進行鍵盤掃描數碼管顯示以及中斷處理的實現計算器功能的程序編寫,和能夠使用I2C總線進行通訊的AD/DA處理的程序編寫。這兩種程序的綜合度和復雜度都遠遠大于單片機實驗題目的要求。從實踐結果來看,通過這種綜合性復雜程序的編寫練習,能夠大大提高學生的開發設計實際項目的動手實踐能力。
結束語
在我國大力實行人才戰略強調人才培養的大環境下,本文作者所在高校也響應國家號召加強本科生培養,實施卓越工程教育,取得了積極可喜的成績。本文積極探索和提高單片機理論實驗課程設計協同教學的方法,取得了長足的進步和發展,也得到了學生的高度認同。以此方法培養出來的本科生在參加全國大學生電子設計競賽的過程中也取得了驕人的成績。本文作者經驗和方法也可以為兄弟院校相關專業的教學提供參考和借鑒。
參考文獻:
[1]李朝青.單片機原理及接口技術(第4版),北京航空航天大學出版社,2013.7
[2]郭天祥.新概念51單片機C語言教程――入門、提高、開發、拓展, 電子工業出版社,2009.1
[3]彭偉.單片機C語言程序設計實訓100例――基于8051+Proteus仿真(第2版), 電子工業出版社,2012.10
關鍵詞:單片機 理論教學 實驗教學 良性互動 人才培養
從上個世紀70年代第一只單片機面世,短短二三十年的時間,單片機技術已成為自動控制技術的一個重要分支,廣泛應用到工業控制、儀器儀表、消費產品、汽車、辦公自動化、通信等領域。因此,是否具有單片機開發能力就成為許多公司招聘工科專業學生的衡量標準,同時也成為許多學生尋找理想工作的必備技能之一。筆者根據多年的學習、教學及科研實踐和當前大學生的就業狀況,在此淺談自己的幾點拙見。
單片機課程的教學是一門理論性、實踐性都很強的專業基礎課程。目前,在我國的各大工科院校都開設有《單片機原理及應用》課程,且大多采用傳統的先基礎后應用的教學模式,即:單片機硬件結構匯編指令系統系統擴展接口技術應用系統設計。實驗教學一般在“匯編指令系統”講完之后才開始進行,理論學習和實驗進行的時間不對應,且多為教師規定幾個實驗做完即可,很少進行開放性和設計性的實驗,這是最粗糙的教學過程,這種教學過程直接導致學生對單片機的學習提不起興趣、知識脫節,筆者經過多年的教學經驗總結出:理論教學和實驗教學絕不能單純地割裂開,并且二者應相互滲透,相輔相成。只有這樣才能達到好的教學效果,以更好地培
養學生的硬件設計能力,適應創新型人才教育體系的需要。
一、激發學生學習的興趣和求知欲
單片機課程課時少,任務重,學生的主動學習就顯得尤為重要。興趣是最好的老師,在課程學習的開始,不要進行理論開場白,而要給學生展示一些單片機的產品如電腦時鐘、數字溫度計、電子密碼鎖、公共汽車報站系統、電子飯卡等,帶他們到系電子設計室,讓他們看到上屆學生的實習作品,在大學生電子設計競賽中獲獎的作品,并且從中選取一簡單產品引申到理論教學中涉及的主要內容,從而激發他們的學習興趣,同時在頭腦中形成理論知識大框。
二、改進理論教學方法
1.引用先進的教學儀器和課件,加強學生理解。
教學中使用電腦,用幻燈顯示教學內容,將PPT和黑板板述相結合。演示的信息量比較多,PPT省去了畫電路圖和表格的時間,還可以動態形象直觀地演示電路中信號的變化,能加強學生的理解。
2.增刪教學內容和改善教學方法。
詳細講解常用指令的時序,結合帶外部程序存儲器和數據存儲器的51單片機電路,分析時序中各種信號如PSEN、WR、RD、PC、AB總線、DB總線的變化,以及不同時刻總線上的數值,讓學生理解指令產生信號,信號驅動單片機和外設運行。
教學中應注意原理的講述,多用邏輯圖來描述外設的工作原理,多一些理解,少一些死記硬背。匯編語言結合電路對于理解單片機的原理很重要,所以對于常用的匯編語句要做講解。但是由于C語言在單片機中的廣泛使用,故沒有必要讓學生去用匯編讀寫大程序。對于常用的算法,全部采用C語言來描述。對于復雜的算法,則不在單片機課中講述,留在C語言和數據結構課程中講述,這從很大程度上降低了單片機的學習難度,減少了學習量。
3.用C語言編寫程序,用Proteus軟件仿真。
相對于匯編語言,C語言存在如下優點:①只要掌握單片機的存貯器結構即可編程;②寄存器分配、不同存貯器的尋址及數據類型等細節可由編譯器管理;③C語言程序有規范的結構;④可使程序結構化、可改善程序的可讀性;⑤關鍵字及運算函數可用近似人的思維過程方式使用編程及程序調試時間顯著縮短,從而提高效率;⑥提供的庫函數包含許多標準子程序,具有較強的數據處理能力,因為采用模塊化編程技術,所以C語言的移植性好。在這里我們選用了KeilC5公司的C51編譯器。這個編譯器具有使用方便、編譯效率高的特點。使用它學生既學會了單片機原理,又學到了一種實用的技能。
在講課中引入了軟件模擬的方法,在模擬軟件中畫出電路圖,在編譯軟件中寫出C程序,就可以動態調試程序的運行,讓學生看到各寄存器和變量的值的變化,以及電路中由程序驅動的聲光等的變化,既增強了學生對原理的理解,又增加了學習的興趣。
這里選用的模擬軟件是Proteus,能方便地畫出各種CPU、存儲器和外設電路,能容易地和KeilC51軟件聯合調試程序,看到程序單步和多步執行后單片機寄存器和外部電路的變化。
三、加強實踐教學
1.進行常規實驗時,注意基礎理論的鞏固。
例如數據排序實驗,學生根據實驗指導書給出的程序鍵入PC機中,經過編譯后,通過串口下載到仿真器中運行此程序,只要輸入和操作無誤,則必定會得到正確的結果,即實現8031內部RAM單元中N個數據的排序。做這種實驗時,學生往往只注重于實驗結果的正確與否,而不注重程序是怎樣編出來的,也無需關心什么情況下要用哪條指令,每條指令的功能是什么等問題。所以這類實驗簡單,做完后應進行總結所涉及的理論知識并注意引申下一階段理論學習及所配合的實驗。進行實驗之前還要布置有關知識的預習及有關理論知識的復習。
2.增加設計性、綜合性實驗。
設計性、綜合性實驗的進行可以使學生更好地掌握實驗原理、操作方法、步驟,全面了解儀器設備的性能并正確地使用儀器,課程內實驗項目的設置;可以根據現有實驗條件,適當增加綜合性、設計性實驗的比例,如將單片機端口應用、擴展并行接口8155等實驗項目設置成設計性、綜合性實驗。
3.加強集中實踐教學環節。
單片機集中實踐教學環節通常有2―3周的時間,學生可以在一個時間集中的環境下進行單片機系統的綜合設計,設計內容除了與單片機直接相關的系統擴展和接口技術以外,還應根據單片機人才的市場需求和就業形勢,相應地增加新知識、新技術的應用,如I2C1總線、SPI總線、點陣LED、點陣液晶、CAN總線系統智能節點等技術的應用。每個設計項目都要求學生用PROTEL畫出電路原理圖,并使用C語言進行軟件編程,撰寫設計說明書,且在設計說明書內要求附有軟件流程圖、程序清單和電路原理圖等資料,使學生了解單片機工程項目的設計流程和方法,提高學生工程實踐能力。
以上有關單片機理論教學和實驗課程教學的經驗在實踐中應該遵從循序漸進的思路,多和學生進行實質性的溝通,多和工業實踐相聯系,形成理論和實踐的良性互動,實現教與學的最佳統一。
參考文獻:
[1]譚浩強.C程序設計[M].清華大學出版社.
[2]周航慈編著.單片機應用程序設計技術[M].北京航空航天出版社.
【關鍵詞】I2C;SDA;SCL;ACK;NOACK
1.引言
SD2300系列芯片是一種具有內置晶振、支持兩線串行接口的高精度實時時鐘芯片。該芯片在25±1℃下可保證時鐘精度為±5ppm,即年誤差小于2.5min;該芯片內置時鐘精度調整功能,可以在很寬的范圍內校正時鐘的頻率偏差,能以最小分辨率3.052ppm來進行校正,通過與溫度傳感器的結合可以設定適應溫度變化的調整值,實現在寬溫范圍內高精度的計時功能;內置電池、串行NVSRAM,其中內置一次性電池可保證在外部掉電的情況下時鐘使用壽命超過5年,內置串行NVSRAM為非易失性SRAM,擦寫次數可達100億次。該系列芯片與單片機的接口電路采用工業標準I2C總線,只用一根串行時鐘線SCL和一根串行數據線SDA與單片機實行通信,數據傳輸速率可達400kbit/s。本文主要探討如何通過單片機控制SD2300時鐘芯片實現高精度實時時鐘功能。
2.硬件電路設計
4.結束語
制作PCB板時,對SD2300A及單片機數字電源、地的輸入端加220uf以上的電解電容和104電容去除電源擾動。為了防止干擾,制板時應保證芯片底部無大電流信號通過,最好能鋪地。SD2300A的VDD和電源之間串一個200歐的電阻防干擾,不用的引腳接地,VBAT、VOUT和TEST引腳可以懸空。電源電壓必須大于等于3.0V。
編寫程序要注意在上電開始時應做一個幾百毫秒的延時。時鐘最多每半秒才讀一次。在開啟I2C總線時,要在置SDA為高電平后再判斷SDA是否為高電平,即SDA是否被可靠復位。
參考文獻
[1]張道德.單片機接口技術(C51版)[M].北京:中國水利水電出版社,2007.
[2]謝維成,楊加國.單片機原理與應用及C51程序設計[M].北京:清華大學出版社,2006.
[3]胡漢才.單片機原理及系統設計[M].北京:清華大學出版社,2002,41-42.
關鍵詞:微機原理與應用技術;CDIO;一體化:教學模式
0.引言
培養具有創新意識、創新精神和創新能力的創新型人才,是經濟全球化進程加速下建立創新型國家的迫切需要。如何培養具有廣泛的適應性和杰出開拓創新能力的工程技術人才,是高校工科教育面臨的重要課題。
一體化教學是CDIO 12條標準中的第三條準則,它能使知識、能力、素質的培養緊密結合起來,將理論、實踐、創新合為一體,是“教、學、做、思、創”和“基于項目的教育和學習”的集中體現,是培養學生工程實踐能力和創新能力的重要途徑之一,同時也是培養學生的集體主結協作精神的有效途徑。本文闡述在“微機原理與應用技術”課程中應用CDIO一體化教學模式的實踐和體會。
1.背景
微機原理與應用技術課程的前身是微機原理與接口技術和單片機原理與應用兩門課(以下簡稱兩門課)。眾所周知,微機及單片機知識是工科電類相關專業的軟硬件開發應用基礎,是學生將來工作所應有的最基本技能,所以我國高校工科電類各專業普遍都開設有微機原理和單片機課程。中國民航大學電子信息工程等電類專業在1986年籌建專業之初就設有微機原理與接口技術課程(70課時),1996年增設了單片機原理與應用課程(54課時),作為微機原理與接口技術的后續課。兩門課程之間聯系緊密,但在微機系統的知識結構中又處于不同的層面,互不統屬。自1998年實施“五強計劃”以來,兩門課的課程組就從精品課程開始加以建設,并分別于2004年、2006年相繼建設成為校級精品課。近年來,隨著嵌入式技術的蓬勃發展與普及應用,社會對嵌入式人才的需求量在逐年遞增,但嵌入式軟硬件設計開發人才又嚴重不足(每年缺口大約為20萬人)。面對這種局面,結合教育部“學分制”本科教育應適當壓縮學時,逐漸向國際化方向發展的精神和中國民航大學培養“具有創新精神和工程實踐能力的高素質應用型人才”目標定位,以及新時期下社會對創新型工程技術人才的培養需求,我們以“加強基礎、重視應用、開拓思維、培養能力、提高素質”為核心,以“突出手、腦并用,有助于促進理論與實踐結合”,“突出研究探索,有助于培養學生創新意識和能力”的思想為指導,在學校電子類課程教學指導委員會的統一規劃下,經多次教學跟蹤和調研,對兩門課程進行了優化改革,將兩門課程整合為一門微機原理與應用技術課(94課時),由同一位老師分兩個階段,分別放在兩個學期進行教學,以2008級電子信息工程專業CDIO班作為試點實踐。
2.一體化教學模式
2.1一體化教學模式的構建
一體化教學模式通過一體化教學內容、一體化教學手段和方法、一體化考核評價來實現。微機原理與應用技術課程所構建的一體化教學模式見圖1。
2.2一體化教學內容設計
整合后的微機原理與應用技術課程的教學內容及學時安排見表1。該課程的目標是在保證學生了解微機基礎知識及8086 CPU體系結構的基礎上,側重培養學生綜合應用單片機知識解決實際的能力,達到在學時被壓縮的情況下,完成建立微機系統整體概念及熟練應用單片機的教學任務。
在微機原理與應用技術課程的第1階段主要學習微機基礎,目的是幫助學生理解計算機基礎原理及結構,熟悉一款帶有普適性的CPU原理,熟悉匯編編程及應用,建立起微機系統整體概念,為后續進一步學習不同的CPU以及今后的工作和計算機應用打下堅實的基礎。本階段以理論講授為主,部分內容的講述要不厭其煩,舉一反三,讓學生牢固掌握,如對存儲器地址、尋址方式、匯編指令與程序設計、寄存器、存儲器擴展、總線、中斷等內容;部分內容只是提及或不講,如對流水線、多核、存儲器管理、32位CPU等內容,目的只是擴展學生的知識面和拓寬專業視野;部分內容采用精講多練的形式,注重學生獨立性的訓練和思維的啟發,如對接口部分的學習可以通過一個典型接口芯片來帶動學會這一類芯片的使用方法,達到“授人以漁”的目的。
課程的第2階段主要強調應用性和實用性,內容主要講述實用接口電路的設計,常用串行擴展總線,基本I/O、A/D、D/A、LED顯示、鍵盤、液晶顯示、USB、紅外通信、RS232、485及PS2等接口功能和在實際教學實驗中的應用,目的是培養學生實際動手、設計和解決實際問題的能力。
2.3一體化的教學手段和方法
一體化的教學手段和方法主要體現在理論與實踐的一體化,課內、外學習的一體化方面,通過項目聯系整個課程體系,融教師的教與學生的學、做、思、創為一體。
2.3.1理論實踐一體化
微機原理與應用技術是一門理論與實踐并重的技術基礎課,實踐性強是其最突出的特點,而工程能力和創新能力是在不斷地解決實際問題的過程中鍛煉和培養出來的,電類專業尤其需要突顯實驗實踐的特點和特色。所以,我們充分認識到了本門課程實踐教學的重要性,在實際教學中通過項目驅動的教學方式來達到實踐教學與理論教學的并重發展。
(1)在教學安排上,要求任課教師理論教學與實驗教學互通,教師既教授理論同時又輔導實驗,且要同步開設。教師在上實驗課之前,要結合相關理論知識對學生進行實驗預習引導;在實驗課堂上要結合相應的實驗現象對理論知識作進一步的總結和概括,同時鼓勵學生通過軟件仿真或通過實際制作理解鞏固理論知識。譬如對匯編尋址方式和部分指令的學習,就是在實驗室通過DEBUG環境,師生雙方邊教邊學邊做,理論和實踐交替進行,直觀和抽象交錯出現,這樣可收到事半功倍的效果。這種理中有實、實中有理的做法,既能培養學生的動手能力和專業技能,又能充分調動和激發學生的學習興趣,使學生能真正變成學習的主人;同時,通過實驗教學,教師也能及時了解學生對理論知識的掌握情況,而且這種理論指導實踐、實踐又反饋到理論的過程使得學生能從本質上加強對知識的理解,從而加強了實驗教學與理論教學之間的聯系。
(2)通過項目組織教學,可以把知識、能力、素質等培養目標融入到項目教學過程中。為了解決所遇到的問題,學生需要歸納、整理所學的知識與技能或查閱課外資料,這樣能促進學生不斷地思考,也能讓呆板孤立的知識片化作整體知識鏈,觸類旁通,突出了“教師是主導,學生是主體”的教學理念,改變了“我講你聽,我做你看”的現象。
2.3.2課內外學習一體化
針對微機原理與應用技術課程內容多、部分內容前后之間互有交叉、實踐和實用性強、知識更新快等特點,課程組以項目為載體,通過網絡、虛擬仿真工具、實驗室開放等手段將課堂教學、課外科技活動、畢業論文等關聯起來,形成課內、外一體的教學模式,見表2。
對于部分理論知識的學習,除了在課堂上通過板書或PPT講授外,還讓學生通過作業與網絡等形式進一步在課外學習,并通過校內的BB網進行師生間或學生間的網上實時答疑、討論等。
實驗、實踐教學是我們特別重視的環節和內容,在實際教學中分了3個層次的實驗,即基礎驗證型實驗、設計提高型實驗和綜合創新型實驗。這3類實驗都以項目的形式在課程一開始就布置給學生。其中基礎驗證型實驗要求全部學生必做,主要采用虛擬仿真與實物相結合的方式。設計提高型實驗分為兩部分,一部分要求全部學生必做,內容覆蓋單片機課程理論教學的主要內容和常規的模電及數電知識,難度中等,如像程控電源、溫度測量控制器等題目;另一部分是選做題目,這部分題目與全部的綜合創新型實驗,是具有一定難度的、需大量查閱資料反復調試才能完成的綜合性題目,且題目多種多樣。選這些題目的學生既可以做教師指定的題目,也可以根據自己的興趣,結合教師的各種橫向課題或各種競賽自擬題目(自擬題目需經教師確認),由2~3個學生組成一組在課外合作完成。這些實驗、實踐項目,除在課內課堂上完成指定的實驗外,其余都可以在課外利用學生科協或校內BB網,通過仿真環境或實驗室開放完成。
3.一體化的考核與評價
對微機原理與應用技術課程的考核既要體現綜合能力,又要加強過程考核。綜合能力主要看學生對課程知識、技能的掌握程度及職業素質的養成;過程考核是指考核要貫穿學生的整個學習過程,將學生平時的各種表現都納入在考核內容之中。課程最后的總成績由平時成績、項目成績和期末成績3項構成,課程綜合成績考核評價方式見表3。平時成績主要從出勤、作業、學習態度、網上討論和師生互動等方面進行考核,占總成績的15%;項目成績主要從完成項目的資料搜集、小組協作、構思、設計、制作、調試、實物演示、項目答辯和項目總結報告書寫等方面進行考核,占總成績的45%,主要考核學生的綜合應用能力及職業素質;期末考核以閉卷筆試形式進行,占總成績的40%。
論文導讀:RS-485總線型通信接口協議在遠程監控網絡中應用極為廣泛,對于大容量的傳輸監控系統可靠性設計是很重要的,文章針對RS-485在熱分戶計量系統中的應用進行了可靠性設計,詳細分析了RS-485通信產生故障的原因,提出了在選擇芯片、硬件電路設計、軟件編程需要注意的細節過程,從而大大降低了RS-485在大容量傳輸過程中的故障率,提高了系統的可靠性.
關鍵詞:RS-485,分戶熱計量,SN75LBC184
參考文獻:
[1] 胡漢才,單片機原理及接口技術[M]. 北京,航空工業出版社,1998:145-200.
[2] 楊文龍,單片機原理及用用[M].西安,西安電子科技大學出版社,2000:107-112
[3] 全國流量/容量計量技術委員會. JJG 225-2001熱能表[S].北京:中國標準出版社,2001
關鍵詞: 單片機教學 74LS164 動態掃描技術
1.引言
“串行輸入轉并行輸出”簡稱“串轉并”,是單片機教學中一個重要課題,涉及串行口、74LS164轉換芯片及電路知識的應用。在通常教學中,一般用74LS164串行擴展顯示接口,并實現靜態顯示。如何實現動態顯示,大部分學生對此問題理解不透,本文就此問題進行探討。
2.系統工作原理及電路設計
為了加深學生的理解,我考慮用串行口控制多個數碼管,模擬一個簡單的電子鐘,每過一秒動態加一。為了方便教學,便于學生理解,我用KEIL C編寫程序,在PROTEUS中畫電路并調試電路。電路原理圖如圖1所示,關鍵點有四部分。
(1)74LS164為串入并出移位寄存器,如下圖所示。
A、B:串行輸入端。
Q0―Q7(QA-QH):串行輸出端。
CP:串行時鐘輸入端。
/MR:串行輸出清零端。
VCC:+5V。
GND:接地端。
(2)數據由單片機RXD輸出,74LS164的第1、2引腳負責接收數據。
(3)移位脈沖由單片機TXD輸出,和74LS164的第8引腳進行連接。脈沖的頻率是主時鐘的十二分頻。
(4)芯片功能。
將74LS164的A、B端與RXD相接,CLK與TXD相接,/MR接高電平,在滿足條件時數據就傳送到74LS164并寄存。將前一個74LS164的QH端連接到下一個74LS164的QA端,再將CLK端連接到一起并接到TXD,則送數據時,前后數據就會依次從上一個片子傳到下一個片子。
電路如下圖所示:
(圖一)
3.程序如下:
#include
#include
sbit p11=P1^1;
sbit p12=P1^2;
unsigned char data discode[11]=
{0XFC,0X60,0XDA,0XF2,0X66,0XB6,0XBE,0XE0,0XFE,0XF6,0x00};//共陰串行。
unsigned char leddis[2]={0,0};//顯存,有幾個數碼管可以定義幾個。
unsigned char num,time;
void display(void)//數碼管顯示函數。
{unsigned char count;//數碼管個數。
for (count=2;count>0;count--)
{
SBUF=discode[leddis[count-1]];
while(TI==0);
TI=0;}}
void t0serv(void) interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(time++>20)
{time=0;
if(num++>99) num=0;
leddis=num/10;
leddis=num%10;
display();
}
}
void main()
{
SCON=0x00; //設定UART的工作方式為MODEO。
display(); //顯示函數。
TMOD=0X01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ET0=1;EA=1;
while(1)
{if(p11==0) //鍵P11被按下,開始定時。
TR0=1;
if(p12==0) //鍵P12被按下,停止定時。
TR0=0;}}
4.結語
利用Q7(QH)端連接到下一個74LS164的QA端,可以擴展多個數碼管,由于脈沖的頻率是主時鐘的十二分頻,假設擴展2個數碼管,則數碼管的最大刷新頻率約為主時鐘2×8×12=198分頻,對于主時鐘為12MHz的單片機,數碼管最大刷新周期為15.13μs。可以推算,如果擴展8個數碼管,顯示應該很穩定,沒有閃爍現象。
利用“串轉并”技術,只要用單片機的兩個引腳,就可以控制多個輸出設備,極大地節省了單片機引腳資源,但由于用到74LS164,則成本也會增加些,可以根據實際情況靈活選擇方案。
a
參考文獻:
[1]周國運.單片機原理與應用(C語言版)[M].北京:中國水利水電出版社,2009.
[2]謝維成,楊加國.單片機原理與應用及C51程序設計[M].北京:清華大學出版社,2006.
[3]張道德.單片機接口技術(C51版)[M].北京:中國水利水電出版社,2007.
[4]李建忠.單片機原理及應用[M].西安:西安電子科技大學出版社,2002.
關鍵詞:單片機;溫度檢測;報警
中圖分類號:TP311.52文獻標識碼:A文章編號:1007-9599 (2011) 23-0000-03
Temperature Acquisition Alarm System Design Based MCU
Wang Rongrong,Liu Haixia
(Inner Mongolia Technical College of Mechanics and Electrics,Huhhot010070,China)
Abstract:It designs a microcontroller based on AT89S51 and DS18B20 temperature sensor temperature collection and alarm system.The system has reliable performance,simple structure,can achieve safe temperature within a normal display temperature exceeds the set temperature,upper limit,sound and light alarm.
Keywords:MCU;Temperature detection;Alarm
一、系統設計
基本工作原理
如圖1所示為溫度采集報警系統框圖。該設計將以單片機控制的溫度采集系統為主,利用單片機完成對溫度的檢測,實現安全溫度內正常顯示溫度值,超出設定的溫度上限則進行聲光報警。
系統在溫度采集時主要應用了DS18B20芯片,該器件經過初始化后單片機首先進行ROM匹配,當受到測溫器件發回的信號時證明該器件正常工作,接著單片機發送溫度轉換命令進行溫度采集,測溫的精確度很高,可以精確到小數點后四位。設計中還應用了HD7279芯片進行數碼管顯示的驅動,一共應用了6位數碼管。
圖1 溫度采集報警系統框圖
二、硬件設計
(一)測溫和控制電路
1.測溫
測溫使用的DS18B20是典型的應用單總線技術的器件。
顧名思義,單總線只有一根數據線。設備(主機或從機)通過一個漏極開路或三態端口,連接至該數據線,這樣允許設備在不發送數據時釋放數據總線,以便總線被其它設備所使用。
DS18B20溫度傳感器是美國DALLAS半導體公司最新推出的一種改進型智能溫度傳感器,與傳統的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據實際要求通過簡單的編程實現9~12位的數字值讀數方式。DS18B20采用3腳PR-35封裝或8腳SOIC封裝,其內部結構框圖如圖2所示。
圖2 DS18B20內部結構框圖
DS18B20的測溫原理是這樣的,器件中低溫度系數晶振的振蕩頻率受溫度的影響很小,用于產生固定頻率的脈沖信號送給減法計數器1;高溫度系數晶振隨溫度變化其振蕩頻率明顯改變,所產生的信號作為減法計數器2的脈沖輸入。器件中還有一個計數門,當計數門打開時,DS18B20就對低溫度系數振蕩器產生的時鐘脈沖進行計數進而完成溫度測量。計數門的開啟時間由高溫度系數振蕩器來決定,每次測量前,首先將-55℃所對應的一個基數分別置入減法計數器1、溫度寄存器中,計數器1和溫度寄存器被預置在-55℃所對應的一個基數值。
減法計數器1對低溫度系數晶振產生的脈沖信號進行減法計數,當減法計數器1的預置值減到0時,溫度寄存器的值將加1,減法計數器1的預置將重新被裝入,減法計數器1重新開始對低溫度系數晶振產生的脈沖信號進行計數,如此循環直到減法計數器計數到0時,停止溫度寄存器的累加,此時溫度寄存器中的數值就是所測溫度值。其輸出用于修正減法計數器的預置值,只要計數器門仍未關閉就重復上述過程,直到溫度寄存器值大致被測溫度值。
單總線要求外接一個約5k的上拉電阻;這樣,單總線的閑置狀態為高電平。不管什么原因,如果傳輸過程需要暫時掛起,且要求傳輸過程還能夠繼續的話,則總線必須處于空閑狀態。位傳輸之間的恢復時間沒有限制,只要總線在恢復期間處于空閑狀態(高電平)。如果總線保持低電平超過480μs,總線上的所有器件將復位。另外,在寄生方式供電時,為了保證單總線器件在某些工作狀態下(如溫度轉換期間、EEPROM寫入等)具有足夠的電源電流,必須在總線上提供強上拉[1]。
主機控制DS18B02完成溫度轉換必須經過三個步驟:初始化、ROM操作指令、存儲器操作指令。必須先啟動DS18B02開始轉換,再讀出溫度轉換值。本系統僅掛接一個芯片,在軟件設計中使用默認的12位轉換精度,外接供電電源,讀取的溫度值高位字節送單元,低位字節送WDLSB單元,再按照溫度值字節的表示格式及其符號位,經過簡單的變換即可得到實際溫度值。
2.控制
AT89S51是美國ATMEL公司生產的低電壓、高性能CMOS8位單片機;片內含有4k字節的可反復擦寫的只讀程序存儲器(EPROM)和128字節的隨機存取數據存儲器(RAM);器件采用AMTEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統;片內置通用2位中央處理器(CPU)和Flash存儲單元,功能強大的AT89S51單片機可為您提供許多高性價比的應用場合,可靈活應用于各種控制領域。
圖3 測溫和控制電路
(二)顯示控制電路
HD7279A是一片具有串行接口的,可同時驅動8位共陰式數碼管(或64個LED點陣)的智能顯示驅動芯片,該芯片同時還可連接多達64鍵的鍵盤矩陣。該芯片內部含有譯碼器,可直接接受16進制碼,HD7279A還同時具有2種譯碼方式,HD7279(A)還具有多種控制指令,如消隱、閃爍、左移、右移、段尋址等。HD7279與單片機僅需4條接口線,其中CS為片選信號。當MCU訪問HD7279時,應將片選端置為低電平。DATA為串行數據/輸出端,當向HD7279發送數據時,DATA為輸入端;當HD7279A輸出鍵盤代碼時,DATA為輸出端。其特點為:
-串行接口,無需元件可直接驅動LED
-各位獨立控制譯碼/不譯碼及消隱和閃爍屬性
-(循環)左移/(循環)右移指令
-具有段尋址指令,方便控制獨立LED
-64鍵鍵盤控制器,內含去抖動電路
-有DIP和SOIC兩種封裝形式供選擇
顯示控制電路如圖4所示:
圖4顯示控制電路
(三)聲光報警電路
1.發光二極管報警電路的設計
由4個發光二極管接上電阻后連上單片的RXD的引腳,外接VCC,當單片機的RXD引腳被置低電平后,發光二極管被點亮,起到報警作用。圖5所示為發光二極管報警電路。
圖5 發光二極管報警電路圖
2.聲音報警電路的設計
如下圖所示,用一個Speaker和三極管、電阻接到單片機的TXD引腳上,構成聲音報警電路,如圖6示為聲音報警電路。
圖6 聲音報警電路圖
三、軟件設計
該設計中主要利用了DS18B20芯片進行測溫,該芯片是單總線器件,顧名思義單總線只有一根數據線,因此在通信時時序就顯得十分重要,我們在編程時也要十分注意這一點。在程序中測溫時首先要對DS18B20進行初始化,初始化過程由單片機發出的復位脈沖和芯片響應的應答脈沖組成,應答脈沖使主機知道,總線上有從機設備,且準備就緒。由于總線上只掛接了一片測溫芯片,因此可直接跳過ROM匹配發出測溫命令。該設計可實時顯示溫度值,便于連續觀測。軟件流程圖如下所示:
圖7 軟件流程圖
四、總結
本設計研究了一種基于單片機技術的溫度采集報警系統。該系統通過以AT89S51單片機為工作處理器核心,利用了DS18B20芯片進行測溫,當溫度超出設定范圍時,單片機輸出控制信號,驅動聲光報警電路開始報警。該系統操作簡單、易懂、智能性高、誤報率低,設計后的系統具有操作方便,控制靈活等優點。
參考文獻:
[1]吳政江.單片機控制紅外線防盜報警器[J].錦州師范學院學報,2001
[2]宋文緒.傳感器與檢測技術[M].北京:高等教育出版社,2004
[3]余錫存.單片機原理及接口技術[M].西安:西安電子科技大學出版社,2000
[4]唐桃波,陳玉林.基于AT89C51的智能無線安防報警器[J].電子設計應用,2003,5(6):49-51
[5]李全利.單片機原理及接口技術[M].北京:北京航空航天大學出版社,2004
[6]薛均義,張彥斌.MCS-51系列單片微型計算機及其應用[M].西安:西安交通大學出版社,2005
[7]徐愛鈞,彭秀華.單片機高級語言C51應用程序設計[M].北京:北京航空航天大學出版社,2006
[8]康華光.電子技術基礎(模擬部分)[M].北京:高等教育出版社,2004
[9]李朝青.單片機原理及接口技術(簡明修訂版)[M].杭州:北京航空航天大學出版社,1998
[10]李廣弟.單片機基礎[M].北京:北京航空航天大學出版社,1994
[11]閻石.數字電子技術基礎(第三版)[M].北京:高等教育出版社,1989