張淑玲
(集美大學 誠毅學院,廈門 361021)
隨著電子技術的迅速發展,單片機在經濟社會中發揮了極為重要的作用,作為新世紀的電子技術人才,單片機的學習與應用已經變成了最基本的要求。而高校的實驗室普遍存在的問題是,設備的更新換代速度經常滯后于實際的學生學習需要,這里面有多方面的客觀原因(如經費不足),而需要的設備總類又名目繁多,另外,實驗室的建設空間有限,無法滿足不斷添加儀器設備的要求。此時,如果能夠在原來實驗設備的基礎上進行一些設計和改動,重復利用原來的實驗設備,在此基礎上讓學生進行新類型的學習與實踐,以不變應萬變,不但提高了設備利用率,更重要的是為學生提供了更為寬闊的實踐空間。單片機的種類很多,而學生的需求又都不一樣,如何解決實驗室實際困難和學生需求之間的矛盾呢?筆者的主要思路是通過專用的單片機來控制實驗箱系統,只要擁有單片機的最小控制系統,其他設備就可以利用微機實驗箱上現有的設備進行學習,這樣只需要單片機的最低應用開發板就可以進行學習設計和驗證。而且學生對實驗箱系統又非常了解和熟悉,上手也很容易,為實驗箱系統的重復利用提供了可行性,進而推廣到實現各種不同類型的單片機,做到學生需要什么,我們就提供什么,并且實現起來簡單、容易又很經濟。本文的設計以凌陽單片機SPCE061A作為主控制單片機來控制該實驗箱系統。
本設計采用凌陽單片機精簡開發板61板作為控制微機原理接口實驗箱系統的CPU。61板將SPCE061A的32個 I/O口(I/OA0~I/OA15,I/OB0~I/OB15)全部引出,而且該I/O口是可編程的,即可以設置為輸入或輸出。61板的結構如圖1所示。

圖1 61板的結構
該微機實驗系統由1塊USB總線接口模塊、1個擴展實驗臺及軟件集成實驗環境組成。USB總線接口模塊通過USB總線電纜與PC機相連,模塊與實驗臺之間由1條50芯扁平電纜連接。微機原理接口實驗箱系統的結構如圖2所示,在本設計中,主要應用到的部分有:50芯接口定義、I/O地址譯碼電路、LED顯示電路、8255交通燈控制電路。下面就這幾個模塊作簡要說明。微機原理接口實驗箱系統結構如圖2所示。

圖2 微機原理接口實驗箱系統
50芯總線信號插座在微機原理接口實驗箱的左上方,總線插座信號安排如表1。各總線信號采用“自鎖緊”插孔在標有“總線”的區域引出,有數據線D0-D7、地址線 A19-A0、I/O讀寫信號 I/OR I/OW、存儲器讀寫信號 MEMR MEMW、中斷請求IRQ、DMA申請DRQ、DMA回答DACK、AEN等。

表1 50芯總線信號定義
實驗臺上I/O地址選用280H-2BFH共64個,分8組輸出:Y0~Y7,其地址分別為 280H-287H;288H-28FH;290H-297H;298H-29FH;2A0H-2A7H;2A8H-2AFH;2B0H-2B7H;2B8H-2BFH,8 根輸出線在實驗臺“I/O地址”處分別由自鎖緊插孔引出,如圖3所示。

圖3 I/O地址譯碼電路
如圖4所示,實驗臺上設有8個發光二極管及相關驅動電路(輸入端L7~L0),當輸入信號為“1”時發光,為“0”時滅。

圖4 LED顯示電路
8255片選信號選用實驗臺上I/O地址288H,設置C口輸出,C口分別接 L7(紅)、L6(黃)、L5(綠);L2(紅)、L1(黃)、L0(綠),8255 的數據口D0~D7接至數據總線D0~D7,讀寫信號分別接至總線接口的讀寫信號進行控制。8255交通燈控制電路如圖5所示。

圖5 8255交通燈控制電路
微機原理接口實驗箱系統應用的是總線控制,和單片機有所區別,單片機只能通過I/O口來控制,所以最關鍵的部分是如何替代微機原理接口實驗箱系統中通過USB接口盒的轉換并通過計算機來進行模擬控制。本文主要設計了一個作為微機原理接口實驗箱系統與凌陽單片機的主控制板,實現用普通的單片機I/O口來控制微機原理接口實驗箱系統里面的數據總線和地址總線,進而來控制微機原理接口實驗箱的各個模塊和部件。I/O控制數據總線和地址總線分配表如表2、表3所示。主控制板電路如圖6所示。

表2 IOA口分配表

表3 IOB口分配表

