官术网_书友最值得收藏!

2.3 常見集成組合邏輯器件及其應用

有些組合邏輯電路在各類數字系統中經常被大量使用。為了使用方便,集成芯片生產廠家已將這些電路制成了標準的中、小規模集成器件,這些器件具有通用性強、可靠性高、兼容性好等優點,這不僅提高了電路設計的質量,同時把我們的學習重心轉移到了器件的靈活應用上。

2.3.1 編碼器及其應用

在生產生活中,編碼隨處可見。在馬路上的路燈桿、電線桿上,管理部門為定位安裝、維護進行了特定的編碼;電話運營公司為每部電話設置了獨一無二的編碼;如圖2-8所示,在集裝箱倉庫里,為便于吊裝、定位運輸,每個集裝箱位同樣也擁有特定的編碼。

圖2-8 集裝箱倉庫編碼示意圖

編碼就是用文字、符號或者數碼表示特定信息的過程,而能夠實現編碼功能的電路就叫做編碼器。在數字系統中是采用一組若干位的二進制碼0和1進行編碼來表示某一特定信息的。要表示的信息越多,二進制代碼的位數越多。

如果有15條信息需要進行編碼,至少需要幾位二進制代碼才能實現?

n位二進制代碼有2n個狀態,可以表示2n個信息。對N個信號進行編碼時,應按公式2nN來確定需要使用的二進制代碼的位數n。

1.8線—3線編碼器的設計

設計要求:用3位二位制數的輸出分別代表輸入的8個信號,輸入低電平有效。

8線—3線編碼器的設計步驟如下:

(1)確定輸入變量和輸出變量。8個輸入邏輯變量為低電平有效,3位輸出邏輯變量為Y2、Y1、Y0,高電平有效。

(2)列出真值表,如表2-5所示。

表2-5 8線—3線編碼器的真值表

(3)根據真值表寫出邏輯函數表達式,為:

式(2-11)是怎么來的?

編碼器有8個邏輯輸入端,理論上存在256種變量組合,但根據編碼器的邏輯要求,

輸出的二進制碼的不同組合只對應于某一輸入端,因此除表2-5中的8種變量組合外的其他組合均為無關項。對輸出Y2而言,只有在I4、I5、I6I7有輸入信號時,Y2才輸出高電平,其他端子應無輸入信號,因此,。同理可推導出Y1、Y0的表達式。利用卡諾圖也能推導出相同的結果。

由八邏輯輸入信號I0I7可繪制如圖2-9所示的16×16的卡諾圖,根據編碼器邏輯功能,輸入信號組合僅有八個邏輯最小項,其余項均為邏輯無關項。

圖2-9 八變量邏輯卡諾圖

根據表2-5編碼器的真值表直接寫出Y0的邏輯表達式如下:

在卡諾圖中把對應項標注為“1”,其余項空白,根據帶邏輯無關項的卡諾圖化簡原則對Y0的每一項進行化簡,如圖2-10所示,為便于識別,圖(a)對一項進行化簡,圖(b)對一項進行化簡,圖(c)對一項進行化簡,圖(d)對一項進行化簡。在卡諾圖上選擇了合適的包圍圈,從圖(a)看到,縱向的I4I5I6I7全部約去,橫向八格非常有規律,仔細觀察即知I0I2、I3被約去,只余I1一項;在圖(b)中,也能利用邏輯無關項約去I0I1I2I3I4I6I7七項,只余I5一項;圖(c)中,明顯無法找到(a)、(b)圖中的包圍圈,但是從前兩圖約去的變量著手,再觀察表達式,可以認為這里需要約去I0I1I2I3I4I6I7七項,其中縱向變量需全部約去,橫向需把I0I1I2三個變量約去,這就意味著每個包圍圈橫向應占16格,縱向應包括I0I1I2的八種組合,由此在卡諾圖中選擇如圖(C)所示的包圍圈,明確此時約去七項,只余I3一項;同理在圖(d)中確定了卡諾圖的包圍圈,約去I0I1I2I3I4I5I6七項,只余I7一項。由此推出:

