陳 潤, 琚生根, 師 維, 連豫輝
(四川大學 計算機學院,四川 成都 610065)
微機系統與接口技術實驗課程改革研究
陳 潤, 琚生根, 師 維, 連豫輝
(四川大學 計算機學院,四川 成都 610065)
探討和分析了當前微機系統與接口技術課程實驗教學中的問題、教學難點和原因,提出了該實驗課程的實驗內容和教學方法的改革方案。改革后的驗證性實驗與理論課實例很好地結合,節約資源,提高了教學效率。綜合性和創新性實驗培養和鍛煉了學生軟硬件協同設計的能力和創新能力。實踐證明,改革后的接口實驗提高了學生的學習積極性,取得了較好的教學效果。
微機接口; 實驗; 教學; 硬件; 芯片
微機系統與接口技術是計算機等多個專業的專業基礎課,和其他基礎課程相比,它是一門理論性和實踐性都很強的課程[1],特別是該課程的實踐部分,是培養學生微機軟、硬件結合設計、應用能力和創新能力的重要環節。經多年授課發現,對于學習該門課程的大二本科生而言,接口技術的實驗是他們之前所學硬件知識和軟件知識的一個結合點,很多學生對于計算機硬件的興趣也是源于此。開展好接口技術的實驗課程可以幫助學生充分理解理論課的內容,提高教學效率,還能激發學生的學習興趣,為其今后的計算機硬件開發打下良好的基礎。但長期以來,高校計算機等專業都存在著“重軟輕硬,重理論輕實踐”的問題,對為數不多的硬件實驗重視不夠,課時較少、設備落后、實驗項目陳舊等問題長期存在[2-4]。雖然近年來這一情況得到了一定的改善,尤其是很多高校都加大了硬件的投入,但在實驗教學中,仍然存在著實驗項目單一、實驗項目以驗證性實驗為主、與課程內容結合不夠緊密、綜合性創新性實驗項目缺乏[5]、新技術缺乏等問題。因此,探索和研究出一套更加切合理論課程、更能提高學生對該門課程的學習積極性、更加符合現有微機系統發展方向的實驗課程內容及教學方法,對于提高教學質量、提高學生動手能力有著十分重要的意義。
近年來很多高校都提高了對微機系統與接口技術課程實踐環節的重視程度[6-8],例如我校一直將該課程的實驗環節作為單獨的一門實驗課納入教學計劃,并加大了硬件的投入。但總的來說,該實驗課程的開展隨意性較大。因為各個高校的課程設置、實驗平臺、師資力量等條件參差不齊,并沒有形成一套完整的理論體系和完善的教學方法[9-10],總的來說,目前該課程實驗環節中存在的問題主要有以下幾點:
(1) 實驗內容與理論課內容結合不夠緊密。理論課的課本上對于每個典型接口芯片都給出了一些實際的應用實例,而授課教師也會在課堂上進行講解,還會要求學生在課后完成課本上的一些典型習題,但是集成實驗系統中廠家所提供的驗證性實驗中缺少與課本類似的實例,實驗課上還要花時間來講解實驗原理,造成了理論和實驗的脫節,既浪費了課堂資源,也不利于課本知識和實際應用的結合。
(2) 實驗項目相對獨立,缺乏綜合性實驗。理論課是分章節來單獨介紹各個接口芯片的,而開設的實驗項目也大多分為各個不同芯片,實驗內容各自獨立,所開設的實驗只針對該芯片的功能,缺乏各個芯片協同工作的綜合性實驗,既不利于學生全面掌握微機接口技術的整體架構,也不利于學生深入研究各個芯片的功能。
(3) 學生水平差異較大,創新性實驗的開展存在困難。該門課程結合了軟、硬件知識,學生的水平差異比普通課程更大,創新性實驗的開展存在諸多難題。在有限的實驗時間里,大部分學生僅能完成簡單的綜合性實驗,授課教師無法對創新性實驗進行硬性考核,僅能將創新性實驗作為課下的思考題,無法滿足部分拔尖學生的需求。
(4) 微機接口的新技術融入較少。目前開設的實驗還是面向80x86機型,主要內容都是傳統的微機接口技術。但是近幾年出現了很多應用廣泛的新技術,這些在理論課和實驗課上都沒有得到體現,這一情況不利于學生掌握最新的知識,也會使學生覺得所學的東西脫離實際,從而失去學習積極性。
微機系統與接口技術課程的教學內容其實并不深奧,但是很多學生普遍感到這門課難學難懂、概念抽象、感性認識差[11]。究其原因,是因為這門課程中重點講解的是各個典型接口芯片的工作原理、硬件結構、初始化編程和應用編程方法。它的先修課程包括數字電路、匯編語言、微機原理等,要求學生既要能看懂芯片的主要電路圖,又要能利用匯編語言對芯片進行編程。但是很多學生在數字電路和匯編語言課程的學習過程中沒能建立感性的認識,課程結束之后又沒有實際應用的機會,導致很多學生在學習微機系統和接口技術這門課程時首先面對的問題就是電子電路和匯編語言的知識幾乎都忘記了。再加上該門課程教學內容是針對各個典型的接口芯片,內容很瑣碎,既有共性的工作原理,又有具體應用的技術方法,很多學生學習時只是孤立地記憶各章節所涉及到的芯片工作原理、初始化編程步驟和相應的硬件連線[11],而這些知識如果沒有通過自己親自動手設計電路、編寫程序、最后觀察實驗效果這一過程的話,是無法落到實處的,但是很多學生對實驗環節并不重視,甚至包括一些能在理論課上拿到高分的學生,他們大部分靠死記硬背,在進行實驗時也只是依葫蘆畫瓢,照著實驗指導書把驗證性實驗完成,不愿意去思考背后的原理,因此在進行綜合性實驗時,感覺困難重重,更無法自主設計創新性實驗。
為了解決以上問題,本文探討微機系統與接口技術課程的實驗教學改革,將實驗按照驗證性實驗、綜合性實驗和創新性實驗進行劃分,在具體內容的設計和教學方法上遵循以下原則。
3.1 將驗證性實驗與課本中的實例相結合
將課本中的實例或者是典型習題中的內容與實驗系統的具體環境結合,設計芯片的驗證性實驗,通過這樣的驗證性實驗,學生能把在課堂上學到的抽象內容在實踐中驗證,便于理解,增加了他們的學習興趣,提高了課堂教學的效果。實驗開始前,教師可以適當地講解一下實驗的原理和芯片的相關知識,這樣便于學生復習理論課的內容,也便于實驗很快地開展。
例如,在課本《16/32位微機原理、匯編語言及接口技術教程》(錢曉捷編著)的“定時計數控制接口”章節中,例子9.1描述了IBM PC機上利用8253/8254定時計數器芯片中計數器2的輸出來控制揚聲器的發聲,作為機器的報警信號或伴音信號,要求主程序設置好音調后讓聲音出現。用戶在鍵盤上按任意鍵后聲音停止,并給出了解決方案的匯編程序。根據這個例子我們把它移植到實驗平臺(西安唐都科教儀器公司出廠的“TD-PITE32位微機教學實驗系統”)上,設計這樣一個實驗:
實驗名稱:8254電子發聲實驗。
實驗目的:掌握8254的工作方式及應用編程。掌握8254典型應用電路的接法。
實驗內容:編寫程序,要求主程序運行后,實驗箱的揚聲器發聲,當按動單次脈沖KK1+后聲音停止。
實驗原理:利用8254芯片計數器1的工作方式3輸出一定頻率的方波使揚聲器發聲,并用8255并行接口芯片作為控制信號輸入輸出的橋梁,使其工作在方式0,A口作輸入,用來接受KK1脈沖信號,B口作輸出,連接計數器的門控信號,用來控制是否發聲。實驗原理圖見圖1。

