




已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
i/o接口擴展電路設計 8051系列單片機如果系統(tǒng)不做任何擴展,p0p3接口可做i/o接口使用。只要稍微擴展系統(tǒng),p0、p2接口則被用為地址線。p0接口還兼做數據線,p3接口常被專用線占用,只有pl接口可做i/o接口。一個實際系統(tǒng),只有8位io接口往往是不夠用的,所以i/o接口也需要擴展。本節(jié)重點介紹i/o接口擴展方法及應用實例。 i/o接口擴展方式主要有兩種:總線擴展法和串行口擴展法。總線擴展又可分為簡單i/o接口擴展和可編程i/o接口擴展。 擴展i/o接口常用芯片有ttl、cmos鎖存器、三態(tài)門芯片,如74系列的373、244、273、367等,這些常用來擴展簡單i/o接口??删幊绦酒S?255、8155等,利用程序對芯片進行設置,軟硬件結合實現對i/o接口的擴展。 簡單i/o接口擴展 在單片機應用系統(tǒng)中,利用ttl芯片、coms鎖存器、三態(tài)門等接口芯片把p0接口擴展,常選用74ls273、74ls373、74ls244等芯片。這些芯片價格低,結構簡單,使擴展靈活方便。如圖6-7所示是一個利用74ls273和74ls244,將8位p0接口擴展成簡單的輸入、輸出口的電路。74ls273是8d鎖存器擴展輸出口,輸出端接8個led發(fā)光二極管,以顯示開關狀態(tài),某位低電平時二極管發(fā)光。74ls244是緩沖驅動器,擴展輸入口,它的8個輸入端分別接8個按鈕開關。74ls273與74ls244的工作受p2.0、rd、wr三條控制線控制。其工作原理如下。當p2.0=0,wr=0(rd=1)選中74ls273芯片,cpu通過p0接口輸出數據鎖存到74ls273,74ls273的輸出端低電平位對應的led發(fā)光二極管點亮;當p2.0=0,rd=0(wr=1)時選中74ls244,此時若無鍵按下,輸入全為高電平,當某鍵按下時則對應位輸入為“0”,74ls244的輸入端不全為“1”,其輸入狀態(tài)通過p0接口數據線被cpu讀入機內。總之,在圖6-7中只要保證p2.0端低電平就有可能使擴展輸入口或輸出口工作。至于哪一個口工作受wr和rd控制線控制,二者不會同時為“0”,故在圖6-7中,兩個擴展芯片可共用一個地址。擴展口地址確定原則,只要保證p2.0為“0” 。其他地址位或“0”或“1”即可。如地址用feffh(無效位全為“1”),用0000h(無效位全為“0”)。輸出程序段:mov a, #data ;數據amov dptr, #0feffh ;i/o地址dptrmovx dptr, a ;wr為低電平,數據74ls273口輸出輸入程序段:mov dptr, #ofeffh ;i/o地址dptrmovx a, dptr ;rd為低電平,74ls244接口數據讀入內部ram例 要求編程把按鍵狀態(tài)通過圖6-7中的發(fā)光二極管顯示出來。程序lp: mov dptr, #0feffh ;輸入口地址dptr mov a, dptr ;鍵狀態(tài)送 a movx dptr, a ;a 數據送顯示輸出口 sjmp lp ;(輸入、輸出公用一個地址)反復連續(xù)執(zhí)行8255可編程并行i/o接口擴展與電路設計8255 是一個單片機系統(tǒng)常用的可編程芯片,利用指令設置各口的工作方式。為了對8255合理設置,靈活應用,有必要了解他的內部結構及工作原理。1.8255內部結構及引腳功能8255是一個有40引腳雙列支插型可編程芯片,內部及引腳如圖6-8所示。由圖6-8可見,8255內部有3個并行的8位i/o接口,分別稱為a口、b口、c口。擴展一片8255則可擴展24位并行端口。引腳功能介紹如下:(1) 接口線a、b、c 3個i/o接口的引線端分別為:pa0pa7、pb0pb7、pc0pc7共24條端線。3個口皆為鎖存/緩沖寄存器,a口、b口有鎖存功能,c口無鎖存功能。a、b、c 3口的工作方式由程序設置。a口可設置為輸入或輸出或雙向方式工作。b口只能設置為輸入或輸出,不能雙向方式工作。c口可設置為輸入或輸出口。它的特點是可分成高、低兩個4位使用。上半部pc4pc7與a口組成一組叫a組;下半部pc0pc3與b口組成一組為b組,便于控制。 (2) 數據線8255是8位芯片,有8位數據線d0d7。數據線接于8051的p0接口,用以實現8255與cpu之間的數據傳送。(3) 控制線控制線控制8255的讀、寫、復位及片選等。rd:讀入控制線,低電平有效,當其為低電平時cpu對8255進行讀操作,此時8255相應口為輸入口。wr:輸出控制線,低電平有效,當wr為低電平時,cpu輸出數據或命令到8255端口,此時8255相應口為輸出口。reset:復位端,高電平有效,8255內部寄存器全清0,24條i/o口線為高阻狀態(tài)。cs:片選線,當cs為低電平時,cpu選中此8255芯片。(4) 地址線8255共占用4個口地址,為a、b、c口及控制口地址。這4個地址之間的選擇由a0、a1兩端口線控制。a0、a1通常接于單片機的地址線最低兩位p0.o、p0.1,二者組合決定了4個端口地址,口地址選擇方式如下:a1a0=00,選擇a口;a1a0=01,選擇b口;a1a0=10,選擇c口;a1a0=11,選擇控制口。除這兩位外,其他位狀態(tài)還與硬件接線有關,各口具體地址,結合實際電路才能確定。2.方式選擇及方式控制字(1) 8255工作方式8255有3種工作方式:方式0、方式1,方式2。方式0時,a、b、c三口都可作基本的輸入或輸出口;方式1時,a、b口可作選通輸入或輸出,c口部分作專用聯(lián)絡線;方式2時,a口為雙向口,c口部分為專用聯(lián)絡線,b口無此方式。8255的c口專用功能如表6-3所列。 (2) 方式選擇 8255的方式選擇由方式控制字決定。方式控制字是8255內部方式控制寄存器的狀態(tài)字,它由指令寫入控制寄存器中a、b、c口控制位為“1”,對應口為輸入方式,若為“0”則為輸出方式。例如,控制字狀態(tài)為10010101b,表示a組為方式0(d6d5=00),a口為輸入方式(d4=1),c口上半部為輸出方式(d3=0);b組方式1(d2=1)中,b口為輸出(d1=0),c口下半部為輸入方式(d0=1)。d7=0只能對c口位操作,位操作內容由控制寄存器相應位狀態(tài)決定。例如,若控制字為01h,即控制寄存器格式為00000001b,表示c口位操作(d7=0),將pc0位置“1”(d3d2d1=000,do=l置“1”),同理若控制字為0eh則把c口最高位pc7置“0”即復位。8255擴展電路及地址設置 如圖6-9所示是8051單片機擴展一片8255的電路圖。圖中,74ls373是地址鎖存器。8255的地址線ai、a0經74ls373接于p0.1、p0.0;片選端cs經74ls373與p0.7接通,其他地址線懸空;8255的控制線rd、wr直接接于8051的rd和wr端;數據線db接于p0口。18255地址口確定圖6-9中8255只有3根線接于地址線。片選cs、地址選擇端a1、a0。分別接于p0.7,p0.1、p0.0其他地址線全懸空。顯然只要保證p0.7為低電平時,選中該8255,若p0.1、p0.0再為“00”選中8255的a口,同理p0.1、p0.0為“01”、“10”、“11”分別選中b口、c口及控制口。若地址口用16位表示,其他無用端全設為“1”,則8255的a、b、c及控制口地址分別可為 ff7ch、ff7dh、ff7eh、ff7fh,無用位為“0”則4個地址為0000h、0001h、0002h、0003h,只要保證cs、a1、a0的狀態(tài),無用位設為“0”或“1”無關。掌握了確定地址的方法,使用者可靈活選擇地址。 28255初始化 使用8255芯片時,首先要對它初始化。所謂初始化,也就是對8255的3個端口的工作方式預先設置。設置控制字經控制口寫入。 例如圖6-9電路,欲設置8255的a、b、c口全為輸出狀態(tài),控制字為80h。程序:mov dptr, #0003h ;8255控制口地址dptrmov a, #80h ;控制字送amovx dptr, a ;控制字寫入控制寄存器 利用這幾條指令對8255初始化后,a、b、c 3個口才能作為輸出口使用。當然改變控制字,則可改變3個端口的工作方式。8155可編程i/o接口擴展設計8155可編程接口芯片與8255的使用方法類似,只是二者在結構與功能上有所不同。18155結構及引腳 8155 內部也有3個i/o接口a、b、c口,與8255的主要區(qū)別是c口只有6位,i/o接口共22位,比8255多一個14位可編程定時/計數器,還多256b的靜態(tài)ram。8155共40引腳,雙列直插式封裝,如圖6-10所示。(1) i/o接口線pa0pa7,pb0pb7,pc0pc5分別為a、b、c 3個i/o接口引線端。a、b、c口多用于與外設之間的數據傳送;c口還可以作為a、b口的控制線。(2) 地址數據線 8155的低8位地址線和數據線共用ad0ad7,故稱為地址數據線。當ale=1時,輸入的是地址信息,否則是數據信息。當與8051單片機連接時,ale下降沿到,將p0接口輸出的低8位地址信息及ce、io/m狀態(tài)都鎖存到8155內部寄存器。因此8155的ad0ad7直接與p0接口相聯(lián),低8位地址不需要外接鎖存器,這點與8255不同。(3) 控制線 ale:地址鎖存線。ale=1表示給8155輸入的是地址信息,當ale下降沿時,把地址鎖存到8155中。io/m:ram與i/o接口的選擇線。io/m=0選中8155內部ram區(qū),io/m=1 選擇3個i/o接口、定時/計數器和命令寄存器。ce:片選線,rd:讀控制線,wr:寫控制線。 timerin:定時計數器外部脈沖輸入端。timerout:定時/計數器輸出端。2. 8155功能及操作 8155具有3種功能,下面介紹具體操作。 (1) 作i/o接口使用io/m=1時8155作i/o接口使用。各口的工作方式通過內部控制寄存器設置。8155工作于i/o口時,各方式具體功能如表6-4所列。表6-48155 i/o接口工作方式及功能 pc2 pc1方式功 能 0 0方式1a、b口定義為基本輸入/輸出口;c口為輸入口 1 1方式2a、b口定義為基本輸入/輸出口;c口為輸入口 0 1方式3a口為選通輸出,b口基本輸入/輸出pc3pc5輸出,pc0pc2作a口選通控制pc0;aintr,pc1,abf,pc2,astb 1 0方式4a口、b口都作為選通輸入/輸出方式pc0pc2控制a口,同方式3pc3pc5控制b口,pc3;bintr,pc4:bbfpc5:bstb 2)狀態(tài)寄存器格式8155有一個狀態(tài)寄存器,它鎖存i/o接口和定時器當前狀態(tài)供單片機查詢。狀態(tài)寄存器和控制寄存器共用一個地址,所不同的是狀態(tài)寄存器只能讀出不能寫入而控制寄存器只能寫入不能讀出。標志寄存器皆為高電平有效。(2) 作擴展ram 8155作為單片機擴展ram 256b,操作很簡單,只要使io/m控制端為低電平即可。通常io/m端、ce端與p2接口兩位相連,二者皆為低電平決定了ram的高8位地址,p0接口與ad0ad7相接決定ram的低8位地址。注意與其他數據存儲器統(tǒng)一編址。 (3) 作定時器使用當io/m=1時,8155也可作定時器使用。8155內的可編程定時/計數器實際是一個14位的減法計數器。它共有兩個8位寄存器組成,低8位和高6位存放計數初值,最高2位控制定時器的工作方式。m2m1決定的定時方式及波形,8155的定時計數器為計數方式時。由引腳timerin(3)從外部輸入計數脈沖;為定時方式時,則接單片機系統(tǒng)時鐘。無論定時或計數方式都從timerout端輸出脈沖或方波。 注意:如果寫入定時器的計數初值為奇數,方波輸出將不對稱。例如計數初值為9,單方波方式輸出方波在5個脈沖周期為高電平,4個脈沖周期內為低電平。8155任何時候都可以置定時初值和工作方式,只要重新啟動即可。計數初值為23fffh之間,終值為2。 8155計數方式一般作信號發(fā)生器使用,輸入連續(xù)脈沖后,由編程控制輸出不同波形。3. 8155的i/o接口及ram地址分配 8155和其他芯片一樣統(tǒng)一按16位地址。它的地址范圍分兩種情況。 當ram方式,io/m=0、ce=0(二者接p2口),其ram中數據地址范圍可為0000h- 00ffh(無關位取為0)。ram應與系統(tǒng)中其他數據存儲器統(tǒng)一編址。表 6-5 i/o接口及定時器地址編碼 ad2 ad1 ad0選中i/o接口或定時寄存器低8位地址編碼 0 0 0控制(命令)/狀態(tài)寄存器00h 0 0 1pa口01h 0 1 0pb口02h 0 1 1pc口03h 1 0 0 定時器低8位04h 1 0 1定時器高8位05h 當io/m=1、ce=0時工作在i/o接口或定時器方式,這種情況8155共需要占6個地址,6個地址由地址低8位中最低3位ad2、adl、ado編碼決定,編碼格式如表6-5所列。4. 8051單片機與8155接口電路舉例如圖6-11所示是8051單片機與8155芯片接口電路之一。結合硬件電路著重說明8155地址口的確定及初始化程序。(1) 8051與8155連接特點及地址分配 mcs-51系列單片機可以直接和8155連接,低8位地址可不加鎖存器。adoad7直接接于p0口,8155的ale直接與8051 ale相接,這點優(yōu)于8255。 圖中8155的io/m接8051的p2.0端,ce接p2.1端。 io/m=0, ce=0工作在ram方式,其地址范圍為0000h00ffh(無用位設為0)。 io/m=1,ce=0 8155工作在 i/o接口或定時方式,其地址確定方法:高位保證p2.1=0, p2.0=1其他無用位設為0,這樣高位地址為01h,再考慮低位ad2、ad1、ad0三位編碼可確定8155的以下6個地址:控制/狀態(tài)字地址 0100ha口地址 0101hb口地址 0102hc口地址 0103h定時器低8位地址 0104h定時器高8位地址 0105h(2) 8155初始化用指令把8155設置成各種工作方式:1)設置i/o口工作方式例1 設a口為基本輸出,b口為基本輸入,c口輸出。分析:根據題目要求,控制寄存器狀態(tài)為00001101b(0dh),編程把控制字送入即可。程序為: mov dptr, #0100h ;控制寄存器dptr mov a, #0dh ;控制字a movx dptr, a ;控制字送控制寄存器無論控制字為何值,都必須通過上述方式,把控制字送入控制寄存器,才能正確設置8155中i/o口工作方式。2)設置ram方式。例2 編程使cpu往8155ram30h單元送立即數88h。程序為:mov dptr, #0030h ;ram數據單元地址dptrmov a,#88h ;立即數送入amovx dptr, a ;立即數送入0030h中 使用ram時必在io/m=0條件下。3) 設置為定時方式。例3 設8155的定時/計數器為方波發(fā)生器,輸出方波頻率為輸入時鐘頻率的24分頻。初始化程序如下: mov dptr,#0104h ;定時器低8位地址dftr mov a, #18h ;18h-24d分頻系數a movx dptr,a ;定時初值送入定時器低8位 inc dptr ;0105h是定時高8位地址 mov a,#40h ;定時器方式1 movx dptr,a ;a 定時器高位地址 mov dptr,#0100h ;控制口地址dptr mov a, #0c2h ;啟動計數器,b口輸出,a、c口輸入 movx dptr,a 與8155芯片類似芯片如8156,除選片端ce高電平有效外,其他功能及引腳與8155完全相同。8755內部有2kb eprom和兩個i/o接口,詳細參數可查閱有關資料。串行口擴展i/o接口 單片機控制系統(tǒng)中,串行口常用來擴展io接口,使用移位寄存器作為鎖存或輸入信號的接口,可以方便地擴展并行輸入、輸出口。這種方法不占用片外ram地址,簡單易行,便于操作,適用于速度較慢、實時性要求不高的場合。1. 串行口擴展并行輸入口 74ls165芯片是8位并行輸入和串行移位輸出寄存器。原則上利用n片74ls165與8051的3根端口線相連,可擴展8n根并行輸入口線。圖6-12所示利用2片74lsl65與串行口配合,擴展16根并行輸入線的電路。由圖可見,8051僅用了3根線,分別為串行口輸入線rxd(p3.0)、串行口輸出線txd(p3.1)和1根控制線p1.0引出。74lsl65是一個8位寄存器,其sl端是串行移位控制端接于p1.0端;ck是移位時鐘輸入端,接于p3.1 (txd)端;qh是串行移位輸出端接于p3.0(rxd)端。串行口置為方式0。兩個165芯片是串聯(lián)方式,首尾相接,低位qh接于高位ser端,高位qh端接8051的rxd端。若16位并行輸入數據已送到兩個74lsl65的輸入端,當pl.0=0時。16位數據被同時接收,置入對應的74lsl65的寄存器中。當p1.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 完善研發(fā)成果的評估與激勵機制
- 《古代漢語常用詞詞義辨析:大學語文專業(yè)教案》
- 產品價格對比表格-主要產品價格列表
- 九年級英語上冊-Module-10-Australia模塊話題閱讀與交際
- 2025年西式面點師(中級)證考試題庫及答案
- 七年級英語下冊第四單元綜合檢測新版人教新目標版
- 房屋裝修合同協(xié)議書標準版
- 領導力發(fā)展中的團隊建設培訓
- 風能產業(yè)未來能源的希望之光
- 非遺在醫(yī)療建筑設計中的獨特作用
- 安徽省合肥一中2025屆高三最后一卷英語試題及答案
- 有關工廠實習心得體會模版
- 2025年組織行為學專業(yè)考試試題及答案
- 智能化汽車中的專利戰(zhàn)略布局-洞察闡釋
- 不寐的中醫(yī)護理常規(guī)
- 天津市兩學校2025屆生物七下期末達標檢測試題含解析
- 創(chuàng)新設計思維
- 2024年新疆維吾爾自治區(qū)、新疆生產建設兵團中考語文試卷(含答案與解析)
- 客訴處理培訓課件
- 2025至2030年中國精致石英砂濾料行業(yè)投資前景及策略咨詢報告
- 人工智能在數據治理中的應用-洞察闡釋
評論
0/150
提交評論