單片機應用系統課程是目前電類專業的主干課之一,其操作性很強,對于院校學生,光靠課堂上的教學是遠不夠的,除了在課堂上要求學生掌握基本概念。
了解單片機擴展接口電路的設計方法和設計編制程序的流程之外,只有通過課外大量的實際操作,才能掌握單片機應用系統的設計步驟,學會開發單片機應用系統基本方法。
本文根據AT89S52單片機具有的在系統編程功能,整合了一套成本低廉、取材容易、制作快捷、操作方便的單片機實驗開發系統。該系統非常適合于課堂上或課堂外使用。
硬件電路
硬件電路分為單片機的最小系統和下載器兩大部分。
最小系統原理:最小系統是沒有外圍器件及外設接口擴展的單片機系統。它是單片機應用系統的設計基礎,包括最小系統結構選擇、時鐘系統設計和復位系統設計。通常情況下,單片機最小系統分三種結構:
①總線型總線應用的最小系統結構,該結構由總線型單片機、復位電路、時鐘電路、I/O口及并行擴展總線組成。
②總線型非總線應用的最小系統結構,只有單片機、復位電路構成的最簡單的電路,并行總線不用于外圍擴展,可作為應用系統的I/O口使用。
③非總線型單片機的最小系統結構。
這里介紹的最小系統屬于第②種,由單片機AT89S52和ISP編程接口組成,其原理如圖1所示。圖中P0~P3口和CN104留給實驗或實訓時作為I/O口或連接擴展電路用。CON101是在下載或讀取芯片內部程序時用的ISP編程接口,操作時,需要去掉跳線J101。(ISP即英文In-System Programmable,意為在系統編程。)
下載器:下載器由接口板和連接電纜組成。接口板的原理圖見圖2(a)。圖中U201是8緩沖器74HC244電路,用作計算機并口和單片機的緩沖隔離。連接器CN202是通用的DB25針形插頭,與上位機連接,進行通信;其中4、5腳控制U201芯片,在其低電平時允許數據正常傳輸,高電平時74HC244的輸出呈高阻狀態;6腳輸出數據到單片機;7腳是時鐘信號;9腳是輸出復位信號;10腳是接收從單片機讀出的數據。連接器CN201是標準的10針IDC插座,其各項功能見圖2(b)。
下載電纜采用10芯扁平電纜,兩頭壓有IDC插頭。一端接下載器,另一端接最小系統板上的ISP口。
軟件操作
在這個實驗開發系統中,軟件使用了keil c和程序下載軟件SLISP。有興趣仿真的讀者可使用proteus軟件。由于應用電路和程序在仿真環境與真實環境中運行,在某些情況下存在一定的差異,所以在這里不予推薦(所用兩個軟件可到相應網站上下載安裝)。
keil c的基本操作:安裝keil c軟件后,電腦的桌面上會有圖標顯示。用鼠標左鍵雙擊該圖標便可進入keil c的工作界面,如圖3所示。該界面與Word界面類似,上邊是菜單欄,接著是快捷按鈕欄等。這里用到的部分菜單及快捷按鈕的中文含義已標注在圖3上;用到的功能只是創建一個項目或打開一個已有的項目,創建或打開一個源程序文本等,最后把它編譯成需要的十六進制文件。
其操作步驟如下:
- 新建項目或打開已有的項目
- 新建文件或打開已有的文件
- 目標文件選項設置
- 建立目標文件,獲得.HEX文件
程序讀取與下載:已經安裝有雙龍電子下載軟件的電腦,在其桌面上也有圖標顯示。同樣用鼠標左鍵雙擊該圖標便可進入MCU下載程序的工作界面,如圖4所示。該界面是中文的,且比較清晰。
首次使用時將“通信參數設置及器件選擇”設置成圖中所示,即通信口設為并行通信口“LPT1”,速率設為“TURBO”加速,器件選擇“AT89S52”。
拔去最小系統板上的跳線J101、J102、J103,插上AT89S52芯片;將下載線的接口板插入電腦的并口上,用連接電纜把最小系統與接口板連好,再在最小系統上接上+9V電源。注意“+”與“-”不能搞錯。打開電源對最小系統供電,就可以讀寫芯片中的程序了。
如果在下載過程中出現錯誤,會在下面的.文本框中出現提示。找到原因后再進行重寫時,需要先把芯片內原來的信息擦除掉,然后再寫。
如果對原程序進行了修改,那么要重新進行編譯,即點重建目標文件“Rebuild alI target files”按鈕,生成新的.HEX文件;下載時還要重新加載剛生成的同一文件名的新.HEX文件。這樣才能保證本次下載的是已修改的程序。
完成上面的操作后,關閉+9V電源,拔下連接電纜,插上跳線J101,接上擴展接口電路,就可以檢查程序的運行情況,進行實驗或開發了。