圖2-10 Y0的卡諾圖化簡

Y1、Y2的表達式也可以用類似的原則來推導。

你能不能從血型匹配指示器的邏輯化簡結論和編碼器的邏輯化簡結論推出一些規律?

這里需要說明的是,并不是要求每個人都弄懂256格卡諾圖的畫法,邏輯化簡方式繁多,電路設計方案各異,了解思路為己所用,才是發展的硬道理。

(4)根據式(2-11)畫出邏輯電路圖,如圖2-11所示。

從圖2-11可以看到,8線-3線編碼器要求輸入量具有排他性,即每次只能有一個輸入端為低電平,從而保證輸出編碼的唯一性。如果同時有兩個或兩個以上的輸入信號要求編碼,則輸出端必然發生混亂。

2.16線—4線優先編碼器的設計

優先編碼器是相對于普通二進制編碼而言的,它的功能是允許幾個輸入端同時輸入信號,編碼器按預先排定的優先順序,只對同時輸入的幾個信號中優先權最高的一個進行編碼。常用的8線—3線優先編碼器有74LS148、CD4532等,下面介紹8線—3線優先編碼器CD4532的應用。如圖2-12(a)、(b)所示分別是CD4532的邏輯圖和引腳圖。

圖2-11 8線—3線編碼器的邏輯電路圖

圖2-12 優先編碼器CD4532的邏輯圖和引腳圖

1)引腳功能

(1)D0、D1、…、D7:信號輸入端。

(2)Q0、Q1、Q2:編碼輸出端。

(3)EI:輸入使能端,高電平有效,即EI=1時編碼器工作,EI=0時禁止編碼器工作。

(4)EO:擴展使能端,高電平有效。

(5)GS:優先編碼工作狀態標志,高電平有效,即GS=0時表示Q2Q1Q0輸出為無效碼,GS=1時表示輸出為有效編碼。

優先編碼器CD4532的功能表如表2-6所示。

表2-6 優先編碼器CD4532的功能

注:1——高電平;0——低電平;×——任意電平。

從功能表可讀出以下信息:

(1)輸入和輸出均為高電平有效,而輸入優先級別從高到低的順序依次為D7、D6、…、D0

(2)當EI=0時,禁止編碼器工作,此時不論8個輸入端為何種狀態,Q2Q1Q0輸出端均為低電平,且GSEO均為低電平,GS=0,由此表示Q2Q1Q0=000為非編碼狀態。

(3)在EI=1的條件下,如果所有輸入D7D0均為低電平,則EO為1,輸出擴展控制信號,Q2Q1Q0=000,此時雖然允許編碼器工作,但各輸入無要求,輸出的“000”為無效碼,因此GS=0。

(4)當EI=1時,若D7D0中至少有一個輸入端為高電平信號輸入,則GS為1,EO為0,編碼器處于工作狀態禁止擴展芯片工作。

從(3)、(4)可以發現,在EI=1的條件下,若有輸入信號,則EO為0;若無輸入信號,則EO為1。這個特性能否用于芯片的級聯呢?

若用EO去控制相連的下一級CD4532的EI,將允許下一級級聯芯片進行編碼,從而為組成更多輸入端的優先編碼器進行片間級聯提供了方便。

2)設計思路

按照輸入優先級I15最高,I0最低的原則,每八位一組做出十六位輸入信號的編碼表,如表2-7所示。

表2-7 十六位輸入信號的編碼

2)設計思路

按照輸入優先級I15最高,I0最低的原則,每八位一組做出十六位輸入信號的編碼表,如表2-7所示。

表2-7 十六位輸入信號的編碼

對比兩組編碼,可以發現低三位編碼順序完全相同,唯獨在I0I7有輸入時,最高位輸出Y3輸出0;而在I8I15有輸入時,Y3輸出1。

16線—4線優先編碼電路需要選擇兩片8線—3線優先編碼器,I0I7I8I15分別通過一片CD4532輸出。每片的輸出即為實際4線輸出的低3位,最高位在I0I7有輸入時為0,在I8I15有輸入時為1,可以考慮用GS表示。高8位對低8位的優先級可以利用使能端來實現控制。具體電路如圖2-13所示。

