RD(read):讀出信號線,低電平有效時,允許數據讀出。

WR(write):寫入信號線,低電平有效時,允許數據寫入。

RESET(reset):複位信號線,高電平有效時,將所有內部寄存器(包括控製寄存器)清零。

PA7~PA0(portA):A口輸入/輸出信號線。

PB7~PB0(portB):B口輸入/輸出信號線。

PC7~PC0(portC):C口輸入/輸出信號線。

VCC:+5V電源。GND:電源地線。

2.5.18255A的工作方式

方式0:基本輸入輸出方式。適用於無條件傳送和查詢方式的接口電路。

方式1:選通輸入輸出方式。適用於查詢和中斷方式的接口電路。

方式2:雙向選通傳送方式。適用於與雙向傳送數據的外設;適用於查詢和中斷方式的接口電路。

2.5.28255A初始化編程

8255A的A,B,C三個端口的工作方式是在初始化編程時,通過向8255A的控製端口寫入控製字來設定的。

8255A由編程寫入的控製字有兩個:方式控製字和置位/複位控製字。方式控製字用於設置端口A,B,C的工作方式和數據傳送方向;置位/複位控製字用於設置C口的PC7~PC0中某一條口線PCi(i=0~7)的電平。兩個控製字公用一個端口地址,由控製字的最高位作為區分這兩個控製字的標誌位。

2.5.38255A的應用

作為通用的並行接口電路芯片,825A具有廣泛的應用:應用在IBMPC/XT微機上;應用於打印機接口電路;連接簡易鍵盤;驅動LED數碼管……

*8255A方式0的應用:0方式主要用於一些通信雙方不需要聯絡信號的場合,如讀取開關量、LED顯示、非編碼盤、打印機接口等。

2.674LS082輸入四與門

74LS08管腳圖引腳圖74LS08為2輸入四與門。

引腳圖引出端符號:

1A—4A輸入端

1B—4B輸入端

1Y—4Y輸出端

功能表。

3程序設計思想

3.1主程序設計

在軟件設計中,一般采用模塊化的程序設計方法,它具有明顯的優點。把一個多功能的複雜的程序劃分為若幹個簡單的、功能單一的程序模塊,有利於程序的設計和調試,有利於程序的優化和分工,提高了程序的閱讀性和可能性,使程序的結構層次一目了然。

應用係統的程序由包含多個模塊的主程序和各種子程序組成。各程序模塊都要完成一個明確的任務,實現某個具體的功能,如:加計數延時,計數和顯示等,在具體需要時調用相應的模塊即可。

功能描述:用7位LED數碼顯示“秒表”,顯示時間為00秒~60分,每秒自動加:1;一個:“開始”“清零”鍵,一個“暫停”“繼續”鍵。

3.1.1主流程圖

這裏采用順序結構,通過對按鍵的掃描,判斷要實現什麼功能。

3.2軟件設計環境

KeilC51是美國KeilSoftware公司出品的51係列兼容單片機C語言軟件開發係統。KeilC51軟件提供豐富的庫函數和功能強大的集成開發調試工具,全Windows界麵。另外重要的一點,通過查看編譯後生成的C語言代碼,我們就能體會到KeilC51生成的目標代碼效率非常之高,多數語句生成的C語言代碼很緊湊,容易理解。C語言有執行效率高的優點。在此次畢業設計中我采用C語言程序。

ISIS是一款Labcenter出品的電路分析實物仿真係統,可仿真各種電路和IC,並支持單片機,元件庫齊全,使用方便,是不可多得的專業的單片機軟件仿真係統。

該軟件的特點:

(1)全部滿足我們提出的單片機軟件仿真係統的標準,並在同類產品中具有明顯的優勢。

(2)具有模擬電路仿真、數字電路仿真、單片機及其外圍電路組成的係統的仿真、RS—232動態仿真、1C調試器、SPI調試器、鍵盤和LCD係統仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發生器等。

(3)目前支持的單片機類型有:68000係列、8051係列、AVR係列、PIC12係列、PIC16係列、PIC18係列、Z80係列、HC11係列以及各種外圍芯片。

(4)支持大量的存儲器和外圍芯片。總之該軟件是一款集單片機和SPICE分析於一身的仿真軟件,功能極其強大,可仿真51、AVR、PIC。

3.3C語言主程序設計

3.4.1用KeilC51編寫程序。

3.4.2C語言程序

4軟件的仿真與調試

4.1Proteus軟件介紹

ProteusISIS是英國Labcenter公司開發的電路分析與實物仿真軟件,它可以仿真、分析(SPICE)各種模擬器件和集成電路。該軟件的主要特點總結後有以下四點:

