新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 同步串行擴(kuò)展總線接口

同步串行擴(kuò)展總線接口

作者: 時間:2012-05-14 來源:網(wǎng)絡(luò) 收藏

[摘要]簡要論述了當(dāng)前單片機(jī)測控領(lǐng)域常見的幾種的基本原理,給出了它們典型的應(yīng)用方式,同時對單片機(jī)測控系統(tǒng)的選擇提出一些建議。

本文引用地址:http://butianyuan.cn/article/149073.htm

[關(guān)鍵詞];單總線;I2C;SPI

1總線簡介

眾所周知,單片機(jī)與外圍設(shè)備的通信方式可分為并行通信和串行通信,相應(yīng)的通信總線被稱為并行總線和串行總線。并行通信速度快,實時性好,但由于占用單片機(jī)的口線多(即使地址和數(shù)據(jù)線可部分復(fù)用),不適合作為小型化產(chǎn)品和分布式、遠(yuǎn)程測控系統(tǒng)的數(shù)據(jù)通信方式。串行通信只需一根和幾根數(shù)據(jù)傳輸線(兼作地址、控制線),不僅大大降低硬件成本,也有利于系統(tǒng)的設(shè)計,所以串行總線廣泛應(yīng)用于單片機(jī)測控中。目前串行總線除了使用通用異步串行(UART,如:RS-232C/449/423/422/485)以外,應(yīng)用越來越多的是串行總線接口,主要有單總線、I2C、SPI、USB、MPS、Microwire/PLUS等。越來越多的外圍器件如A/D、E2PROM、集成智能傳感器等,都配置了同步串行擴(kuò)展總線接口I2C、SPI等,而擯棄了以往的并行總線接口。從20世紀(jì)90年代開始,眾多的單片機(jī)廠商都陸續(xù)推出了

帶有同步串行接口的單片機(jī)(一般保留了異步口UART),如:Philips公司的8XC552和LPC76X系列,帶I2C接口;Motorola公司的M68HC05和M68HC11,ATMEL公司的AT89S8252以及新一代的基于RISC的AVR系列單片機(jī)都集成有SPI接口??梢哉f串行總線是當(dāng)今單片機(jī)測控系統(tǒng)開發(fā)的首選,只有在沒必要或不能使用串行總線的場合才用并行總線。文中將逐一介紹上述幾種同步串行擴(kuò)展總線及其接口方式,以便給大家選擇外圍器件及進(jìn)行系統(tǒng)設(shè)計提供一點借鑒。

2幾種常見的同步串行總線接口的基本原理和使用方法

2.1I2C總線

I2C(Inter-IC)總線是英文INTERICBUS或ICTOICBUS的簡稱,它是由Philips公司推出的一種基于兩線制的同步串行總線,被廣泛應(yīng)用于消費類電子產(chǎn)品、通信產(chǎn)品、儀器儀表及工業(yè)測控系統(tǒng)中。在標(biāo)準(zhǔn)模式下,I2C總線的數(shù)據(jù)傳輸速率可達(dá)100間進(jìn)行雙向傳送。各種器件均并聯(lián)在這條總線上,而且每個器件都有惟一的地址。MCU發(fā)出的控制信號分為地址碼和數(shù)據(jù)碼兩部分:地址碼用來標(biāo)識器件地址,即確定和哪個器件進(jìn)行通信;數(shù)據(jù)碼就是通信的內(nèi)容。這樣,各器件雖然掛在同一條總線上,卻彼此獨立,互不干擾。圖2—1以AT89C51(本身不帶I2C接口,用I/O口模擬)接兩片E2PROMAT24C16為例簡要說明I2C接口的使用方法。

圖2—1中,由A0、A1、A2確定器件的地址,故U1的地址為000,U2的地址為001;R1、R2為上拉電阻;用AT89C51的P1.0、P1.1腳模擬出I2C的SCL和SDA信號,對于有I2C的MCU直接接到對應(yīng)的SCL和SDA腳即可。

2.2SPI總線

