




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、主控端 - 為啟動(dòng)數(shù)據(jù)傳送 (START 指令)、產(chǎn)生時(shí)鐘 (SCL) 信號(hào)并中止數(shù)據(jù)傳送 (STOP指令) 的器件,主控端必須是傳送端或接收端。從屬端 - 由主控端定址的器件。從屬端可以扮演接收端或發(fā)送端的角色。多重主控端 - 在總線上可同時(shí)存一個(gè)以上的主控端,并且不會(huì)造成沖突或數(shù)據(jù)遺失。通常來(lái)說(shuō)運(yùn)用 "bit-banged" 軟件的主控端并不具有多重主控端能力,I²C 總線控制器提供了一個(gè)將多重主控端硬件 I²C 連接端口加入到 DSP 或 ASIC 的簡(jiǎn)單方法。仲裁機(jī)制 - 預(yù)先定義在特定時(shí)間內(nèi)只有一個(gè)主控端能夠取得總線控制權(quán)。同步 - 預(yù)先將二個(gè)
2、或二個(gè)以上的主控端時(shí)鐘信號(hào)予以同步化的定義程序。SDA - 串行數(shù)據(jù)信號(hào)線 (Serial DAta)SCL - 串行時(shí)鐘信號(hào)線 (Serial CLock) 目標(biāo)器件的 I²C 地址在第一個(gè)位組中送出,而這個(gè)起始位組中最不重要位 (LSB) 則用來(lái)表明主控端將進(jìn)行發(fā)送 (寫(xiě)入) 數(shù)據(jù)或由接收端接收 (讀取) 數(shù)據(jù),稱(chēng)為從屬器件,每筆數(shù)據(jù)交換必須以 START 指令開(kāi)頭,并以 STOP 或 RESTART 情況結(jié)束。如果同一個(gè) I²C 總線上有兩個(gè)主控端,且同時(shí)發(fā)出 START 指令要控制總線時(shí),那么就會(huì)以仲裁機(jī)制處理。當(dāng)主控端,如微控器,已經(jīng)控制總線時(shí),其他的主控端必須等
3、到第一個(gè)主控端送出 STOP 指令,并且將總線回復(fù)閑置狀態(tài)時(shí),才能控制總線。 總線數(shù)據(jù)傳送術(shù)語(yǔ) F (FREE) - 總線為可用或閑置狀態(tài),這時(shí) SDA 串行數(shù)據(jù)線與 SCL 串行時(shí)鐘均為高電位狀態(tài)。S (START) 或 R (RESTART) - 數(shù)據(jù)傳送是以 START 情況開(kāi)始,這時(shí) SDA 串行數(shù)據(jù)線的電壓位準(zhǔn)會(huì)從高電位轉(zhuǎn)變?yōu)榈碗娢?,?SCL 串行時(shí)鐘則保持在高電位,當(dāng)這個(gè)情況發(fā)生時(shí),代表了總線進(jìn)入忙碌 (BUSY) 狀態(tài)。C (CHANGE) - 當(dāng) SCL 串行時(shí)鐘數(shù)據(jù)線為低電位時(shí),數(shù)據(jù)位就可以由發(fā)送端放置到 SDA 串行數(shù)據(jù)在線,在這段時(shí)間內(nèi),只要 SCL 串行時(shí)鐘一直維持在
4、低電位狀態(tài),SDA 可以改變它的狀態(tài)。D (DATA) - SDA 串行數(shù)據(jù)在線高或低電位的數(shù)據(jù)在 SCL 串行時(shí)鐘線處于高位準(zhǔn)時(shí),在整個(gè)傳輸過(guò)程中時(shí)鐘必須穩(wěn)定維持在高電位以避免錯(cuò)誤判讀為 START 或 STOP 情況。P (STOP) - 數(shù)據(jù)傳輸在收到 STOP 指令時(shí)結(jié)束,這時(shí)候 SDA 串行數(shù)據(jù)線的位準(zhǔn)由低電位回復(fù)到高電位,而 SCL 串行時(shí)鐘線則維持在高電位,一但數(shù)據(jù)傳送結(jié)束后,總線會(huì)在自動(dòng)回復(fù)到可用狀態(tài)。 電位轉(zhuǎn)換 I²C 由于新的 I²C 器件以各種不同的電壓運(yùn)作,因此飛利浦半導(dǎo)體開(kāi)發(fā)出一個(gè)解決方案,幾乎不需要任何額外的動(dòng)作或成本就能使不同電源電
5、壓的 I²C 器件擁有完整的雙向數(shù)據(jù)傳輸電路,只要在 I²C 總線的不同電壓位準(zhǔn)間加上兩顆低成本的晶體管,將電位轉(zhuǎn)換器兩端總線上的邏輯電壓位準(zhǔn)加以隔離,這樣的安排同時(shí)也讓這個(gè)電壓轉(zhuǎn)換電路可以用來(lái)隔離總線上已經(jīng)斷電的裝置,使連上電源的 I²C 器件持續(xù)正常運(yùn)作,這些電位轉(zhuǎn)換功能也可以由低成本電位轉(zhuǎn)換總線緩沖器或 GTL 轉(zhuǎn)換器件來(lái)達(dá)成,I²C 總線規(guī)格也拓展到運(yùn)作電壓在 2.7 V 以下的器件,確保 I²C 總線在邁入新世紀(jì)時(shí)仍是新一代系統(tǒng)串行總線的最佳選擇。 高速模式 I²C 總線 高速串行存儲(chǔ)器與混合技術(shù)電信系統(tǒng)的發(fā)展使得總線必須在
6、不同電源電壓下高速運(yùn)作,而 I²C 總線高速 (High speed) 模式 (3.4MHz) 正好可以滿(mǎn)足這些需求,在完全不影響與現(xiàn)有的(Standard) 與快速 (Fast) 模式器件的兼容性,并保留低成本、簡(jiǎn)易的特色,不需任何特殊邏輯電位、時(shí)序或驅(qū)動(dòng)能力。高速模式主控端內(nèi)特別設(shè)計(jì)的橋接器結(jié)構(gòu)可以讓快速與標(biāo)準(zhǔn)模式器件在同一個(gè) I²C 總線系統(tǒng)中雙向通信,在必要時(shí)主控端也可以進(jìn)行雙向電位轉(zhuǎn)換,以支持各種不同電源電壓的器件,這種高速模式通常只出現(xiàn)在需要傳送大量的數(shù)據(jù)的器件上,如 LCD 顯示屏、高位數(shù) ADC 或高容量 EEPROM 等,其他大多數(shù)的維護(hù)與控制應(yīng)用則以 1
7、00kHz 速度運(yùn)作的 I²C 總線為主。 10-bit I²C 定址機(jī)制 10-bit I²C 定址可以使用高達(dá) 1024 個(gè)額外地址,避免因 I²C 器件快速增加所帶來(lái)的從屬地址分配問(wèn)題。它并未改變 I²C 總線規(guī)格中所定義的地址格式,而是使用現(xiàn)有規(guī)格中所保留的地址。10-bit 定址并不會(huì)影響現(xiàn)有的 7-bit 定址功能,采用 7-bit 與 10-bit 定址的器件可以連接到相同的 I²C 總線上,而兩種形式的器件也可以使用在標(biāo)準(zhǔn)、快速或高速模式系統(tǒng)中,雖然多數(shù)的 I²C 器件都還是采用 7-bit 定址,然而設(shè)計(jì)工
8、程師仍可以利用多個(gè) I²C 總線連接端口或多功器/交換器來(lái)達(dá)成總線上較小數(shù)量的器件,作為另一個(gè)解決這個(gè)定址的考量。 I²C 與 SMBus 比較 由 Intel 在 1990 所開(kāi)發(fā)的系統(tǒng)管理總線 (SMBus, System Management Bus),屬于 I²C 總線常見(jiàn)的衍生規(guī)格,通常可與 I²C 兼容,兩個(gè)總線都采用兩線式通信方式,并且都擁有可定址的從屬端,其中 SMBus 的最高數(shù)據(jù)傳輸率只有 100 kbps,因此需要經(jīng)過(guò)特別處理,才能使用在擁有較高傳輸率 I²C 的系統(tǒng)中,其他的差異還包括計(jì)時(shí)與最小時(shí)鐘速率、電壓位準(zhǔn)、提升電
9、阻值與電流位準(zhǔn),新的 I²C 器件已經(jīng)陸續(xù)加入 SMBus 的功能,如可以依特定應(yīng)用需求將計(jì)時(shí) (timeout) 功能加以開(kāi)啟或關(guān)閉 下面是I2C 總線的一些特征 只要求兩條總線線路一條串行數(shù)據(jù)線SDA 一條串行時(shí)鐘線SCL 每個(gè)連接到總線的器件都可以通過(guò)唯一的地址和一直存在的簡(jiǎn)單的主機(jī)從機(jī)關(guān)系軟件設(shè)定地址主機(jī)可以作為主機(jī)發(fā)送器或主機(jī)接收器 它是一個(gè)真正的多主機(jī)總線如果兩個(gè)或更多主機(jī)同時(shí)初始化數(shù)據(jù)傳輸可以通過(guò)沖突檢測(cè)和仲裁防止數(shù)據(jù)被破壞 串行的8 位雙向數(shù)據(jù)傳輸位速率在標(biāo)準(zhǔn)模式下可達(dá)100kbit/s 快速模式下可達(dá)400kbit/s 高速模式下可達(dá)3.4Mbit/s 片上的濾波器
10、可以濾去總線數(shù)據(jù)線上的毛刺波保證數(shù)據(jù)完整SPI總線:一種串行傳輸方式,三線制,網(wǎng)上可找到其通信協(xié)議和用法的 3根線實(shí)現(xiàn)數(shù)據(jù)雙向傳輸 串行外圍接口 Serial peripheral interfaceSPI協(xié)議簡(jiǎn)介一 SPI協(xié)議概括SPI,是英語(yǔ)Serial Peripheral interface的縮寫(xiě),顧名思義就是串行外圍設(shè)備接口。是Motorola首先在其MC68HCXX系列處理器上定義的。SPI接口主要應(yīng)用在 EEPROM,F(xiàn)LASH,實(shí)時(shí)時(shí)鐘,AD轉(zhuǎn)換器,還有數(shù)字信號(hào)處理器和數(shù)字信號(hào)解碼器之間。SPI,是一種高速的,全雙工,同步的通信總線,并且在芯片的管腳上只占用四根線,節(jié)約了芯片的
11、管腳,同時(shí)為PCB的布局上節(jié)省空間,提供方便,正是出于這種簡(jiǎn)單易用的特性,現(xiàn)在越來(lái)越多的芯片集成了這種通信協(xié)議,比如AT91RM9200.SPI的通信原理很簡(jiǎn)單,它以主從方式工作,這種模式通常有一個(gè)主設(shè)備和一個(gè)或多個(gè)從設(shè)備,需要至少4根線,事實(shí)上3根也可以(單向傳輸時(shí))。也是所有基于SPI的設(shè)備共有的,它們是SDI(數(shù)據(jù)輸入),SDO(數(shù)據(jù)輸出),SCK(時(shí)鐘),CS(片選)。(1)SDO 主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入(2)SDI 主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出(3)SCLK
12、; 時(shí)鐘信號(hào),由主設(shè)備產(chǎn)生(4)CS 從設(shè)備使能信號(hào),由主設(shè)備控制其中CS是控制芯片是否被選中的,也就是說(shuō)只有片選信號(hào)為預(yù)先規(guī)定的使能信號(hào)時(shí)(高電位或低電位),對(duì)此芯片的操作才有效。這就允許在同一總線上連接多個(gè)SPI設(shè)備成為可能。接下來(lái)就負(fù)責(zé)通訊的3根線了。通訊是通過(guò)數(shù)據(jù)交換完成的,這里先要知道SPI是串行通訊協(xié)議,也就是說(shuō)數(shù)據(jù)是一位一位的傳輸?shù)?。這就是SCK時(shí)鐘線存在的原因,由SCK提供時(shí)鐘脈沖,SDI,SDO則基于此脈沖完成數(shù)據(jù)傳輸。數(shù)據(jù)輸出通過(guò) SDO線,數(shù)據(jù)在時(shí)鐘上升沿或下降沿時(shí)改變,在緊接
13、著的下降沿或上升沿被讀取。完成一位數(shù)據(jù)傳輸,輸入也使用同樣原理。這樣,在至少8次時(shí)鐘信號(hào)的改變(上沿和下沿為一次),就可以完成8位數(shù)據(jù)的傳輸。 要注意的是,SCK信號(hào)線只由主設(shè)備控制,從設(shè)備不能控制信號(hào)線。同樣,在一個(gè)基于SPI的設(shè)備中,至少有一個(gè)主控設(shè)備。這樣傳輸?shù)奶攸c(diǎn):這樣的傳輸方式有一個(gè)優(yōu)點(diǎn),與普通的串行通訊不同,普通的串行通訊一次連續(xù)傳送至少8位數(shù)據(jù),而SPI允許數(shù)據(jù)一位一位的傳送,甚至允許暫停,因?yàn)镾CK時(shí)鐘線由主控設(shè)備控制,當(dāng)沒(méi)有時(shí)鐘跳變時(shí),從設(shè)備不采集或傳送數(shù)據(jù)。也就是說(shuō),主設(shè)備通過(guò)對(duì)SCK時(shí)鐘線的控制可以完成對(duì)通訊的控制。SPI還是一個(gè)數(shù)據(jù)交換協(xié)議:因?yàn)镾PI的數(shù)據(jù)輸入和輸出線
14、獨(dú)立,所以允許同時(shí)完成數(shù)據(jù)的輸入和輸出。不同的SPI設(shè)備的實(shí)現(xiàn)方式不盡相同,主要是數(shù)據(jù)改變和采集的時(shí)間不同,在時(shí)鐘信號(hào)上沿或下沿采集有不同定義,具體請(qǐng)參考相關(guān)器件的文檔。在點(diǎn)對(duì)點(diǎn)的通信中,SPI接口不需要進(jìn)行尋址操作,且為全雙工通信,顯得簡(jiǎn)單高效。在多個(gè)從設(shè)備的系統(tǒng)中,每個(gè)從設(shè)備需要獨(dú)立的使能信號(hào),硬件上比I2C系統(tǒng)要稍微復(fù)雜一些。最后,SPI接口的一個(gè)缺點(diǎn):沒(méi)有指定的流控制,沒(méi)有應(yīng)答機(jī)制確認(rèn)是否接收到數(shù)據(jù)。AT91RM9200的SPI接口主要由4個(gè)引腳構(gòu)成:SPICLK、MOSI、MISO及 /SS,其中SPICLK是整個(gè)SPI總線的公用時(shí)鐘,MOSI、MISO作為主機(jī),從機(jī)的輸入輸出的標(biāo)志
15、,MOSI是主機(jī)的輸出,從機(jī)的輸入,MISO 是主機(jī)的輸入,從機(jī)的輸出。/SS是從機(jī)的標(biāo)志管腳,在互相通信的兩個(gè)SPI總線的器件,/SS管腳的電平低的是從機(jī),相反/SS管腳的電平高的是主機(jī)。在一個(gè)SPI通信系統(tǒng)中,必須有主機(jī)。SPI總線可以配置成單主單從,單主多從,互為主從。SPI的片選可以擴(kuò)充選擇16個(gè)外設(shè),這時(shí)PCS輸出=NPCS,說(shuō)NPCS03接4-16譯碼器,這個(gè)譯碼器是需要外接4-16譯碼器,譯碼器的輸入為NPCS03,輸出用于16個(gè)外設(shè)的選擇。二 SPI協(xié)議舉例SPI是一個(gè)環(huán)形總線結(jié)構(gòu),由ss(cs)、sck、sdi、sdo構(gòu)成,其時(shí)序其實(shí)很簡(jiǎn)單,主要是在sck的控制下,兩個(gè)雙向移
16、位寄存器進(jìn)行數(shù)據(jù)交換。 假設(shè)下面的8位寄存器裝的是待發(fā)送的數(shù)據(jù)10101010,上升沿發(fā)送、下降沿接收、高位先發(fā)送。 那么第一個(gè)上升沿來(lái)的時(shí)候 數(shù)據(jù)將會(huì)是sdo=1;寄存器=0101010x。下降沿到來(lái)的時(shí)候,sdi上的電平將所存到寄存器中去,那么這時(shí)寄存器=0101010sdi,這樣在 8個(gè)時(shí)鐘脈沖以后,兩個(gè)寄存器的內(nèi)容互相交換一次。這樣就完成里一個(gè)spi時(shí)序。舉例: 假設(shè)主機(jī)和從
17、機(jī)初始化就緒:并且主機(jī)的sbuff=0xaa,從機(jī)的sbuff=0x55,下面將分步對(duì)spi的8個(gè)時(shí)鐘周期的數(shù)據(jù)情況演示一遍:假設(shè)上升沿發(fā)送數(shù)據(jù) 這樣就完成了兩個(gè)寄存器8位的交換,上面的上表示上升沿、下表示下降沿,sdi、sdo相對(duì)于主機(jī)而言的。其中ss引腳作為主機(jī)的時(shí)候,從機(jī)可以把它拉底被動(dòng)選為從機(jī),作為從機(jī)的是時(shí)候,可以作為片選腳用。根據(jù)以上分析,一個(gè)完整的傳送周期是16位,即兩個(gè)字節(jié),因?yàn)?,首先主機(jī)要發(fā)送命令過(guò)去,然后從機(jī)根據(jù)主機(jī)的命令準(zhǔn)備數(shù)據(jù),主機(jī)在下一個(gè)8位時(shí)鐘周期才把數(shù)據(jù)讀回來(lái)。 SPI 總線是Motorola公司推出的三
18、線同步接口,同步串行3線方式進(jìn)行通信:一條時(shí)鐘線SCK,一條數(shù)據(jù)輸入線MOSI,一條數(shù)據(jù)輸出線MISO;用于CPU與各種外圍器件進(jìn)行全雙工、同步串行通訊。SPI主要特點(diǎn)有:可以同時(shí)發(fā)出和接收串行數(shù)據(jù);可以當(dāng)作主機(jī)或從機(jī)工作;提供頻率可編程時(shí)鐘;發(fā)送結(jié)束 中斷標(biāo)志;寫(xiě)沖突保護(hù);總線競(jìng)爭(zhēng)保護(hù)等。下圖示出SPI總線工作的四種方式,其中使用的最為廣泛的是SPI0和SPI3方式 (實(shí)線表示):
19、;
20、;
21、;
22、; SPI總線四種工作方式 SPI 模塊為了和外設(shè)進(jìn)行數(shù)據(jù)交換,根據(jù)外設(shè)工作要求,其輸出串行同步時(shí)鐘極性和相位可以進(jìn)行配置,時(shí)鐘極性(CPOL)對(duì)傳輸協(xié)議沒(méi)有重大的影響。如果 CPOL=0,串行同步時(shí)鐘的空閑狀態(tài)為低電平;如果CPOL=1,串行同步時(shí)鐘的空閑狀態(tài)為高電平。時(shí)鐘相位(CPH
23、A)能夠配置用于選擇兩種不同的傳輸協(xié)議之一進(jìn)行數(shù)據(jù)傳輸。如果CPHA=0,在串行同步時(shí)鐘的第一個(gè)跳變沿(上升或下降)數(shù)據(jù)被采樣;如果CPHA=1,在串行同步時(shí)鐘的第二個(gè)跳變沿(上升或下降)數(shù)據(jù)被采樣。SPI主模塊和與之通信的外設(shè)備時(shí)鐘相位和極性應(yīng)該一致。SPI總線包括1根串行同步時(shí)鐘信號(hào)線以及2根數(shù)據(jù)線。 SPI模塊為了和外設(shè)進(jìn)行數(shù)據(jù)交換,根據(jù)外設(shè)工作要求,其輸出串行同步時(shí)鐘極性和相位可以進(jìn)行配置,時(shí)鐘極性(CPOL)對(duì)傳輸協(xié)議沒(méi)有重大的影響。如果CPOL=0,串行同步時(shí)鐘的空閑狀態(tài)為低電平;如果CPOL=1,串行同步時(shí)鐘
24、的空閑狀態(tài)為高電平。時(shí)鐘相位(CPHA)能夠配置用于選擇兩種不同的傳輸協(xié)議之一進(jìn)行數(shù)據(jù)傳輸。如果CPHA=0,在串行同步時(shí)鐘的第一個(gè)跳變沿(上升或下降)數(shù)據(jù)被采樣;如果CPHA=1,在串行同步時(shí)鐘的第二個(gè)跳變沿(上升或下降)數(shù)據(jù)被采樣。SPI主模塊和與之通信的外設(shè)音時(shí)鐘相位和極性應(yīng)該一致。SPI接口時(shí)序如圖3、圖4所示。補(bǔ)充: 上文中最后一句話:SPI主模塊和與之通信的外設(shè)備時(shí)鐘相位和極性應(yīng)該一致。個(gè)人理解這句話有2層意思:其一,主設(shè)備SPI時(shí)鐘和極性的配置應(yīng)該由外設(shè)來(lái)決定;其二,二者的配置應(yīng)該保持一致,即主設(shè)備的SDO同從設(shè)備的SDO配置一致,主設(shè)備的SDI同從設(shè)備的SDI配置一致。因?yàn)橹鲝?/p>
25、設(shè)備是在SCLK的控制下,同時(shí)發(fā)送和接收數(shù)據(jù),并通過(guò)2個(gè)雙向移位寄存器來(lái)交換數(shù)據(jù)。工作原理演示如下圖:上升沿主機(jī)SDO發(fā)送數(shù)據(jù)1,同時(shí)從設(shè)備SDO發(fā)送數(shù)據(jù)0;緊接著在SCLK的下降沿的時(shí)候從設(shè)備的SDI接收到了主機(jī)發(fā)送過(guò)來(lái)的數(shù)據(jù)1,同時(shí)主機(jī)也接收到了從設(shè)備發(fā)送過(guò)來(lái)的數(shù)據(jù)0.三 SPI協(xié)議心得SPI接口時(shí)鐘配置心得:在主設(shè)備這邊配置SPI接口時(shí)鐘的時(shí)候一定要弄清楚從設(shè)備的時(shí)鐘要求,因?yàn)橹髟O(shè)備這邊的時(shí)鐘極性和相位都是以從設(shè)備為基準(zhǔn)的。因此在時(shí)鐘極性的配置上一定要搞清楚從設(shè)備是在時(shí)鐘的上升沿還是下降沿接收數(shù)據(jù),是在時(shí)鐘的下降沿還是上升沿輸出數(shù)據(jù)。但要注意的是,由于主設(shè)備的SDO連接從設(shè)備的SDI,從
26、設(shè)備的SDO連接主設(shè)備的SDI,從設(shè)備SDI接收的數(shù)據(jù)是主設(shè)備的SDO發(fā)送過(guò)來(lái)的,主設(shè)備SDI接收的數(shù)據(jù)是從設(shè)備SDO發(fā)送過(guò)來(lái)的,所以主設(shè)備這邊SPI時(shí)鐘極性的配置(即SDO的配置)跟從設(shè)備的SDI接收數(shù)據(jù)的極性是相反的,跟從設(shè)備SDO發(fā)送數(shù)據(jù)的極性是相同的。下面這段話是Sychip Wlan8100 Module Spec上說(shuō)的,充分說(shuō)明了時(shí)鐘極性是如何配置的:The 81xx module will always input data bits at the rising edge of the clock, and the host will always output data bit
27、s on the falling edge of the clock.意思是:主設(shè)備在時(shí)鐘的下降沿發(fā)送數(shù)據(jù),從設(shè)備在時(shí)鐘的上升沿接收數(shù)據(jù)。因此主設(shè)備這邊SPI時(shí)鐘極性應(yīng)該配置為下降沿有效。又如,下面這段話是摘自LCD Driver IC SSD1289:SDI is shifted into 8-bit shift register on every rising edge of SCK in the order of data bit 7, data bit 6 data bit 0.意思是:從設(shè)備SSD1289在時(shí)鐘的上升沿接收數(shù)據(jù),而且是按照從高位到地位的順序接收數(shù)據(jù)的。因此主設(shè)備的SP
28、I時(shí)鐘極性同樣應(yīng)該配置為下降沿有效。時(shí)鐘極性和相位配置正確后,數(shù)據(jù)才能夠被準(zhǔn)確的發(fā)送和接收。因此應(yīng)該對(duì)照從設(shè)備的SPI接口時(shí)序或者Spec文檔說(shuō)明來(lái)正確配置主設(shè)備的時(shí)鐘。芯片設(shè)計(jì)中流行的3種嵌入式低速串行總線為I2C,SPI,CAN總線.都是為在為數(shù)字設(shè)備之間傳輸數(shù)據(jù),以實(shí)現(xiàn)最少的引腳,最優(yōu)的速度,低成本,達(dá)到經(jīng)濟(jì)高效作用而開(kāi)發(fā)的. I2C總線是philip在80年代開(kāi)發(fā)的,成為了IC間的串行通信標(biāo)準(zhǔn),采用簡(jiǎn)單的2線設(shè)計(jì),可以用于各種芯片中,如I/O,A/D,D/A,傳感器和MCU等.任何I2C設(shè)備都可以連接到I2C總線上,允許任何MASTER和
29、SLAVER設(shè)備交換信息. SPI總線是主要用于處理器和外設(shè)同步串行通信的4線接口.SPI采用同步時(shí)鐘,同步時(shí)鐘把串行數(shù)據(jù)以8bit的整數(shù)倍移入和移出處理器.SPI是主從接口,CLOCK由MASTER產(chǎn)生,在使用SPI時(shí),會(huì)同時(shí)發(fā)送和接收數(shù)據(jù),使其成為一種全雙工協(xié)議. CAN(控制器區(qū)域總線)總線是博世公司在80年代開(kāi)發(fā)的一種分層串行傳輸協(xié)議,在電氣噪聲的環(huán)境中控制電子設(shè)備以及通訊,92年在奔馳汽車(chē)上采用了該總線,現(xiàn)在也廣泛應(yīng)用在汽車(chē)控制網(wǎng)絡(luò)中.速度高達(dá)1Mbps40M.
30、160; 這個(gè)板塊主要是設(shè)計(jì)SPI接口,所以對(duì)以上的串行總線只是簡(jiǎn)單概括,在后續(xù)的章節(jié)中給與詳細(xì)比較.SPI總線簡(jiǎn)介 0推薦同步外設(shè)接口(SPI)是由摩托羅拉公司開(kāi)發(fā)的全雙工同步串行總線,該總線大量用在與EEPROM、ADC、FRAM和顯示驅(qū)動(dòng)器之類(lèi)的慢速外設(shè)器件通信。 SPI(Serial Peripheral Interface)是一種串行同步通訊協(xié)議,由一個(gè)主設(shè)備和一個(gè)或多個(gè)從設(shè)備組成,主設(shè)備啟動(dòng)一個(gè)與從設(shè)備的同步通訊,從而完成數(shù)據(jù)的交換。SPI 接口由SDI(串行數(shù)據(jù)輸入),SDO(串行數(shù)據(jù)輸出),SCK(串行移位時(shí)鐘),CS(從使能信號(hào))四種信號(hào)構(gòu)成,CS 決定了唯一的與主設(shè)備通信的
31、從設(shè)備,如沒(méi)有CS 信號(hào),則只能存在一個(gè)從設(shè)備,主設(shè)備通過(guò)產(chǎn)生移位時(shí)鐘來(lái)發(fā)起通訊。通訊時(shí),數(shù)據(jù)由SDO 輸出,SDI 輸入,數(shù)據(jù)在時(shí)鐘的上升或下降沿由SDO 輸出,在緊接著的下降或上升沿由SDI 讀入,這樣經(jīng)過(guò)8/16 次時(shí)鐘的改變,完成8/16 位數(shù)據(jù)的傳輸。SPI通信該總線通信基于主-從配置。它有以下4個(gè)信號(hào):MOSI:主出/從入MISO:主入/從出SCK:串行時(shí)鐘SS:從屬選擇芯片上“從屬選擇”(slave-select)的引腳數(shù)決定了可連到總線上的器件數(shù)量。 在SPI傳輸中,數(shù)據(jù)是同步進(jìn)行發(fā)送和接收的。
32、數(shù)據(jù)傳輸?shù)臅r(shí)鐘基于來(lái)自主處理器的時(shí)鐘脈沖,摩托羅拉沒(méi)有定義任何通用SPI的時(shí)鐘規(guī)范。然而,最常用的時(shí)鐘設(shè)置基于時(shí)鐘極性(CPOL)和時(shí)鐘相位(CPHA)兩個(gè)參數(shù),CPOL定義SPI串行時(shí)鐘的活動(dòng)狀態(tài),而CPHA定義相對(duì)于SO-數(shù)據(jù)位的時(shí)鐘相位。CPOL和CPHA的設(shè)置決定了數(shù)據(jù)取樣的時(shí)鐘沿。數(shù)據(jù)方向和通信速度 SPI傳輸串行數(shù)據(jù)時(shí)首先傳輸最高位。波特率可以高達(dá)5Mbps,具體速度大小取決于SPI硬件。例如,Xicor公司的SPI串行器件傳輸速度能達(dá)到5MHz。SPI總線接口及時(shí)序SPI總線包括1根串行同步時(shí)鐘信
33、號(hào)線以及2根數(shù)據(jù)線。SPI模塊為了和外設(shè)進(jìn)行數(shù)據(jù)交換,根據(jù)外設(shè)工作要求,其輸出串行同步時(shí)鐘極性和相位可以進(jìn)行配置,時(shí)鐘極性(CPOL)對(duì)傳輸協(xié)議沒(méi)有重大的影響。如果CPOL=0,串行同步時(shí)鐘的空閑狀態(tài)為低電平;如果CPOL=1,串行同步時(shí)鐘的空閑狀態(tài)為高電平。時(shí)鐘相位(CPHA)能夠配置用于選擇兩種不同的傳輸協(xié)議之一進(jìn)行數(shù)據(jù)傳輸。如果CPHA=0,在串行同步時(shí)鐘的第一個(gè)跳變沿(上升或下降)數(shù)據(jù)被采樣;如果CPHA=1,在串行同步時(shí)鐘的第二個(gè)跳變沿(上升或下降)數(shù)據(jù)被采樣。SPI主模塊和與之通信的外設(shè)音時(shí)鐘相位和極性應(yīng)該一致。SPI接口時(shí)序如圖3、圖4所示。 SPI是一個(gè)環(huán)形總線結(jié)構(gòu),
34、由ss(cs)、sck、sdi、sdo構(gòu)成,其時(shí)序其實(shí)很簡(jiǎn)單,主要是在sck的控制下,兩個(gè)雙向移位寄存器進(jìn)行數(shù)據(jù)交換。 假設(shè)下面的8位寄存器裝的是待發(fā)送的數(shù)據(jù)10101010,上升沿發(fā)送、下降沿接收、高位先發(fā)送。 那么第一個(gè)上升沿來(lái)的時(shí)候數(shù)據(jù)將會(huì)是sdo=1;寄存器=0101010x。下降沿到來(lái)的時(shí)候,sdi上的電平將所存到寄存器中去,那么這時(shí)寄存器=0101010sdi,這樣在8個(gè)時(shí)鐘脈沖以后,兩個(gè)寄存器的內(nèi)容互相交換一次。這樣就完成里一個(gè)spi時(shí)序。&
35、#160; 例子: 假設(shè)主機(jī)和從機(jī)初始化就緒:并且主機(jī)的sbuff=0xaa,從機(jī)的sbuff=0x55,下面將分步對(duì)spi的8個(gè)時(shí)鐘周期的數(shù)據(jù)情況演示一遍:假設(shè)上升沿發(fā)送數(shù)據(jù) 脈沖主機(jī)sbuff從機(jī)sbuffsdisdo01010101001010101001上0101010x1010101x011下0101010010101011012上1010100x0101011x102下1010100101010110103上0101001x1010110x013
36、下0101001010101101014上1010010x0101101x104下1010010101011010105上0100101x1011010x015下0100101010110101016上1001010x0110101x106下1001010101101010107上0010101x1101010x017下0010101011010101018上0101010x1010101x108下010101011010101010這樣就完成了兩個(gè)寄存器8位的交換,上面的上表示上升沿、下表示下降沿,sdi、sdo相對(duì)于主機(jī)而言的。其中ss引腳作為主機(jī)的時(shí)候,從機(jī)可以把它拉底被動(dòng)選為從機(jī),作為
37、從機(jī)的是時(shí)候,可以作為片選腳用。根據(jù)以上分析,一個(gè)完整的傳送周期是16位,即兩個(gè)字節(jié),因?yàn)?,首先主機(jī)要發(fā)送命令過(guò)去,然后從機(jī)根據(jù)主機(jī)的名準(zhǔn)備數(shù)據(jù),主機(jī)在下一個(gè)8位時(shí)鐘周期才把數(shù)據(jù)讀回來(lái) SPI 總線是Motorola公司推出的三線同步接口,同步串行3線方式進(jìn)行通信:一條時(shí)鐘線SCK,一條數(shù)據(jù)輸入線MOSI,一條數(shù)據(jù)輸出線MISO;用于CPU與各種外圍器件進(jìn)行全雙工、同步串行通訊。SPI主要特點(diǎn)有:可以同時(shí)發(fā)出和接收串行數(shù)據(jù);可以當(dāng)作主機(jī)或從機(jī)工作;提供頻率可編程時(shí)鐘;發(fā)送結(jié)束中斷標(biāo)志;寫(xiě)沖突保護(hù);總線競(jìng)爭(zhēng)保護(hù)等。圖3示出SPI總線工作的四種方式,其中使用的最為廣泛的是SPI0和SPI
38、3方式(實(shí)線表示):圖2 SPI總線四種工作方式SPI模塊為了和外設(shè)進(jìn)行數(shù)據(jù)交換,根據(jù)外設(shè)工作要求,其輸出串行同步時(shí)鐘極性和相位可以進(jìn)行配置,時(shí)鐘極性(CPOL)對(duì)傳輸協(xié)議沒(méi)有重大的影響。如果CPOL=0,串行同步時(shí)鐘的空閑狀態(tài)為低電平;如果CPOL=1,串行同步時(shí)鐘的空閑狀態(tài)為高電平。時(shí)鐘相位(CPHA)能夠配置用于選擇兩種不同的傳輸協(xié)議之一進(jìn)行數(shù)據(jù)傳輸。如果CPHA=0,在串行同步時(shí)鐘的第一個(gè)跳變沿(上升或下降)數(shù)據(jù)被采樣;如果CPHA=1,在串行同步時(shí)鐘的第二個(gè)跳變沿(上升或下降)數(shù)據(jù)被采樣。SPI主模塊和與之通信的外設(shè)音時(shí)鐘相位和極性應(yīng)該一致。SPI接口時(shí)序如圖
39、3、圖4所示。二,.SPI功能模塊的設(shè)計(jì)根據(jù)功能定義及SPI的工作原理,將整個(gè)IP Core分為8個(gè)子模塊:uC接口模塊、時(shí)鐘分頻模塊、發(fā)送數(shù)據(jù)FIFO模塊、接收數(shù)據(jù)FIFO模塊、狀態(tài)機(jī)模塊、發(fā)送數(shù)據(jù)邏輯模塊、接收數(shù)據(jù)邏輯模塊以及中斷形式模塊。深入分析SPI的四種傳輸協(xié)議可以發(fā)現(xiàn),根據(jù)一種協(xié)議,只要對(duì)串行同步時(shí)鐘進(jìn)行轉(zhuǎn)換,就能得到其余的三種協(xié)議。為了簡(jiǎn)化設(shè)計(jì)規(guī)定,如果要連續(xù)傳輸多個(gè)數(shù)據(jù),在兩個(gè)數(shù)據(jù)傳輸之間插入一個(gè)串行時(shí)鐘的空閑等待,這樣狀態(tài)機(jī)只需兩種狀態(tài)(空閑和工作)就能正確工作。#1 樓主:CAN總線簡(jiǎn)介 貼子發(fā)表于:2007-9-12 19:54:411. C
40、AN總線的產(chǎn)生與發(fā)展 控制器局部網(wǎng)(CANCONTROLLER AREA NETWORK)是BOSCH公司為現(xiàn)代汽車(chē)應(yīng)用領(lǐng)先推出的一種多主機(jī)局部網(wǎng),由于其卓越性能現(xiàn)已廣泛應(yīng)用于工業(yè)自動(dòng)化、多種控制設(shè)備、交通工具、醫(yī)療儀器以及建筑、環(huán)境控制等眾多部門(mén)。控制器局部網(wǎng)將在我國(guó)迅速普及推廣。 隨著計(jì)算機(jī)硬件、軟件技術(shù)及集成電路技術(shù)的迅速發(fā)展,工業(yè)控制系統(tǒng)已成為計(jì)算機(jī)技術(shù)應(yīng)用領(lǐng)域中最具活力的一個(gè)分支,并取得了巨大進(jìn)步。由于對(duì)系統(tǒng)可靠性和靈活性的高要求,工業(yè)控制系統(tǒng)的發(fā)展主要表現(xiàn)為:控制面向多元化,系統(tǒng)面向分散化,即負(fù)載分散、功能分散、危險(xiǎn)分散和地域分散。 分散式工業(yè)控制系統(tǒng)就是為適應(yīng)這種需要而
41、發(fā)展起來(lái)的。這類(lèi)系統(tǒng)是以微型機(jī)為核心,將 5C技術(shù)-COMPUTER(計(jì)算機(jī)技術(shù))、CONTROL (自動(dòng)控制技術(shù))、COMMUNICATION(通信技術(shù))、CRT(顯示技術(shù))和 CHANGE(轉(zhuǎn)換技術(shù))緊密結(jié)合的產(chǎn)物。它在適應(yīng)范圍、可擴(kuò)展性、可維護(hù)性以及抗故障能力等方面,較之分散型儀表控制系統(tǒng)和集中型計(jì)算機(jī)控制系統(tǒng)都具有明顯的優(yōu)越性。 典型的分散式控制系統(tǒng)由現(xiàn)場(chǎng)設(shè)備、接口與計(jì)算設(shè)備以及通信設(shè)備組成?,F(xiàn)場(chǎng)總線(FIELDBUS)能同時(shí)滿(mǎn)足過(guò)程控制和制造業(yè)自動(dòng)化的需要,因而現(xiàn)場(chǎng)總線已成為工業(yè)數(shù)據(jù)總線領(lǐng)域中最為活躍的一個(gè)領(lǐng)域?,F(xiàn)場(chǎng)總線的研究與應(yīng)用已成為工業(yè)數(shù)據(jù)總線領(lǐng)域的熱點(diǎn)。盡管目前對(duì)現(xiàn)場(chǎng)總線的研
42、究尚未能提出一個(gè)完善的標(biāo)準(zhǔn),但現(xiàn)場(chǎng)總線的高性能價(jià)格比將吸引眾多工業(yè)控制系統(tǒng)采用。同時(shí),正由于現(xiàn)場(chǎng)總線的標(biāo)準(zhǔn)尚未統(tǒng)一,也使得現(xiàn)場(chǎng)總線的應(yīng)用得以不拘一格地發(fā)揮,并將為現(xiàn)場(chǎng)總線的完善提供更加豐富的依據(jù)。控制器局部網(wǎng) CAN(CONTROLLER AERANETWORK)正是在這種背景下應(yīng)運(yùn)而生的。 由于CAN為愈來(lái)愈多不同領(lǐng)域采用和推廣,導(dǎo)致要求各種應(yīng)用領(lǐng)域通信報(bào)文的標(biāo)準(zhǔn)化。為此,1991年 9月 PHILIPS SEMICONDUCTORS制訂并發(fā)布了 CAN技術(shù)規(guī)范(VERSION 2.0)。該技術(shù)規(guī)范包括A和B兩部分。2.0A給出了曾在CAN技術(shù)規(guī)范版本1.2中定義的CAN報(bào)文格式,而2.0B
43、給出了標(biāo)準(zhǔn)的和擴(kuò)展的兩種報(bào)文格式。此后,1993年11月ISO正式頒布了道路交通運(yùn)載工具-數(shù)字信息交換-高速通信控制器局部網(wǎng)(CAN)國(guó)際標(biāo)準(zhǔn)(ISO11898),為控制器局部網(wǎng)標(biāo)準(zhǔn)化、規(guī)范化推廣鋪平了道路。 2. CAN總線特點(diǎn) CAN總線是德國(guó)BOSCH公司從80年代初為解決現(xiàn)代汽車(chē)中眾多的控制與測(cè)試儀器之間的數(shù)據(jù)交換而開(kāi)發(fā)的一種串行數(shù)據(jù)通信協(xié)議,它是一種多主總線,通信介質(zhì)可以是雙絞線、同軸電纜或光導(dǎo)纖維。通信速率可達(dá)1MBPS。CAN總線通信接口中集成了CAN協(xié)議的物理層和數(shù)據(jù)鏈路層功能,可完成對(duì)通信數(shù)據(jù)的成幀處理,包括位填充、數(shù)據(jù)塊編碼、循環(huán)冗余檢驗(yàn)、優(yōu)先級(jí)判別等項(xiàng)工作。 CAN協(xié)議的
44、一個(gè)最大特點(diǎn)是廢除了傳統(tǒng)的站地址編碼,而代之以對(duì)通信數(shù)據(jù)塊進(jìn)行編碼。采用這種方法的優(yōu)點(diǎn)可使網(wǎng)絡(luò)內(nèi)的節(jié)點(diǎn)個(gè)數(shù)在理論上不受限制,數(shù)據(jù)塊的標(biāo)識(shí)碼可由11位或29位二進(jìn)制數(shù)組成,因此可以定義211或229個(gè)不同的數(shù)據(jù)塊,這種按數(shù)據(jù)塊編碼的方式,還可使不同的節(jié)點(diǎn)同時(shí)接收到相同的數(shù)據(jù),這一點(diǎn)在分布式控制系統(tǒng)中非常有用。數(shù)據(jù)段長(zhǎng)度最多為8個(gè)字節(jié),可滿(mǎn)足通常工業(yè)領(lǐng)域中控制命令、工作狀態(tài)及測(cè)試數(shù)據(jù)的一般要求。同時(shí),8個(gè)字節(jié)不會(huì)占用總線時(shí)間過(guò)長(zhǎng),從而保證了通信的實(shí)時(shí)性。CAN協(xié)議采用CRC檢驗(yàn)并可提供相應(yīng)的錯(cuò)誤處理功能,保證了數(shù)據(jù)通信的可靠性。CAN卓越的特性、極高的可靠性和獨(dú)特的設(shè)計(jì),特別適合工業(yè)過(guò)程監(jiān)控設(shè)備的
45、互連,因此,越來(lái)越受到工業(yè)界的重視,并已公認(rèn)為最有前途的現(xiàn)場(chǎng)總線之一。 另外,CAN總線采用了多主競(jìng)爭(zhēng)式總線結(jié)構(gòu),具有多主站運(yùn)行和分散仲裁的串行總線以及廣播通信的特點(diǎn)。CAN總線上任意節(jié)點(diǎn)可在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上其它節(jié)點(diǎn)發(fā)送信息而不分主次,因此可在各節(jié)點(diǎn)之間實(shí)現(xiàn)自由通信。CAN總線協(xié)議已被國(guó)際標(biāo)準(zhǔn)化組織認(rèn)證,技術(shù)比較成熟,控制的芯片已經(jīng)商品化,性?xún)r(jià)比高,特別適用于分布式測(cè)控系統(tǒng)之間的數(shù)通訊。CAN總線插卡可以任意插在PC AT XT兼容機(jī)上,方便地構(gòu)成分布式監(jiān)控系統(tǒng)。 3. CAN總線技術(shù)介紹 3.1位仲裁 要對(duì)數(shù)據(jù)進(jìn)行實(shí)時(shí)處理,就必須將數(shù)據(jù)快速傳送,這就要求數(shù)據(jù)的物理傳輸通路有較高的速度。
46、在幾個(gè)站同時(shí)需要發(fā)送數(shù)據(jù)時(shí),要求快速地進(jìn)行總線分配。實(shí)時(shí)處理通過(guò)網(wǎng)絡(luò)交換的緊急數(shù)據(jù)有較大的不同。一個(gè)快速變化的物理量,如汽車(chē)引擎負(fù)載,將比類(lèi)似汽車(chē)引擎溫度這樣相對(duì)變化較慢的物理量更頻繁地傳送數(shù)據(jù)并要求更短的延時(shí)。 CAN總線以報(bào)文為單位進(jìn)行數(shù)據(jù)傳送,報(bào)文的優(yōu)先級(jí)結(jié)合在11位標(biāo)識(shí)符中,具有最低二進(jìn)制數(shù)的標(biāo)識(shí)符有最高的優(yōu)先級(jí)。這種優(yōu)先級(jí)一旦在系統(tǒng)設(shè)計(jì)時(shí)被確立后就不能再被更改。總線讀取中的沖突可通過(guò)位仲裁解決。如圖2所示,當(dāng)幾個(gè)站同時(shí)發(fā)送報(bào)文時(shí),站1的報(bào)文標(biāo)識(shí)符為011111;站2的報(bào)文標(biāo)識(shí)符為 0100110;站3的報(bào)文標(biāo)識(shí)符為0100111。所有標(biāo)識(shí)符都有相同的兩位01,直到第3位進(jìn)行比較時(shí),站
47、1的報(bào)文被丟掉,因?yàn)樗牡?位為高,而其它兩個(gè)站的報(bào)文第3位為低。站2和站3報(bào)文的4、5、6位相同,直到第7位時(shí),站3的報(bào)文才被丟失。注意,總線中的信號(hào)持續(xù)跟蹤最后獲得總線讀取權(quán)的站的報(bào)文。在此例中,站2的報(bào)文被跟蹤。這種非破壞性位仲裁方法的優(yōu)點(diǎn)在于,在網(wǎng)絡(luò)最終確定哪一個(gè)站的報(bào)文被傳送以前,報(bào)文的起始部分已經(jīng)在網(wǎng)絡(luò)上傳送了。所有未獲得總線讀取權(quán)的站都成為具有最高優(yōu)先權(quán)報(bào)文的接收站,并且不會(huì)在總線再次空閑前發(fā)送報(bào)文。 CAN具有較高的效率是因?yàn)榭偩€僅僅被那些請(qǐng)求總線懸而未決的站利用,這些請(qǐng)求是根據(jù)報(bào)文在整個(gè)系統(tǒng)中的重要性按順序處理的。這種方法在網(wǎng)絡(luò)負(fù)載較重時(shí)有很多優(yōu)點(diǎn),因?yàn)榭偩€讀取的優(yōu)先級(jí)已被按
48、順序放在每個(gè)報(bào)文中了,這可以保證在實(shí)時(shí)系統(tǒng)中較低的個(gè)體隱伏時(shí)間。 對(duì)于主站的可靠性,由于CAN協(xié)議執(zhí)行非集中化總線控制,所有主要通信,包括總線讀取 (許可)控制,在系統(tǒng)中分幾次完成。這是實(shí)現(xiàn)有較高可靠性的通信系統(tǒng)的唯一方法 3.2 CAN與其它通信方案的比較 在實(shí)踐中,有兩種重要的總線分配方法:按時(shí)間表分配和按需要分配。在第一種方法中 ,不管每個(gè)節(jié)點(diǎn)是否申請(qǐng)總線,都對(duì)每個(gè)節(jié)點(diǎn)按最大期間分配。由此,總線可被分配給每個(gè)站并且是唯一的站,而不論其是立即進(jìn)行總線存取或在一特定時(shí)間進(jìn)行總線存取。這將保證在總線存取時(shí)有明確的總線分配。在第二種方法中,總線按傳送數(shù)據(jù)的基本要求分配給一個(gè)站 ,總線系統(tǒng)按站希望
49、的傳送分配(如:Ethernet CSMA/CD)。因此,當(dāng)多個(gè)站同時(shí)請(qǐng)求總線存取時(shí),總線將終止所有站的請(qǐng)求,這時(shí)將不會(huì)有任何一個(gè)站獲得總線分配。為了分配總線,多于一個(gè)總線存取是必要的。 CAN實(shí)現(xiàn)總線分配的方法,可保證當(dāng)不同的站申請(qǐng)總線存取時(shí),明確地進(jìn)行總線分配。這種位仲裁的方法可以解決當(dāng)兩個(gè)站同時(shí)發(fā)送數(shù)據(jù)時(shí)產(chǎn)生的碰撞問(wèn)題。不同于Ethernet網(wǎng)絡(luò)的消息仲裁,CAN的非破壞性解決總線存取沖突的方法,確保在不傳送有用消息時(shí)總線不被占用。甚至當(dāng)總線在重負(fù)載情況下, 以消息內(nèi)容為優(yōu)先的總線存取也被證明是一種有效的系統(tǒng)。雖然總線的傳輸能力不足,所有未解決的傳輸請(qǐng)求都按重要性順序來(lái)處理。在CSMA/
50、CD這樣的網(wǎng)絡(luò)中,如Ethernet,系統(tǒng)往往由于過(guò)載而崩潰,而這種情況在CAN中不會(huì)發(fā)生。 3.3 CAN的報(bào)文格式 在總線中傳送的報(bào)文,每幀由7部分組成,見(jiàn)圖3。CAN協(xié)議支持兩種報(bào)文格式,其唯一的不同是標(biāo)識(shí)符(ID)長(zhǎng)度不同,標(biāo)準(zhǔn)格式為11位,擴(kuò)展格式為29位。 在標(biāo)準(zhǔn)格式中,報(bào)文的起始位稱(chēng)為幀起始(SOF),然后是由11位標(biāo)識(shí)符和遠(yuǎn)程發(fā)送請(qǐng)求位 (RTR)組成的仲裁場(chǎng)。RTR位標(biāo)明是數(shù)據(jù)幀還是請(qǐng)求幀,在請(qǐng)求幀中沒(méi)有數(shù)據(jù)字節(jié)。 控制場(chǎng)包括標(biāo)識(shí)符擴(kuò)展位(IDE),指出是標(biāo)準(zhǔn)格式還是擴(kuò)展格式。它還包括一個(gè)保留位 (ro),為將來(lái)擴(kuò)展使用。它的最后四個(gè)字節(jié)用來(lái)指明數(shù)據(jù)場(chǎng)中數(shù)據(jù)的長(zhǎng)度(DLC)。數(shù)據(jù)場(chǎng)范圍為08個(gè)字節(jié),其后有一個(gè)檢測(cè)數(shù)據(jù)錯(cuò)誤的循環(huán)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 關(guān)于測(cè)量公司管理制度
- 工廠專(zhuān)業(yè)體系管理制度
- DB62T 4376-2021 油菜品種 匯豐1號(hào)
- 電協(xié)調(diào)措施方案(3篇)
- 宿舍靜態(tài)管理方案(3篇)
- 整體庭院改造方案(3篇)
- 人員借調(diào)計(jì)劃方案(3篇)
- 祠廟修繕?lè)桨?3篇)
- 電梯井道大修方案(3篇)
- 石材施工方案(3篇)
- a320mel放行偏差指南項(xiàng)ata21維護(hù)程序
- TY/T 4001.2-2018汽車(chē)自駕運(yùn)動(dòng)營(yíng)地服務(wù)管理要求
- (整理)不同溫度下空氣中飽和水分含量及飽和蒸汽壓
- 高中物理情境化選擇題專(zhuān)題練習(xí)
- 內(nèi)功四經(jīng)內(nèi)功真經(jīng)真本全書(shū)
- 施工進(jìn)度計(jì)劃表(參考模板)
- 鋼結(jié)構(gòu)冷庫(kù)施工方案
- DL∕T 2101-2020 架空輸電線路固定翼無(wú)人機(jī)巡檢系統(tǒng)
- 羅伊護(hù)理個(gè)案模板
- 小學(xué)數(shù)學(xué)新版本小學(xué)四年級(jí)小數(shù)加減法的課件
評(píng)論
0/150
提交評(píng)論