劉 勝,楊 夏
(廣西財(cái)經(jīng)學(xué)院1.職業(yè)技術(shù)學(xué)院,2.信息與統(tǒng)計(jì)學(xué)院,廣西 南寧 530003)
“數(shù)字邏輯電路”是計(jì)算機(jī)及相關(guān)專業(yè)的一門非常重要的專業(yè)基礎(chǔ)課程。該課程概念較為抽象,特別是中規(guī)模集成電路往往令初學(xué)者難以掌握。為了加深學(xué)生的理解,實(shí)際教學(xué)中,除了要通過電路實(shí)例加以講解外,實(shí)驗(yàn)的設(shè)置也非常重要。
Proteus軟件包可以提高產(chǎn)品的開發(fā)效率,降低開發(fā)風(fēng)險(xiǎn),在教學(xué)、科研和開發(fā)等領(lǐng)域都得到了廣泛的應(yīng)用[1-3]。本文以八路搶答器的設(shè)計(jì)與仿真為例,闡述了以Proteus軟件的ISIS組件為主的虛擬實(shí)驗(yàn)室及在數(shù)字電路實(shí)驗(yàn)中的應(yīng)用實(shí)踐。
相對(duì)于傳統(tǒng)的數(shù)字電路實(shí)驗(yàn)室,使用Proteus軟件構(gòu)建數(shù)字電路虛擬實(shí)驗(yàn)室投入資金很少。只需要在計(jì)算機(jī)機(jī)房的每臺(tái)計(jì)算機(jī)上安裝Proteus軟件,就可以把普通機(jī)房變成一個(gè)虛擬的數(shù)字電路實(shí)驗(yàn)室。Proteus中提供了30多個(gè)元件庫(kù),并提供了各種儀器和電表,完全可以模擬一個(gè)實(shí)際的電路實(shí)驗(yàn)工作臺(tái)[4]。實(shí)驗(yàn)指導(dǎo)教師可以采用切換屏幕的方式進(jìn)行實(shí)驗(yàn)操作演示,實(shí)驗(yàn)完成后學(xué)生上交DSN文件存檔。
編碼器和顯示譯碼器是組合邏輯電路的典型代表,觸發(fā)器和鎖存器則是時(shí)序邏輯電路的重要基礎(chǔ)。本實(shí)驗(yàn)要求學(xué)生在了解數(shù)字邏輯器件的邏輯功能基礎(chǔ)上,通過創(chuàng)新設(shè)計(jì)完成一個(gè)八路搶答器的電路,并在Proteus中仿真實(shí)現(xiàn)。
1)實(shí)驗(yàn)課程安排
我們首先給出編碼器、顯示譯碼器、D觸發(fā)器和鎖存器的驗(yàn)證電路。要求學(xué)生熟悉Proteus ISIS環(huán)境,并通過Proteus中的直觀的仿真反饋,了解集成電路芯片在各種不同輸入下的輸出。對(duì)照芯片手冊(cè)中的真值表和邏輯表達(dá)式,理解芯片功能。最后給出八路搶答器的功能描述,完成電路的設(shè)計(jì)和仿真。
2)八路搶答器功能描述
搶答器應(yīng)在電路中設(shè)置“開始”和“復(fù)位”按鈕,當(dāng)“開始”按鈕被按下時(shí),蜂鳴器發(fā)聲時(shí)就開始搶答。在電路中設(shè)置8個(gè)帶有編號(hào)的搶答按鈕,當(dāng)某個(gè)搶答按鈕被按下時(shí),在數(shù)碼管上顯示該路按鈕的編號(hào)(編號(hào)為1-8)并保持,直到“復(fù)位”按鈕被按下,數(shù)碼管不顯示。
3)實(shí)驗(yàn)指導(dǎo)
我們可以給出如圖1所示的編碼顯示原始電路,以便給學(xué)生提供設(shè)計(jì)思路。
圖1 編碼顯示原始電路仿真
Proteus中除了有按鈕元件外,還提供了一個(gè)LOGIC STATE元件。利用LOGIC STATE元件可以在仿真時(shí)實(shí)時(shí)對(duì)輸入信號(hào)進(jìn)行手動(dòng)控制。在設(shè)計(jì)階段,電路中所有按鈕或需要設(shè)置電平的引腳全部使用“LOGIC STATE”替代。
學(xué)生分析并仿真原始電路,后就會(huì)發(fā)現(xiàn)電路存在的問題:①該電路只能實(shí)現(xiàn)數(shù)碼管顯示0-7的效果,這顯然與設(shè)計(jì)要求中的要求顯示1-8不符;②原始電路中并沒有加入鎖存電路;③“開始”和“復(fù)位”按鈕也沒有出現(xiàn)在原始電路中。這些功能都需要學(xué)生自己添加,指導(dǎo)教師可以讓學(xué)生通過回顧各種中規(guī)模集成電路的功能來參與設(shè)計(jì)。通過在標(biāo)準(zhǔn)按鈕上連接虛擬示波器,學(xué)生可以理解按鈕被按下時(shí)引腳狀態(tài)的變化過程和反饋的概念等。
以在數(shù)碼管上對(duì)應(yīng)8路按鍵分別顯示1-8為例,教師可以引導(dǎo)學(xué)生思考有哪些條件可以使得數(shù)碼管顯示8。結(jié)合設(shè)計(jì)實(shí)驗(yàn)前對(duì)74LS47顯示譯碼器邏輯功能的驗(yàn)證,提出使得數(shù)碼管顯示8的兩種方法:一種方法是使BCD碼輸入端的高位即“D”端輸入為1,“A”、“B”和“C”引腳輸入為 0,另一種則是將LT(測(cè)燈輸入端)設(shè)置為0。再結(jié)合圖1所示電路的仿真效果,引導(dǎo)學(xué)生利用74LS148的I0輸入來對(duì)顯示譯碼器進(jìn)行控制,實(shí)現(xiàn)顯示效果。教師可以引導(dǎo)學(xué)生分析第一種方法可能存在的問題,并要求學(xué)生通過電路仿真加以驗(yàn)證??紤]到當(dāng)I0信號(hào)與其他搶答按鍵同時(shí)有效時(shí),第一種方法存在顯示錯(cuò)誤的可能,第二種顯示電路方案如圖2所示。
圖2 修改后的編碼顯示電路仿真
以按下“開始”按鈕后的發(fā)聲部分電路為例,該電路使用555的單穩(wěn)態(tài)電路實(shí)現(xiàn),仿真電路如圖3所示。觸發(fā)信號(hào)輸入后,發(fā)聲時(shí)間的長(zhǎng)短需要通過R2和C1大小來控制。調(diào)整過程中不僅可以聽到蜂鳴器的響聲,還可以使用Proteus中的虛擬示波器查看電路響應(yīng)。圖4是電路仿真時(shí)在Proteus中看到單穩(wěn)態(tài)電路的實(shí)時(shí)輸入輸出波形。
圖3 555單穩(wěn)態(tài)電路
圖4 單穩(wěn)態(tài)電路波形
鎖存電路是八路搶答器設(shè)計(jì)的關(guān)鍵,實(shí)驗(yàn)通過74LS373和D觸發(fā)器的應(yīng)用加深學(xué)生對(duì)時(shí)序邏輯的認(rèn)識(shí)。以D觸發(fā)器為例,實(shí)驗(yàn)通過兩個(gè)典型的D觸發(fā)器應(yīng)用電路讓學(xué)生理解異步置位端(R*和S*)、時(shí)鐘輸入端及D輸入端的關(guān)系。圖5為學(xué)生設(shè)計(jì)的八路搶答器仿真電路。
圖5 八路搶答器電路仿真
在圖中的①所示,電路通過R*和S*直接實(shí)現(xiàn)電路狀態(tài)的維持功能,可應(yīng)用在“開始”和“復(fù)位”按鈕電路中。
在圖中的②所示,電路通過對(duì)D端的控制,依照D觸發(fā)器的特征方程:Qn+1=D,分別實(shí)現(xiàn)只響應(yīng)一次上升沿輸入的鎖存功能和有條件置零功能。
本文以八路搶答器作為一典型設(shè)計(jì)實(shí)例,實(shí)驗(yàn)過程中充分發(fā)揮了Proteus軟件優(yōu)勢(shì),通過快捷的電路圖繪制和修改方式,直觀的電路仿真,充分調(diào)動(dòng)了學(xué)生的學(xué)習(xí)積極性。學(xué)生根據(jù)自己的認(rèn)識(shí),設(shè)計(jì)出了多種不同的電路。學(xué)生通過實(shí)驗(yàn)加深了對(duì)典型中規(guī)模集成電路的應(yīng)用認(rèn)識(shí)。
[1]周潤(rùn)景,張麗娜.基于Proteus的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2006
[2]吳小花,吳先球.Proteus電路設(shè)計(jì)與仿真在教學(xué)中的實(shí)踐[J].北京:計(jì)算機(jī)系統(tǒng)應(yīng)用,2010(2),201-204
[3]楊增汪,陳斯,戴新宇.基于Proteus的電類綜合實(shí)驗(yàn)系統(tǒng)的構(gòu)建[J].北京:中國(guó)現(xiàn)代教育裝備,2010(15),116-118
[4]匡載華,鄧小鵬.電子類學(xué)科專業(yè)Proteus實(shí)驗(yàn)室的建設(shè)[J].北京:實(shí)驗(yàn)技術(shù)與管理,2009,26(1):155-158