圖2-13 16線—4線優先編碼電路

8線—3線優先編碼器74LS148的邏輯圖和引腳圖如圖2-14(a)、(b)所示,功能表如表2-8所示,仿照上例設計一個16線—4線優先編碼電路。

圖2-14 優先編碼器74LS148的邏輯圖和引腳圖

表2-8 8線—3線優先編碼器74LS148的功能

注:H——高電平;L——低電平;×——任意電平

“高電平有效”和“低電平有效”

“高電平有效”指信號為“1”視為有效信號,而“低電平有效”則指信號為“0”視為有效信號,CD4532各端子均為“高電平有效”端,而74LS148則多為“低電平有效”端。對單一屬性的端子容易理解與區別,如使能端,“EI”為高電平有效,只有置高電平時芯片可進行編碼;而對“”則為低電平時芯片可進行編碼。若對多位二進制數組成的編碼而言,理解起來就要費些心思了,如CD4532芯片輸入端D1為高電平(D2~D7均應為低電平)時,芯片將輸出“1”對應的編碼,其高電平有效的輸出端Q2Q1Q0將獲得“低低高”(001)的輸出電平;而74LS148芯片輸入端I1為低電平(同時I2~I7均應為高電平)時,芯片才會對“1”進行編碼,由于其輸出為低電平有效,輸出端A2A1A0將輸出“高高低”(110)的電平而不是正?!?”的二進制編碼。

2.3.2 二進制譯碼器及其應用

譯碼是編碼的反過程,用于將給定的二進制代碼翻譯成編碼時賦予的原意,即將每一組輸入的二進制代碼譯成相應特定的輸出高、低電平信號,完成這種功能的電路稱為二進制譯碼器。譯碼器是多輸入、多輸出的組合邏輯電路。

如表2-9和表2-10所示分別為輸出高電平有效和低電平有效的二進制譯碼器功能表。從中可以理解譯碼器的工作效果。

表2-9 輸出高電平有效二進制譯碼器功能

表2-10 輸出低電平有效二進制譯碼器功能

在中規模組合邏輯電路產品中,常用的二進制譯碼器有雙2線—4線的54/74HC139、54/74LS139;3線—8線的54/74HC138、54/74LS138;4線—16線的54/74HC154、54/74HC4514、54/74LS154等;二—十進制譯碼器有54/74HC42、54/74LS42等。

1.單片機外部程序存儲器擴展電路的設計

如圖2-15所示為單片機外部程序存儲器擴展電路。該單片機外部需擴展16KB的程序存儲器(ROM),因器件原因,需擴展2KB容量的程序存儲器8片,每片ROM的端為允許工作的使能端。為正確訪問到外部程序存儲器的相關地址,可選擇3線—8線譯碼器74HC138進行地址譯碼。

如圖2-16(a)、(b)所示分別是74HC138的邏輯圖和引腳圖。

圖2-15 單片機外部程序存儲器擴展電路

圖2-16 3線—8線譯碼器74HC138的邏輯圖和引腳圖

存儲器的存儲容量

16KB和2KB都是指存儲器存儲字節的數量。在數據訪問過程中,單片機只有為每個存儲單元分配了唯一的單元地址后才能正確訪問到對應的數據。單片機總共有16根地址線,把A0A10這低11位接到每個芯片的地址端,由此就為每個2KB容量的存儲器的單元分配了唯一的地址編號。接下來的問題就是如何區分擴展的每一片存儲器了。還剩下5根地址線,如果每個存儲器接一根地址線,單片機的地址線必然不夠用,這時就要借助譯碼器來分配地址單元了。因為5根地址線實際上有32種不同的狀態組合,所以只需要選擇其中的8種就可以了。

引腳功能如下所示。

(1)A0、A1、A2:信號輸入端。

(2)、…、:譯碼輸出端。

(3)E1、、:選通輸入端,當E1端為高電平、端為低電平時器件被選通。