圖6 主控制板電路
主控制板說明如表4所示。
主控制板設計原理:I/OA0、I/OA1、I/OA2這3個I/O口控制74LS164(U1)的3個控制信號,I/OA2作為信號輸入端,設置寫數據D0~D7;I/OA1為時鐘脈沖,跳變8次送入1組D0~D7的數據總線數據,I/OA0作為清零信號,74LS244(U2)作為U1的驅動器來驅動地址總線D0~D7;I/OA3控制數據總線讀寫操作,I/OA3為0時,凌陽單片機I/O口數據寫入數據總線,I/OA3為1時,從數據總線讀回到凌陽單片機的I/O口;I/OA4、I/OA5、I/OA6這3個I/O口控制74LS165(U4)的3個控制信號,I/OA4控制串行數據輸入端,I/OA5控制串行數據輸入端,I/OA6為時鐘輸入端(上升沿有效),I/OA6每跳變1次,輸出端讀1個數據進入凌陽單片機的I/OB口進行數據判斷,進而進行下一步控制操作;I/OA7、I/OA8、I/OA9這3個 I/O口控制74LS164(U5)的3個控制信號,I/OA9作為信號輸入端,設置選通A0~A7,I/OA8為時鐘脈沖,跳變8次送入1組A0~A7的地址總線數據,I/OA7作為清零信號,74LS244(U7)作為U5的驅動器來驅動地址總線A0~A7;其余I/O口的控制信號設置如表1和表2所示。

表4 主控制板電路圖說明
至此,主控制板設計完成,下面用凌陽單片機通過主控制板來實現8255交通燈的控制,進而實現凌陽單片機在微機實驗箱上實現凌陽單片機實驗的學習和應用。
通過并行接口8255實現十字路口交通燈的模擬控制,如圖7,L7、L6、L5作為南北路口的交通燈與 PC7、PC6、PC5 相連,L2、L1、L0 作為東西路口的交通燈與PC2、PC1、PC0相連。編程使6個燈按交通燈變化規律亮滅。實驗箱上接線如圖7所示,程序流程如圖8所示。

主程序說明:如圖3所示實驗臺上I/O地址選用288H-28FH,接至8255的CS片選信號,由此可知288H作為8255端口A的地址,289H作為8255端口B的地址,28AH作為8255端口C的地址,28BH作為8255控制寄存器的地址。8255初始化,先選通地址28BH控制字寄存器,其中A15-A12直接設置為0000,A11-A8設置為0010,A7-A0則通過74LS164設置為10001011,這樣通過地址總線選通I/O口28BH作為8255的CS選通地址,送控制字90H(設置8255C口輸出);選通28AH(選通方式如同控制字選通方式),選中8255的C口,將相應的燈送入C口,調延時子程序;依次按流程圖順序執行,最后設置程序循環,則成功完成對十字路口交通燈的控制。
微機原理接口實驗箱系統主要應用總線來控制,并外加一些控制信號,而單片機I/O口又比較有限,在做綜合實驗的時候,希望能夠有更多的I/O口來控制。本設計應用了串轉并(74LS164)方式來控制地址總線和數據總線的寫方向,而數據總線的讀方向應用了并轉串(74LS165)方式,有效地節省了I/O口的使用,為更綜合的設計應用提供保障。
該設計應用了凌陽單片機,設計主控制板實現對微機接口實驗箱系統的控制。從低碳節約設備的角度出發,很好地實現了在微機實驗系統中學習和應用單片機,進而進行推廣,可以取用其他各種類型的單片機,只要設計一個主控制板以及該單片機的最小系統就可以在微機接口實驗系統中得到學習和應用,而且學生對本校的微機接口實驗系統的結構和內部構造非常了解,上手很容易,能夠提高他們的積極性和創造性,很大程度上滿足了學生各種不同類型的需求。
[1]周荷琴,吳秀清.微型計算機原理與接口技術[M].北京:中國科學技術大學出版社,2004:325-337.
[2]羅亞非.凌陽單片機應用基礎[M].北京:北京航空航天大學出版社,2005:20-25.
[3]賈晨剛,范蟠果.基于凌陽SPCE061A的自動投加破乳劑控制系統設計與實現[J].電子測量技術,2007,30(4):194-197.
[4]余能順,徐欣.基于單片機控制的電動車鋰電池組設計[J].重慶工學院學報:自然科學版,2009(10):13-16.
[5]殷士勇.Keil和Pnteus在單片機實驗教學中的應用[J].重慶工商大學學報:自然科學版,2009(6):567-570.
[6]王健,常攀峰,馮潔.基于SPCE061A的智能測重系統[J].儀器儀表學報,2006,26(6):240 -246.