圖1 8254電子發聲實驗接線圖
該實驗基本的解決思路和課本的例子是一致的,但是針對具體的實驗環境做了一些小的改動,加入了8255芯片的應用,使學生在驗證課本知識的同時進一步理解了8254和8255這2個重要接口芯片的工作原理和使用方法,具有良好的實驗效果。
3.2 增加綜合性實驗,并納入成績考核
設計較多的綜合性實驗,要求學生在完成驗證性實驗的基礎上完成,并將完成情況納入期末成績的考核范圍,在總成績的評定中占較大的比重。綜合性實驗側重芯片之間的功能融合,教師只給出實驗任務,具體的芯片選擇、線路的連接、程序的編寫都要求學生自主完成。對這類實驗不要求標準答案,學生自己選擇芯片,自己設計連線和程序,只要能夠達到要求的效果。同時也鼓勵學生通過對比、討論、思考來取長補短,得到最優方案。例如,把8259中斷控制器、8254定時計數器和步進電機結合起來設計一個綜合性實驗:
實驗名稱:8259、8254、步進電機綜合實驗。
實驗目的:深入掌握8259、8254的工作方式及應用編程。
實驗內容:編寫程序,應用8254的計數功能,使用單次脈沖模擬計數,使當按動“KK1+”5次后,產生中斷,并使步進電機轉動。
要完成這樣的實驗,學生首先需要考慮硬件的設計。根據要求的功能選擇相應的芯片,再考慮各個芯片和系統總線之間的連接以及各個芯片之間的連接。然后再以硬件線路為基礎考慮軟件的編程、各個芯片的工作方式,以及如何讓芯片協同工作等問題。通過這一過程,可以幫助學生建立起軟件和硬件之間的聯系,掌握軟硬件協同設計的方法。對這類實驗,教師應該盡量要求學生獨立思考,對于一些關鍵性步驟可以給出相應的提點和指導,以個別指導為主。
對于該實驗,首先需要選用8254模塊,因為必須使用它的計數功能,而且可以確定其是工作在方式0,計數值為5。當計數結束后,OUT會輸出高電平,將OUT端接到8259中斷控制器的IR7上,這樣當高電平到來時就提出一次中斷請求。將步進電機的驅動程序寫入到中斷服務程序中,這樣當CPU響應了來自8259的中斷請求后,主程序就會自動跳轉到中斷服務程序中去執行,從而使步進電機轉動,同時考慮步進電機的轉動需要8255來控制,所以還需要加入8255模塊。實驗的電路設計圖見圖2。