3線—8線譯碼器74HC138的功能如表2-11所示。

表2-11 3線—8線譯碼器74HC138的功能

注:H——高電平;L——低電平;×——任意電平。

從功能表可讀出以下信息。

(1)當E1為高電平、為低電平時器件被選通。輸出低電平有效,對于E1、、的其他任何組合,均為高電平。

(2)輸入高電平有效,當器件被選通時,A0~A2的編碼可唯一確定中的一個以低電平呈現。

再來看如圖2-15所示的單片機外部程序存儲器擴展電路,單片機的最高兩位地址線A15和A14用于譯碼器的選通控制,且A15和A14均為低電平時譯碼器才能進行譯碼工作。A13、A12和A11連接到譯碼器的輸入端,譯碼器的輸出端分別接到了8片程序存儲器的端上,為低電平有效端口,若系統需要訪問第“0”片程序存儲器,只需要令A13A12A11為“000”即可。由此可以推斷,第“0”片程序存儲器的地址區間為0000H~07FFH。

你可以推導一下第1、2、3、4、5、6、7片程序存儲器的地址區間嗎?

2.4線—16線譯碼器的設計

實現4線—16線譯碼需要選用兩片3線—8線譯碼器,譯碼器擴展方式如圖2-17所示。對第“1”片和第“0”片譯碼器來說,關鍵在于輸入端I3的狀態,如I3為“0”,則第“0”片譯碼器工作;若I3為“1”,則第“1”片譯碼器工作。因此,只要正確處理好選通端的連接即可實現功能。實際電路如圖2-18所示。

圖2-17 譯碼器擴展方式

圖2-18 由兩片74HC138組成的4線—16線譯碼器的實際電路

你能用4片74HC138連接成一個5線—32線譯碼器嗎?

3.數據分配器

在數據傳輸系統中,經常需要將總線中的數據傳輸到多個支路中的一路上去,傳到哪一條支路通過唯一的通道編碼來確定,這樣的電路稱為數據分配器。其功能示意圖如圖2-19所示。當我們把選通端作為總線數據輸入端,將通道編碼利用輸入端寫入時,問題就迎刃而解了。實際邏輯電路圖如圖2-20所示??偩€數據由選通端E1輸入,選通端接低電平。當通道編碼由輸入端A0~A2輸入時,若總線數據為“1”,則對應輸出端呈現低電平;若總線數據為“0”,則對應輸出端沒有輸出,呈現高電平,即總線數據以反碼的形式從通道編碼對應的輸出端送出。若要得到原碼,在輸出端加一反相器或選擇輸出端高電平有效的譯碼器即可。

圖2-19 數據分配器功能示意圖

圖2-20 數據分配器的實際邏輯電路圖

4.組合邏輯電路的設計

已知如式(2-12)所示的兩輸出邏輯函數表達式,要求用3線—8線譯碼器74HC138實現邏輯電路。

分析步驟如下。

(1)將式(2-12)中各表達式變換為最小項之和的形式,得:

(2)因74HC138譯碼器輸出低電平有效,所以利用摩根定理將式(2-13)變換為:

(3)分析表達式,若把AB、C三輸入變量分別送入74HC138的輸入端A2、A1、A0,則在輸出端選擇對應的端子,用與非門連接即可得到函數表達式的輸出了。邏輯電路圖如圖2-21所示。

圖2-21 式(2-12)的邏輯電路圖

3線—8線譯碼器74HC238的邏輯圖和引腳圖如圖2-22(a)、(b)所示,其功能如表2-12所示,試分析實現式(2-12)的邏輯電路。

圖2-22 3線—8線譯碼器74HC238的邏輯圖和引腳圖

表2-12 3線—8線譯碼器74HC238的功能

2.3.3 顯示譯碼器

在數字測量儀表和各種數字系統中,都需要將數字量直觀地顯示出來。數字顯示電路是許多數字設備不可缺少的組成部分。數字顯示電路通常由計數器(對脈沖個數進行計數,輸出BCD碼)、譯碼器、驅動器和顯示器等部分構成,如圖2-23所示。我們現在關注的是獲得BCD碼后,如何在顯示器上實現對應的顯示符號。