(1)實現了單片機仿真和SPICE電路仿真相結合的功能。

(2)支持目前主流單片機係統的仿真。

(3)提供了軟件調試功能,並可以與WAVE聯合仿真調試。

(4)具有強大的原理圖繪製功能。

總之,該軟件是一款集單片機和SPICE分析於一身的仿真軟件,功能極其強大。在電子領域中也起到了很大的作用,它的出現仿真不需要先焊接電路,可以先仿真調試通過後再焊電路,節省了不少在硬件調試上所花的時間。

ProteusISIS的工作界麵是一種標準的Windows界麵。它包括標題欄、主菜單、狀態欄、標準工具欄、繪圖工具欄、對象選擇按鈕、預覽對象方位控製按鈕、仿真進程控製按鈕、預覽窗口、對象選擇器窗口、圖形編輯窗口等十幾個工具,方便了使用者的使用。

4.2軟件調試

軟件調試的任務是利用軟件的開發工具進行仿真調試,發現和糾正程序錯誤,同時也能發現硬件故障。

4.2.1程序調試

程序的調試應該一個模塊接一個模塊地進行,首先單獨調試各功能子程序,檢查程序是否能夠實現預期的功能,接口電路的控製是否正確等;最後是逐步將各個子程序連接起來總調試。在軟件編寫和調試過程中應注意以下幾點:(1)子程序的名稱標號一定不要重複,在整個程序中不允許有兩個名字相同的子程序;(2)語句中間的標點符號須在英文輸入環境下,中文環境下的標點KeiiluVsion2編譯軟件不識別,會出現一些不易查找的問題,這一點需特別注意;(3)當子程序間有值傳遞時,必須注意實參和形參的類型;(4)程序要有盡量詳細的注釋,以便問題的查找和增強程序的易讀性。

我首先將編好的程序在KeiiluVsion2環境之中進行編譯,第一次未通過,經過錯誤提示我發現是幾處標點的格式為中文格式導致編譯軟件不能識別,還有一處丟掉了一個分號,改正之後就運行正常,最終生產了HEX文件。

程序編寫完畢,就可開始係統的仿真調試,應該先采取軟件仿真,確保整個程序無語法錯誤,排除邏輯錯誤及其他錯誤,然後開始硬件調試。軟件仿真主要采用Keil和Proteus相結合的方式。在Proteus的庫中將所需的元件調出按照硬件設計原理圖將其連接好,將已生成的HEX文件加載入AT89C51之中,運行之後顯示出了秒表的功能。

4.2.2仿真結果

(1)整體電路圖連接圖。

(2)初始化電路。

(3)毫秒顯示。

(4)秒顯示。

(5)秒顯示。

(6)分顯示。

(7)分顯示。

(指導教師師寧)

(謝辭從略)

參考文獻

[1]朱清慧.Proteus——電子技術虛擬實驗室[M].北京:水利水電出版社,2010.

[2]賀敬凱.單片機係統設計仿真與應用[M].西安:電子科技大學出版社,2011.

[3]劉天旺.Protel99SE電路設計應用教程[M].北京:電子工業出版社,2007.

[4]徐瑋.C51單片機高效入門[M].北京:機械工業出版社,2007.

[5]王守中.51單片機開發入門與典型實例[M].北京:人民郵電出版社,2007.

[6]鄒友朋.89C51單片機實用技術[M].北京:北京航空航天大學出版社,2008.

[7]張毅剛.單片機原理及應用[M].北京:高等教育出版社,2003.

[8]李廣弟.單片機基礎[M].北京:北京航空航天大學出版社,2001.

[9]李全利.單片機原理及應用技術[M].北京:高等教育出版社,2004.

[10]張洪潤.單片機應用技術教程[M].北京:清華大學出版社,1997.

【簡要評析】本課題源於現實生活,電子秒表是一種較先進的電子計時器,在體育比賽和需要精確計時的場所,經常要使用。該生綜合運用所學數字電子技術、模擬電子技術及仿真軟件,自行設計了此產品。整個設計過程能理論聯係實際,運用科學的研究方法解決實際問題,具有一定的分析、設計和製作能力,能獨立檢索文獻資料,並運用恰當。主要成果,完成電子秒表電路的整體設計,並能運用仿真軟件對電路進行仿真調試,效果良好,具有實際應用價值。設計說明書撰寫規範,思路清晰,文圖結合良好。

時間有限,整體係統設計仍有不足之處,需要繼續完善。希望進一步提高綜合知識應用能力,並在工作中有效應用。