SPI(SerialPeripheralInterface串行外設(shè)接口)是由Motorola公司提出的一種基于四線制的同步串行總線,它在速度要求不高、低功耗、需保存少量參數(shù)的智能化儀表及測控系統(tǒng)中得到廣泛應(yīng)用。使用SPI總線接口不僅能簡化電路設(shè)計,還可以提高設(shè)計的可靠性。SPI總線使用4條線:1)SCK(SerialClock),串行時鐘線,主機(jī)啟動發(fā)送并產(chǎn)生SCK,從機(jī)被動接收時鐘;2)MISO(MasterInSlaveOut),主機(jī)輸入從機(jī)輸出;3)MOSI(MasterOutSlaveIn),主機(jī)輸出從機(jī)輸入;4)(SlaveSelect),從機(jī)選擇信號,低電平有效。典型的由SPI總線構(gòu)成的分布式測控系統(tǒng)如圖2—2所示。

圖2—2中,各器件的片選端或使能端由MCU的其它I/O端口來控制。同I2C一樣,SPI總線也可以用軟件來模擬。

2.3單總線(1-WIRE)

單總線是DALLAS公司的一項專利技術(shù),它將地址線、數(shù)據(jù)線、控制線、電源線合為一根信號線,允許在這根信號線上掛數(shù)百個測控對象,這些測控對象使用的芯片每個都有一個64位的ROM,也稱之為身份證號,確保掛在單總線上后,可以被惟一地區(qū)分識別出來。ROM中含有CRC檢驗碼,能確保數(shù)據(jù)交換可靠。芯片內(nèi)還有收、發(fā)控制和電源存儲電路,一般不用另附電源。這些芯片在檢測地點就把模擬信號數(shù)字化,單總線上傳送的是數(shù)字信號,使系統(tǒng)的抗干擾性能好、可靠性高。單總線系統(tǒng)按單總線協(xié)議規(guī)定的時序和信號波形進(jìn)行初始化、識別器件和交換數(shù)據(jù),單片機(jī)I/O口P1、P2、P3中的任一位端口都可以與總線進(jìn)行雙向數(shù)據(jù)傳輸。通過單總線可以方便、便宜地構(gòu)建分布式單片機(jī)測控系統(tǒng)。圖2—3所示的環(huán)境監(jiān)控系統(tǒng),只需要一條雙絞線(一根為信號線,一根為地線)從單片機(jī)拉向監(jiān)控系統(tǒng),然后將各種監(jiān)控對象掛在其上就可以了。

2.4USB總線

USB(UniversalSerialBus)是1995年Microsoft、Compaq、IBM等公司聯(lián)合制定的一種新的串行通信協(xié)議。USB支持熱插拔和即插即用,USB接口可對外提供電源,USB2.0規(guī)范提供高達(dá)480Mbit/s的數(shù)據(jù)傳輸速率,最多支持127個設(shè)備。數(shù)據(jù)傳輸除了支持同步方式外,還可以采用控制、中斷和批量傳輸?shù)确绞?。在單片機(jī)應(yīng)用系統(tǒng)中,常用的USB接口方法有兩種:一種是系統(tǒng)外部擴(kuò)展USB接口器件(如NS公司的USBN9602);另一種是選用內(nèi)部帶USB接口的單片機(jī)(如ATMEL公司的AT43USB351M等)。

2.5MPS總線

MPS是MicroPortSaver(節(jié)省微處理器接口的器件)的縮寫,代表產(chǎn)品是Xicor公司的串行E2PROM存儲器X84XXX系列。MPS接口器件可直接連到處理器總線上,并通過標(biāo)準(zhǔn)總線讀寫時序進(jìn)行數(shù)據(jù)傳輸(可看作同步方式),在微控制器的控制線如、等的配合下,可以最大限度地節(jié)省I/O口,并簡化邏輯編程。圖2—4以AT89C51接兩片E2PROMX84041為例簡要說明MPS接口的使用方法(X84041的片選接74LS138輸出即可,圖中省略)。


上一頁 1 2 下一頁

關(guān)鍵詞: 接口 總線 擴(kuò)展 串行 同步

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