圖2 8259、8254、步進電機綜合實驗電路圖
通過完成這類型實驗,學生可以認識到軟件和硬件的協同設計,軟件設計依賴于具體的硬件電路,而硬件電路需要在軟件的控制下動作。同時綜合性實驗也將學生概念中孤立的各個芯片模塊組合起來,使他們意識到微機系統就是在這些模塊的協同工作下才完成了各種復雜任務。
3.3 創新性實驗側重工程性,并鼓勵學生自主創新
為基礎較好、學有余力的學生提供創新性實驗,這類實驗側重實用性、綜合性、設計性和趣味性。每一個實驗都可以作為一個小的研究課題,通過選題、需求分析、硬件設計、軟件編程、調試、系統實現這一過程,鍛煉學生的工程設計和應用能力。同時也鼓勵學生自由發揮,自主設計和實現一個全新的系統。
3.4 引入新技術相關實驗項目
因為實驗課時有限,考慮將新技術的引入放在綜合性實驗或是創新性實驗中,作為其中的一個功能模塊,既不占用寶貴的實驗時間,又能豐富實驗內容。例如,可以在8259的中斷控制器實驗中加入點陣LED顯示[12],通過中斷控制程序動態改變LED的顯示,這種既直觀又有趣的實驗更能激發學生的學習興趣。
改革后的微機系統與接口技術實驗課程已面向我校計算機學院計算機科學與技術專業開展200人次,學生反饋較好,大部分學生在實驗課程后期都能較好地完成綜合性實驗,尤其激發了部分偏好硬件學生的興趣。實踐證明,該方案是科學的、可行的、有效的。在后續的建設中,考慮進一步挖掘現有設備的功能,豐富綜合性、創新性實驗項目,并擴大其知識覆蓋面,引入嵌入式技術、物聯網相關技術,使這一課程既能作為學生硬件設計的入門,也能為后續的硬件開發提高興趣,打下良好基礎。
References)
[1] 邵溫,韓德強,張麗艷. 微機接口實驗的教學改革探索[J].實驗技術與管理, 2012, 29(3):275-276.
[2] 蘇力.微機接口實驗課的改革與探索[J].實驗室研究與探索,2007,26(12):235-237.
[3] 白廣梅,王小逸.創新性實驗教學的思考[J].實驗技術與管理,2008,25(2):128-129.
[4] 玄文啟.計算機硬件實驗教學改革的思考[J].中國科技信息,2010(11):243-244.
[5] 葉愛芹,卞真穩,徐朝勝,等.微機原理與接口技術課程綜合設計性實驗初探[J].中國科技信息, 2009(22):263-264.
[6] 盧萍,陳進才,周工業.“微機接口技術”課程創新性實踐教學改革[J].電氣電子教學,2010,32(1):67-68.
[7] 肖馳.微機接口技術實驗課程教學改革探索[J].中國科技信息, 2009 (9): 246-247.
[8] 李永亮,劉雅琴.微機原理與接口技術實驗課教學[J].軟件導刊,2010 (9):193-194.
[9] 張樹軍,高金山,李志民.融入新技術實驗平臺的構建及其教學應用[J].實驗技術與管理,2010,27(3):239-241.
[10] 張樹軍.以提高實踐能力為目標的教學方法的探索與研究[J] .教育研究專輯,2008(8):321-323.
[11] 周寧寧,王偉,成衛青.微機原理與接口技術課程教學模式研究[J].實驗科學與技術, 2011,8(4):117-119.
[12] 周杰英,陳曼娜,王濤,等.“微機原理與接口技術”開發性實驗建設:“點陣LED顯示器顯示漢字” 實驗[J].實驗室研究與探索,2007,26(9):33-37.
Research on reform of experimental course of MicrocomputerSystem and Interface Technology
Chen Run, Ju Shenggen, Shi Wei, Lian Yuhui
(School of Computer Science, Sichuan University, Chengdu 610065, China)
The current problems, teaching difficulties and reasons of microcomputer interface experimental teaching are discussed and analyzed. A reform program of experimental content and teaching methods of the experimental course is proposed. After the reform, the validation experiments are combined with the examples of theoretical lesson well, which can save the resources and improve the teaching efficiency. The integrated and innovative experiments can train and exercise the students’ innovativity and co-design ability of hardware and software. Practice has proved that the reform can improve the students’ enthusiasm of learning and achieve good results.
microcomputer interface; experiment; teaching; hardware; chip
2014- 06- 26
四川大學實驗技術立項資助項目(2013-77);四川大學實驗技術立項資助項目(2013-78);四川大學教改立項(SCUY101);四川大學計算機學院實驗技術立項資助項目
陳潤(1980—),女,四川金堂,博士,工程師,研究方向為智能系統,信息安全
琚生根(1970—),男,四川成都,博士,副教授,研究方向為智能信息處理、高校實驗室建設及實驗教學研究.
E-mail:cr_run@scu.edu.cn
G423.07
A
1002-4956(2015)5- 0236- 03