圖2-23 數字顯示電路的構成

字符顯示器

十進制數碼目前廣泛采用七段字符顯示器直觀顯示。如圖2-24所示,七段字符顯示器由編號分別為a、b、c、d、e、f、g的七段可發光線段組成,若需要顯示小數點,則增加一段h(有些場合標為dp)。

常見的顯示器有白熾燈、輝光數碼管、熒光數碼管、發光二極管(LED)和液晶顯示器(LCD)等。目前用得較多的是發光二極管和液晶顯示器。

1)LED數碼管

LED數碼管是用發光二極管組成字形,從而顯示數字、文字和符號的。LED字型以七段顯示器為常見,如圖2-25(a)、(b)、(c)所示分別為LED數碼管的引腳圖、共陽極接法與共陰極接法。從圖中看出,共陽極接法的數碼管公共端應接高電平,當a、b、…、g各腳接低電平時,發光二極管才會導通發光,因此這個數碼管可用輸出低電平有效的譯碼器來驅動;共陰極接法的數碼管正好相反,公共端接低電平,其余各腳接高電平,可用輸出高電平有效的譯碼器驅動。

圖2-24 字符顯示器的段碼示意圖

圖2-25 LED數碼管

LED數碼管的型號繁多,常用的共陰極顯示器有BS201、BS202、BS207、LC-5011、LC-5021、LC5031等;常用的共陽極顯示器有BS204、BS206、LA-5011、LA-5021、LA-5031等。選用數碼管時需根據譯碼器的類型選擇正確的型號。在實際設計中,還應根據應用場合的需求選擇數碼管的尺寸、發光二極管的顏色及合適的限流電阻,并在繪制PCB圖時關注數碼管的封裝。

LED數碼管的主要優點是工作電壓低、體積小、壽命長、響應時間短、可靠性高、亮度也較高,主要缺點是工作電流比較大。

2)液晶顯示器

液晶是一種既具有液體的流動性,又具有晶體光學特性的有機化合物。它的透明度和顯示的顏色受外加電場的控制,利用這一特點,人們制成了液晶顯示器,也即LCD數碼管。液晶顯示器由正面(透明)電極和公共(反射)電極組成,如圖2-26所示。不加電壓時,液晶為透明狀態,顯示器呈白色;當兩極間加交變電壓時,液晶呈暗灰色。

圖2-26 液晶顯示器的結構和符號

把七段透明的正面電極排列成段碼“”字形,而背面電極呈“日”字形,就成了LCD數碼管(液晶顯示器)。給對應段碼加上電壓,LCD數碼管便會顯示出需要的數碼字形。

LCD數碼管的字形編號與LED數碼管一致,但封裝的引腳排列還需查看具體型號。

液晶顯示器的最大優點是工作電壓低,在1V以下也能工作;功耗極?。ㄔ?μW/cm2以內),從而使它在小型計算機、便攜式儀器儀表中得到了廣泛應用。它的缺點是亮度較差、響應速度慢。

由于數碼管數段顯示的特殊結構,使得無論是編碼產生的二進制信號或BCD碼信號,還是譯碼器產生的輸出信號,都不能直接在數碼管上顯示出對應的數碼。為此,需要使用顯示譯碼器將BCD代碼譯成數碼管所需要的字形編碼,從而驅動對應字段顯示出BCD代碼所代表的數值來。

1.LED數碼管顯示譯碼器

LED數碼管顯示譯碼器分驅動共陰極數碼管和驅動共陽極數碼管兩類,常用的共陰極七段數碼管顯示譯碼器有4513、54/74HC4511、74LS48、74LS248等,其功能大同小異;74系列共陽極數碼管顯示譯碼器有7447、5447、74LS247等。這里以74LS48為例來說明。

74LS48為內部帶上拉電阻的BCD輸入四線—七段顯示譯碼/驅動器,其邏輯圖和引腳圖如圖2-27(a)、(b)所示,功能如表2-13所示。

