單片機(jī)系統(tǒng)擴(kuò)展設(shè)計(jì).ppt_第1頁
單片機(jī)系統(tǒng)擴(kuò)展設(shè)計(jì).ppt_第2頁
單片機(jī)系統(tǒng)擴(kuò)展設(shè)計(jì).ppt_第3頁
單片機(jī)系統(tǒng)擴(kuò)展設(shè)計(jì).ppt_第4頁
單片機(jī)系統(tǒng)擴(kuò)展設(shè)計(jì).ppt_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1,第8章 單片機(jī)系統(tǒng)擴(kuò)展設(shè)計(jì),系統(tǒng)接口技術(shù)概述 存儲器擴(kuò)展技術(shù) 輸入輸出(I/O)和中斷擴(kuò)展技術(shù),返回,2,單片機(jī)與片外并行器件接口設(shè)計(jì)有兩個任務(wù):硬件電路連接和軟件編程 硬件接口就是解決三種總線的連接: 1)數(shù)據(jù)總線:片外器件的數(shù)據(jù)總線寬度不超過8位時,直接與單片機(jī)相連即可;大于8位時,需要分時來存取。 2)地址總線:先對片外器件分配地址,然后進(jìn)行相應(yīng)的硬件連接。 3)控制總線:根據(jù)片外器件工作的定時邏輯,利用單片機(jī)控制信號以及與I/O口線的組合,完成對器件的控制和讀寫操作。,返回,MCS-51單片機(jī)并行接口基本方法,ALE,PSEN,EA,RD、WR,3,(1)地址總線(AB) 1.地址總線由單片微機(jī)P0口提供 低8位地址A0A7 2.P2口提供高8位地址A8A15。 3.P0口是地址總線低8位和8位數(shù)據(jù)總線復(fù)用口,只能分時用作地址線。 4.P0口輸出的低8位地址A0A7必須用鎖存器鎖存。 鎖存器的鎖存控制信號為單片微機(jī)ALE引腳輸出的控制信號。在ALE的下降沿將P0口輸出的地址A0A7鎖存。 5.P0、P2口在系統(tǒng)擴(kuò)展中用做地址線后便不能作為一般I/O口使用。 6.由于地址總線寬度為16位,故可尋址范圍為64 KB。,4,(2)數(shù)據(jù)總線(DB) 1.數(shù)據(jù)總線由P0口提供,用D0D7表示。 2.P0口為三態(tài)雙向口,是應(yīng)用系統(tǒng)中使用最為頻繁的通道。所有單片微機(jī)與外部交換的數(shù)據(jù)、指令、信息,除少數(shù)可直接通過P1口外,全部通過P0口傳送。 3.數(shù)據(jù)總線是并連到多個連接的外圍芯片的數(shù)據(jù)線上,而在同一時間里只能夠有一個是有效的數(shù)據(jù)傳送通道。哪個芯片的數(shù)據(jù)通道有效,則由地址線控制各個芯片的片選線來選擇。,5,80C51系列單片微機(jī)的三總線結(jié)構(gòu),6,單片機(jī)控制信號線 ALE輸出,地址鎖存,鎖存P0口輸出的低8位地址信號 PSEN 輸出, 程序存儲器選通允許 EA 輸入,外部訪問,選擇片內(nèi)或片外程序存儲器 RD、WR 輸出,讀/寫,用于訪問片外數(shù)據(jù)存儲器的讀寫控制,7,常用的串行總線有 Motorola公司的SPI(Serial Peripheral Interface)總線 Philips公司的I2C(Inter-Integrated Circuit) National Semiconductor公司的MICROWIRE總線 現(xiàn)場總線CAN(Controller Area Network)總線等。,串行總線的類型,返回,8,SPI總線接口,返回,SPI三線總線結(jié)構(gòu)是一個同步外圍接口,允許MCU與各種外圍設(shè)備以串行方式進(jìn)行通信 。 全雙工、三線同步傳送; 主、從機(jī)工作方式; 可程控的主機(jī)位傳送頻率、時鐘極性和相位; 發(fā)送完成中斷標(biāo)志; 寫沖突保護(hù)標(biāo)志。 按要求連接SCLK、MOSI/MISO、SS三根線,即可通過SPI擴(kuò)展各種I/O功能,9,串行數(shù)據(jù)線(MISO、MOSI) 1.主機(jī)輸入從機(jī)輸出數(shù)據(jù)線(MISO)和主機(jī)輸出從機(jī)輸入數(shù)據(jù)線(MOSI),用于串行數(shù)據(jù)的發(fā)送和接收。 2.數(shù)據(jù)發(fā)送時先傳送MSB(高位),后傳送LSB(低位)。 3.在SPI設(shè)置為主機(jī)方式時,MISO線是從機(jī)數(shù)據(jù)輸入線,MOSI是主機(jī)數(shù)據(jù)輸出線; 4.在SPI設(shè)置為從機(jī)方式時,MISO線是從機(jī)數(shù)據(jù)輸出線,MOSI是從機(jī)數(shù)據(jù)輸入線。,SPI總線引腳描述,10,串行時鐘線(SCLK) 1. 用于同步從MISO和MOSI引腳輸入和輸出數(shù)據(jù)的傳送。 2.在SPI設(shè)置為主機(jī)方式時SCLK為輸出; 3.在SPI設(shè)置為從機(jī)方式時,SCLK為輸入。 4. 在SPI設(shè)置為主機(jī)方式時,主機(jī)啟動一次傳送時,自動在SCLK腳產(chǎn)生8個時鐘周期。主機(jī)和從機(jī)SPI器件中在SCLK信號的一個跳變時進(jìn)行數(shù)據(jù)移位,數(shù)據(jù)穩(wěn)定后的另一個跳變時進(jìn)行采樣。,11,從機(jī)選擇輸入(SS) 1. 在從機(jī)方式時,輸入端,用于使能SPI從機(jī)進(jìn)行數(shù)據(jù)傳送; 2.在主機(jī)方式時, 一般由外部置為高電平。 3.通過SPI可以擴(kuò)展各種I/O功能,包括:AD、DA、實(shí)時時鐘、RAM、EEPROM及并行輸入輸出接口等。,12,單片機(jī)的SPI總線接口,利用單片機(jī)方式0實(shí)現(xiàn)簡化的SPI同步串行通信功能,RXD(P3.1)作為MOSI/MISO,TXD(P3.0)作為SCLK 特點(diǎn): 1.SCLK極性和相位關(guān)系固定,傳送速率固定,不能編程改變 2.無從機(jī)選擇輸入(SS)端 3.輸入輸出同一條線用軟件設(shè)置數(shù)據(jù)傳送方向 4.傳送數(shù)據(jù)位的順序先低位,后高位。,13,I2C總線接口,返回,1. I2C總線是兩線協(xié)議,在器件之間使用兩根信號線(SDA和SCL)進(jìn)行信息串行傳送,并允許若干兼容器件共享。 2.SDA線稱為串行數(shù)據(jù)線,傳輸雙向的數(shù)據(jù);SCL線稱為串行時鐘線,傳輸時鐘信號,用來同步串行數(shù)據(jù)線上的數(shù)據(jù)。 3.I2C總線上的數(shù)據(jù)傳送速率可達(dá)100kb/s以上 。,14,I2C總線,返回,開漏結(jié)構(gòu),15,掛接在I2C 總線上的器件,根據(jù)其功能可分為兩種: 主控器件和從控器件。 主控器件:控制總線存取,產(chǎn)生串行時鐘(SCL)信號,并產(chǎn)生啟動傳送及結(jié)束傳送的器件,總線必須由一個主控器件控制。主控器件一般稱主器件。 從控器件:在總線上被主控器件尋址的器件,它們根據(jù)主控器件的命令來接收和發(fā)送數(shù)據(jù)。從控器件一般稱從器件。 在由若干器件所組成的I2C 總線系統(tǒng)中,可能存在多個主器件。因此,I2C 總線系統(tǒng)是一允許多主的系統(tǒng)。 系統(tǒng)中的某一器件來說,有四種可能的工作方式: 主發(fā)送方式、主接收式、從發(fā)送方式和從接收方式。,16,I2C總線實(shí)現(xiàn)的主要功能,返回,在主控器件和從控器件之間雙向傳送數(shù)據(jù); 構(gòu)成無中央主控器件的多主總線; 多主傳送時,不發(fā)生錯誤; 數(shù)據(jù)傳送可以使用不同的位速率; 串行時鐘作為交接信號。,17,主器件用于啟動總線上傳送數(shù)據(jù)并產(chǎn)生時鐘以開放傳送的器件,此時被尋址的器件為從器件。 當(dāng)總線空閑時,SDA和SCL均為高電平。僅在總線空閑時,才能開始數(shù)據(jù)傳輸。 每次數(shù)據(jù)傳送由起始信號啟動,由停止信號終止,I2C總線的數(shù)據(jù)傳輸協(xié)議,返回,總線不忙,開始數(shù)據(jù)傳送,停止數(shù)據(jù)傳送,18,總線上傳送的數(shù)據(jù)以字節(jié)為單位,高位在先。 主器件發(fā)送的第一個字節(jié)為從地址,其中高7位為器件地址的片選信號,最低位是決定數(shù)據(jù)傳送方向的方向位,=1表示主器件讀,=0表示寫。 從器件每收到一個數(shù)據(jù)字節(jié),必須返回1個低電平應(yīng)答信號(Acknowledge),表示為ACK或A=0;,I2C總線的數(shù)據(jù)傳輸協(xié)議,返回,19,主器件在收到從器件發(fā)送的每個字節(jié)之后,也必須產(chǎn)生一個應(yīng)答信號。 在執(zhí)行讀操作、接收最后一個字節(jié)后,主接收器不發(fā)送ACK=0,而是發(fā)一個高電平信號,表示為NO ACK,此時,從發(fā)送器讓出SDA線,使其成為高電平,以使主器件發(fā)送停止條件。 SDA線上會發(fā)生競爭現(xiàn)象,總線競爭可能在地址或數(shù)據(jù)位上進(jìn)行,總線控制完全由競爭的主器件送出的地址和數(shù)據(jù)決定。,I2C總線的數(shù)據(jù)傳輸協(xié)議,返回,20,SPI和I2C總線的比較,21,SPI和I2C總線使用時各有所長。 二線產(chǎn)品用于要求I2C總線、抗噪聲性能、微控制器的I/O口線受限制的場合,或要求一條指令將多個字節(jié)存入寫緩沖器的場合。 三線總線SPI規(guī)程適用于高時鐘頻率要求,或 I6位數(shù)據(jù)寬度的應(yīng)用場合。 二種串行通信總線都采用單電源(22.5V) 供電,都具有低電流、低功耗、價格低廉等特點(diǎn)。,22,I2C總線可十分方便地用來構(gòu)成由單片機(jī)和外圍器件組成的單片機(jī)系統(tǒng),器件間總線簡單,可擴(kuò)展性好。 在集成了I2C總線的單片機(jī)中,可以直接用I2C總線來進(jìn)行系統(tǒng)的串行擴(kuò)展; 對于MCS-51系列單片機(jī),大多數(shù)沒有I2C總線接口功能,可采用軟件模擬雙向數(shù)據(jù)傳送協(xié)議的方法,來實(shí)現(xiàn)系統(tǒng)的串行擴(kuò)展。 基于I2C總線的單片機(jī)應(yīng)用系統(tǒng)中,單主結(jié)構(gòu)占絕大多數(shù),沒有總線競爭與同步問題,只有作為主器件的單片機(jī)對I2C總線器件的讀/寫操作,單片機(jī)的I2C總線接口,23,通常把半導(dǎo)體存儲器分為易失性存儲器和非易失性存儲器 1)EEPROM(Electrically Erasable Programmable ROM)或E2PROM:電可擦除可編程ROM。 2)Flash Memory:Intel和Toshiba公司20世紀(jì)80年代首先推出的可快速擦寫ROM。 3)BBSRAM(Battery Backed SRAM):Dallas Semiconductor公司的電池后備供電的靜態(tài)存儲器,掉電后信息可保存10年。 4)FRAM(Ferroelectric RAM):Ramtron公司研制的鐵電存儲器。(100億1億億次寫),存儲器擴(kuò)展技術(shù),24,1)集成度不斷提高、容量不斷增大。基于亞微米級工藝的DRAM芯片容量已達(dá)到Gbit數(shù)量級。 2)存取速度不斷提高。一般把存取時間小于35ns的存儲器稱為高速存儲器,目前SRAM的存取時間可達(dá)到1ns。 3)低電壓和低功耗。低電壓存儲器采用的工作電壓有33.3V、2.5V、1.51.8V甚至低于1V。 4)存儲器帶有串行總線接口,可大大減少芯片間接線。,存儲器發(fā)展趨勢,25,按照總線連接方式,MCS-51單片機(jī)擴(kuò)展存儲器可分為并行擴(kuò)展和串行擴(kuò)展。 基本方法是:按照單片機(jī)和不同存儲器芯片的時序,來完成硬件連接和軟件編程。 存儲器的基本操作控制包括片選控制和讀寫操作控制。,存儲器擴(kuò)展的基本方法,26,串行接口擴(kuò)展時,通常采用I/O口來選擇相應(yīng)的存儲器,地址信息包含在串行協(xié)議中。 采用并行接口時,片選的方法有 線選法:如果芯片數(shù)較少,只需要用單片機(jī)的高位地址線分別接到各個芯片的片選端即可。這樣不需另加電路,但地址空間可能是不連續(xù)的。 譯碼選通法:在擴(kuò)展芯片數(shù)目較多或要求連續(xù)的地址空間時,采用譯碼器來譯碼產(chǎn)生片選信號。 單片機(jī)并行擴(kuò)展時,高位地址線可能有空閑(P2口高位),但已不適宜簡單地作I/O線使用。,存儲器片選控制,27,擴(kuò)展片外數(shù)據(jù)存儲器的電路,28,擴(kuò)展片外程序存儲器的電路,29,擴(kuò)展片外程序和數(shù)據(jù)存儲器,30,采用串行擴(kuò)展16kB存儲器,利用軟件方真實(shí)現(xiàn)I2C,可掛接8片,FM24C64是采用先進(jìn)的鐵電技術(shù)制造的非易失性 高速寫,高擦寫次數(shù),31,對輸入/輸出口功能的擴(kuò)展,可以利用簡單的TTL電路或MOS電路,也可以使用結(jié)構(gòu)較為復(fù)雜的可編程接口芯片。 TTL電路有54系列軍品級器件、民品74LS系列;MOS中常用CMOS電路,如74HC系列。 典型的可編程接口器件是Intel公司及其兼容的接口芯片:可編程并行接口(8155、8255)、可編程通用同步/異步通信接口(8251)、可編程定時器/計(jì)數(shù)器(8253)、可編程中斷控制器(8259)及可編程鍵盤顯示接口(8279)等。,并行擴(kuò)展I/O接口,32,I/O口與片外RAM統(tǒng)一編址,把擴(kuò)展的I/O口掛接在片外數(shù)據(jù)存儲器空間,因而,I/O口的輸入、輸出指令也就是片外數(shù)據(jù)存儲器的讀/寫指令。 其特點(diǎn)為:數(shù)據(jù)傳輸利用的是P0口,因此擴(kuò)展接口均是8位口,傳輸數(shù)據(jù)簡便,33,利用I/O口線來選擇I/O和存儲器,采用此方法一般是通過MCS-51單片機(jī)P1口的I/O口線來選擇外部I/O或RAM。 雖然CPU的地址、數(shù)據(jù)和讀寫信號對于I/O和RAM是等同的,但通過P1口線狀態(tài)的不同可以把二者區(qū)分開來。,34,串行接口有多種總線和豐富的接口芯片,以PHILIPS公司I2C總線8位遠(yuǎn)程I/O擴(kuò)展器PCF8574為例,說明I2C總線擴(kuò)展I/O接口的方法。,串行擴(kuò)展I/O接口,35,循環(huán)掃描程序 調(diào)開始條件 10.調(diào)開始 2. 設(shè)置8574讀方式 11.設(shè)置8574寫方式 3. 調(diào)主器件發(fā)控制字節(jié) 12. 調(diào)主器件發(fā)控制字節(jié) 4. 調(diào)檢查應(yīng)答位 13. 調(diào)檢查應(yīng)答位 5.有錯,轉(zhuǎn)處理錯 14.有錯,轉(zhuǎn)處理錯 6.調(diào)讀開關(guān)狀態(tài)數(shù)據(jù) 15.取出數(shù)據(jù)低4位 7. 暫存 16.調(diào)主器件發(fā)數(shù)據(jù)字節(jié) 8.讀結(jié)束,主器件發(fā)NOACK17.有錯,轉(zhuǎn)處理錯 9.調(diào)停止條件 18.調(diào)停止條件 19.循環(huán),36,當(dāng)單片機(jī)系統(tǒng)外部中斷源超過2個時,可以利用82C59中斷控制器來擴(kuò)展,或?qū)⑦@些外部中斷源利用OC門進(jìn)行“線或”后,接到單片機(jī)的外部中斷請求輸入端(或),就可完成擴(kuò)展。,外部中斷源的擴(kuò)展,37,例:擴(kuò)展16K *8位片外程序存儲器

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論