移位寄存器的串行擴展_第1頁
移位寄存器的串行擴展_第2頁
移位寄存器的串行擴展_第3頁
移位寄存器的串行擴展_第4頁
移位寄存器的串行擴展_第5頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、移位寄存器的串行擴展(74hc164)1. 74HC16474HC1641比較典型的移位寄存器,該移位寄存器有一個數(shù)據(jù)輸入端口、 個時鐘信號端口和八個輸出端口。如圖1所示。圖1 71HC161個引腳當(dāng)時鐘信號從低電平變?yōu)楦唠娖降臅r候?qū)⑤敵鲆粋€數(shù)據(jù)到輸出端DQ當(dāng)時鐘第二次由低電平變?yōu)楦唠娖降臅r候?qū)⑤敵龅诙€數(shù)據(jù)到DQ而第一個數(shù)據(jù)將轉(zhuǎn)移到D1端口。依此類推,每一個時鐘周期中都有一個申行數(shù)據(jù)輸出到DO,而其他的數(shù)據(jù)則不斷往高位移動直到所有數(shù)據(jù)傳輸結(jié)束。如果不再有時鐘周期輸入, 則這些數(shù)據(jù)將暫存在輸出端。如果需要有更多的輸出端口,可以把多個74HC164I聯(lián)起來用。串聯(lián)的方法 如圖2所示。DO DE

2、D2 D3 D4 DS D6 D7DO DI D2 D3 EM D5 D6 D7中tl數(shù)期輸入時髀輸入圖2兩個鎖存一串聯(lián)在上圖的串聯(lián)電路中,左邊的鎖存器 D7與右邊鎖存器的串行數(shù)據(jù)輸入端連接, 當(dāng)左邊的鎖存器DOD激據(jù)全部輸出以后,再輸入一個用行信號,左邊鎖存器D7數(shù)據(jù)將作為右邊鎖存器的輸入數(shù)據(jù)并從右邊鎖存器D0端輸出,從而實現(xiàn)了多個字節(jié)數(shù)據(jù)的移位鎖存。這樣利用 74HC16砒實現(xiàn)了串行數(shù)據(jù)到并行數(shù)據(jù)的轉(zhuǎn) 換。注意到在上面的兩個圖中,無論輸出什么長度的數(shù)據(jù),所需要的輸入信號都 只有兩個,一個是串行數(shù)據(jù)輸入,另一個是鎖存器的時鐘信號輸入。 如果我們把 這兩個輸入端口連接到單片機的兩個輸出端口上,

3、其中單片機的一個端口用行輸出數(shù)據(jù),另一個端口輸出時鐘信號以便控制申行數(shù)據(jù)的鎖存方式,那么我們就只需要兩個單片機端口幾乎實現(xiàn)任意數(shù)量的并口輸出。2. 8051串口方式0的工作原理與時序sm)RXD 一(數(shù)據(jù)摘出)TXD(移位脈沖)LWUUOTI (中斷標(biāo)志)置 REN=1RI接收中斷標(biāo)志)RXD(數(shù)據(jù)*xyTXD(移位脈沖)mnnnwir(b)圖3串口方式0的時序8051串口方式0的時序如圖所示,RXD(P3.0)為數(shù)據(jù)端,TXD(P3.1)為同 步移位脈沖端,每次串行發(fā)送、接收8位數(shù)據(jù)(一幀),低位在先。時鐘為Fosc/121 1) 發(fā)送執(zhí)行任何一條MOV SUBF,#data旨令時,啟動內(nèi)部

4、串行發(fā)送允許,SENtK高 電平,隨后在TXD同步移位時鐘的作用下,將數(shù)據(jù) data從RXD®移位輸出。一 幀數(shù)據(jù)發(fā)送完畢時,內(nèi)部發(fā)送中斷請求 TI有效。要再次發(fā)送一幀時,須用軟件 清TI。2 2)接收在用行口控制寄存器SCO即,REN=1ffiRI=0時,會啟動一次接收過程。接 收時,TXM為同步移位時鐘輸出,而串行移位數(shù)據(jù)仍從 RXDS位輸入。當(dāng)接收 完一幀后,內(nèi)部接收中斷請求RI有效,要再次接收一幀數(shù)據(jù)時,須用軟件清零。3 .電路原理MCS-5俾片機用彳T口方式0為移位寄存器方式,外接4片74LS164作為4 位LED顯示器的靜態(tài)顯示接口,把8031的RXD乍為數(shù)據(jù)/出線,TX

5、D乍為移位 時鐘脈沖。74LS164為TTL單向8位移位寄存器,可實現(xiàn)串行輸入,并行輸出。 其中A、B (第1、2腳)為串行數(shù)據(jù)輸入端,2個引腳按邏輯與運算規(guī)律輸入信 號,共一個輸入信號時可并接。T (第8腳)為時鐘輸入端,可連接到用行口的 TXD端。每一個時鐘信號的上升沿加到 T端時,移位寄存器移一位,8個時鐘脈 沖過后,8位二進制數(shù)全部移入74LS164中。R(第9腳)為復(fù)位端,當(dāng)R=0時, 移位寄存器各位復(fù)0,只有當(dāng)R=1時,時鐘脈沖才起作用。Q1-Q8第3-6和10-13 引腳)并行輸出端分別接LED顯示器的hg a各段對應(yīng)的引腳上。在給出了 8個脈沖后,最先進入74LS164的第一個

6、數(shù)據(jù)到達了最高位,然后再來一個脈沖 會有什么發(fā)生呢?再來一個脈沖,第一個脈沖就會從最高位移出,搞清了這一點, 下面讓我們來看電路,4片7LS164首尾相串,而時鐘端則接在一起,這樣,當(dāng) 輸入8個脈沖時,從單片機RX訓(xùn)輸出的數(shù)據(jù)就進入到了第一片 74LS164中了, 而當(dāng)?shù)诙€8個脈沖到來后,這個數(shù)據(jù)就進入了第二片 74LS164,而新的數(shù)據(jù)則 進入了第一片74LS164,這樣,當(dāng)?shù)?個8個脈沖完成后,首次送出的數(shù)據(jù)被送 到了最左面的164中。JL界蛆工作道圖4整體原理圖4 .源程序產(chǎn)*利用中斷方式進行處理*/#include<reg51.h>#define uchar unsign

7、ed charsbit P3_3=P3A3;uchar a=3;char code tab=0x99,0xB0,0xA4,0xF9,0xF9,0xA4,0xB0,0x99;/4321 與 1234 的字形碼void timer(uchar);void int4(void);void main(void)uchar i,j;SCON=0;EA=1;ES=1;for(;)P3_3=1;for(i=0;i<4;i+)SBUF=taba;j=a;while(j=a);P3_3=0;timer(100);if(a=255)a=7;void int4(void)interrupt 4TI=0;a-;

8、void timer(uchar t)uchar i;for(i=0;i<t;i-)TMOD=0x01;TH0=10000/256;TL0=10000%256;TR0=1;while(!TF0);/¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論