圖2-27 74LS48邏輯圖和引腳圖

表2-13 四線—七段顯示譯碼/驅動器74LS48的功能

引腳含義如下所示。

(1)A3、A2、A1、A0:BCD碼輸入端,高電平有效。

(2)a~g:字形碼輸出端,高電平有效。

(3):燈測試端,低電平有效,用于測試各碼段的好壞,優先級僅次于“消隱”功能。

(4):消隱輸入端,低電平有效,優先級最高;/滅零輸出端,低電平有效。

(5):滅零輸入端,低電平有效,在“消隱”、“燈測試”、“滅零”三功能中優先級最低,且端應做輸出端用。

從功能表可以看出以下幾點。

(1)消隱輸入端優先級最高,當時,不管其他輸入狀態如何,輸出的a~g均為低電平,即無任何輸出。

(2)燈測試端的優先級僅次于消隱輸入端。當,時,a~g均為高電平,顯示字型“”。

(3)若燈測試端不在測試狀態,即=1時,=0,輸入端A3、A2、A1、A0也輸入低電平,此時輸出的“a~g”均為低電平,不顯示字型,同時滅零輸出端的信號也變為低電平。當=1,輸入端A3、A2、A1、A0輸入低電平時,輸出將顯示”。因此,所謂“滅零”,就是數學中高位“0”無效的概念體現,當最高位為“0”時可設置為不顯示。

(4)對BCD碼而言,輸入端A3、A2、A1、A0為“1010~1111”時已無意義,譯碼顯示芯片輸出特定的符號。

74LS248芯片的引腳排列、功能和電特性與74LS48均相同,僅在顯示6和9的字型方面有差異。

74LS48芯片的4號腳為雙功能端,并且不像一些芯片用電平高低來區分不同功能,它特殊在于作為“消隱”功能時,它為輸入端,作為“滅零”功能時,它為輸出端,在實際應用中應考慮如何接線?

常用的譯碼顯示芯片還有很多,每種芯片的邏輯功能都有一定差異,在使用前一定要仔細分析邏輯功能表,確定其特殊的功能,并加以利用。

表2-14 4543的功能

2.LCD數碼管顯示譯碼器

常用LCD七段數碼管顯示譯碼器有4543、4055B、54/74HC/HCT4543等。這些器件也可用于共陽極或共陰極LED七段數碼管的譯碼顯示。4543的功能如表2-14所示。

其引腳含義如下所示。

(1)D3、D2、D1、D0:BCD碼輸入端,高電平有效。

(2)Ya~Yg:字形碼輸出端,高電平有效。

(3)BI:消隱輸入端,高電平有效。

(4):輸出使能端,低電平有效。

(5)M:顯示方式控制端。當M=0時,用于驅動共陰極LED數碼管,譯碼輸出為高電平;當M=1時,用于驅動共陽極LED數碼管,譯碼輸出為低電平;當用于液晶顯示器時,將從M端加30~200MHz方波,輸出為反相方波,而M端同時與LCD公共電極相連,從而驅動LCD段碼顯示。

在實際的控制系統中,顯示電路是系統數據處理的最后一環,其功能為把系統經過運算后獲得的結果顯示出來,為操作人員提供直觀的印象,從而為進一步控制提供依據。顯示電路從前端電路獲得相應的BCD碼后,只要適當選擇譯碼驅動芯片和顯示器,即可實現數據的顯示了。

主站蜘蛛池模板: 镇平县| 灌阳县| 和平县| 和平区| 五家渠市| 满城县| 邛崃市| 云梦县| 金塔县| 离岛区| 高要市| 拉萨市| 长乐市| 浏阳市| 兴海县| 温泉县| 武安市| 抚远县| 庆元县| 万山特区| 嫩江县| 碌曲县| 册亨县| 莲花县| 潮州市| 开远市| 甘洛县| 华容县| 广南县| 会昌县| 凉山| 高碑店市| 广昌县| 通海县| 同德县| 垣曲县| 拉孜县| 固阳县| 南涧| 阿尔山市| 开阳县|