




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 基于基于ARM9ARM9微處理器微處理器S3C2410AS3C2410A第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 6.1 6.1 串行串行(Uart)(Uart)接口接口 掌握ARM的Uart工作原理掌握Uart寄存器配置方法學(xué)習(xí)編程實現(xiàn)ARM的UART通訊第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 6.1.1 串行接口基本原理與結(jié)構(gòu)1 1串行通信概
2、述串行通信概述 常用的數(shù)據(jù)通信方式有并行通信和串行通信兩種。當(dāng)兩臺數(shù)字設(shè)備之間傳輸距離較遠(yuǎn)時,數(shù)據(jù)往往以串行方式傳輸。串行通信具有傳輸線少、成本低等優(yōu)點,特別適合遠(yuǎn)距離傳送。 串行數(shù)據(jù)通信模式 串行數(shù)據(jù)通信模式有單工通信、半雙工通信和全雙工通信3種基本的通信模式。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 異步串行通信方式 字符的格式 每個字符傳送時,必須前面加一個起始位,后面加上1、1.5或2位停止位。例如ASCII碼傳送時,一幀數(shù)據(jù)的組成是:前面1個起始位,接著7位ASCII編碼,再接著一位奇偶校驗位,最后一位停止位,共10位。 波特率 傳送數(shù)據(jù)位的
3、速率稱為波特率,用位秒(bit/s)來表示,稱之為波特。異步通信的波特率的數(shù)值通常為:150、300、600、1200、2400、4800、9600、115200、14400、28800等,數(shù)值成倍數(shù)變化。 校驗位 在一個有8位的字節(jié)(byte)中,其中必有奇數(shù)個或偶數(shù)個的“1”狀態(tài)位。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 異步串行通信中的字符傳送格式u開始前,線路處于空閑狀態(tài),連續(xù)多個“1”;u開始時,先發(fā)一個“0”作為起始位;u然后是二進(jìn)制數(shù)據(jù)和奇偶校驗位(可選);u最后是一個及一個以上的“1”作為停止位;第第6 6章章 嵌入式系統(tǒng)總線接口嵌入
4、式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 uRS232-C是美國電子工業(yè)協(xié)會(EIA)制定的串行通訊標(biāo)準(zhǔn);uRS232是一個全雙工的通訊標(biāo)準(zhǔn),它可以同時進(jìn)行數(shù)據(jù)接收和發(fā)送的工作;uRS232標(biāo)準(zhǔn)包括一個主通道和一個輔助通道,在多數(shù)情況下主要使用主通道,即RXD、TXD、GND信號;2 2RS232RS232概述概述第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 DB-25/DB-9引腳定義第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 RS-232C接口通信的兩種基本連接方式第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)
5、總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 uTTL電平:S3C2410A使用TTL電平uRS232電平:雙極性信號邏輯電平, 它是一套負(fù)邏輯定義-3V到-25V之間的電平表示邏輯“1”+3V到+25V之間的電平表示邏輯“0” 電平轉(zhuǎn)換電路:常用專門的RS-232接口芯片,如SP3232、SP3220等,在TTL電平和RS-232電平之間實現(xiàn)相互轉(zhuǎn)換。3 3電平轉(zhuǎn)換電平轉(zhuǎn)換第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 1 1S3C2410AS3C2410A的的UARTUART結(jié)
6、構(gòu)結(jié)構(gòu) S3C2410 的UART(通用異步串行口)有三個獨立的異步串行I/O 端口:UART0、UART1、UART2 UART支持的最高波特率達(dá)230.4kbps6.1.2 S3C2410A的UART第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 每個UART包含:u波特率發(fā)生器、接收器、發(fā)送器和控制單元u波特率發(fā)生器以PCLK或UCLK為時鐘源u發(fā)送器和接收器各包含1個16 字節(jié)的FIFO和移位寄存器u當(dāng)發(fā)送數(shù)據(jù)的時候,數(shù)據(jù)可以先寫到FIFO然后拷貝到發(fā)送移位寄存器,然后從數(shù)據(jù)輸出端口(TxDn)依次被移位輸出u被接收的數(shù)據(jù)也同樣可以從接收端口(RxD
7、n)移位輸入到移位寄存器,然后拷貝到FIFO中第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 1.在使用UART之前需要設(shè)置的寄存器UART內(nèi)部結(jié)構(gòu)示意圖-以Uart0為例FIFO控制中斷使能及模式選擇UART格式設(shè)置波特率設(shè)置UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnAPB接口UFCNn與CPU內(nèi)核相連ULCONnUFCONnUBRDIVnUCONn第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 2.發(fā)送數(shù)據(jù)的通道UART內(nèi)部結(jié)構(gòu)示意圖CPU內(nèi)核通過APB接口對
8、UART的寄存器進(jìn)行讀寫訪問發(fā)送緩存發(fā)送移位寄存器UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnAPB接口UFCONn與CPU內(nèi)核相連UTXHnUBRDIVn第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 3.接收數(shù)據(jù)的通道UART內(nèi)部結(jié)構(gòu)示意圖接收緩存接收移位寄存器U0RBRU0RSRAPB接口UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnUFCONn與CPU內(nèi)核相連URXHnUBRDIVn第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌
9、入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 4.通信過程中可能影響的標(biāo)志位UART內(nèi)部結(jié)構(gòu)示意圖中斷標(biāo)志UART0當(dāng)前狀態(tài)U0RBRU0RSRAPB接口UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnUFCONn與CPU內(nèi)核相連UCONnUTRSTATnUBRDIVn第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART相關(guān)寄存器描述Uart行控制寄存器UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnAPB接口UFCNn與CPU內(nèi)核相連ULCONnUBRDIVnP1
10、1D0D1D2D3D4D5D6D70位765 : 321 :0功能保留紅外/正常模式選擇奇偶校驗?zāi)J竭x擇停止位字長ULCON寄存器:停止位(12位)數(shù)據(jù)(58位)奇偶校驗位起始位第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART0相關(guān)寄存器描述字長:這些位控制數(shù)據(jù)長度。00:5位字符長度;01:6位字符長度;10:7位字符長度;11:8位字符長度;UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnAPB接口UFCNn與CPU內(nèi)核相連ULCONnUBRDIVn位765 : 321 :0功能保留紅外/正常
11、模式選擇奇偶校驗?zāi)J竭x擇停止位字長Uart行控制寄存器第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART0相關(guān)寄存器描述停止位:控制每幀數(shù)據(jù)包含的停止位個數(shù)。0:1個停止位;1:2個停止位;UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnAPB接口UFCNn與CPU內(nèi)核相連ULCONnUBRDIVn位765 : 321 :0功能保留紅外/正常模式選擇奇偶校驗?zāi)J竭x擇停止位字長Uart行控制寄存器第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART相關(guān)寄存器描述
12、奇偶選擇:設(shè)置奇偶校驗類型。0XX:無奇偶校驗; 100:奇校驗; 101:偶校驗;110:強制奇偶校驗/校驗1;111:強制奇偶校驗/校驗0;UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnAPB接口UFCNn與CPU內(nèi)核相連ULCONnUBRDIVn位765 : 321 :0功能保留紅外/正常模式選擇奇偶校驗?zāi)J竭x擇停止位字長Uart行控制寄存器第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART線控寄存器(ULCONn)的位功能 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)
13、計嵌入式系統(tǒng)設(shè)計 UART相關(guān)寄存器描述Uart控制寄存器位109876543:21 :0功能波特率時鐘選擇發(fā)送中斷請求類型選擇接收中斷請求類型選擇Rx超時中斷使能控制接收錯誤狀態(tài)中斷使能控制回送模式選擇保留發(fā)送模式選擇接收模式選擇波特率時鐘選擇:0:使用PCLK 1:使用UclkUTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnAPB接口UFCNn與CPU內(nèi)核相連UCONnUBRDIVn第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART相關(guān)寄存器描述位210功能發(fā)送器空狀態(tài)位發(fā)送緩沖器空狀態(tài)位接收緩
14、沖器狀態(tài)位Uart狀態(tài)寄存器發(fā)送器空狀態(tài)位: 0:發(fā)送器未空 1:發(fā)送器、發(fā)送緩沖器均空。U0RBRU0RSRUTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnUFCONn與CPU內(nèi)核相連UTRSTATnUBRDIVnAPB接口第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART相關(guān)寄存器描述位210功能發(fā)送器空狀態(tài)位發(fā)送緩沖器空狀態(tài)位接收緩沖器狀態(tài)位Uart狀態(tài)寄存器發(fā)送緩沖器空狀態(tài)位: 0:未空; 1:空U0RBRU0RSRUTXHnShifterTxD0URXHnShifterRxD0ULCONn
15、UTRSTATnUCONnUFCONn與CPU內(nèi)核相連UTRSTATnUBRDIVnAPB接口第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART相關(guān)寄存器描述位210功能發(fā)送器空狀態(tài)位發(fā)送緩沖器空狀態(tài)位接收緩沖器狀態(tài)位Uart狀態(tài)寄存器接收緩沖器空狀態(tài)位: 0:空; 1:有數(shù)據(jù)U0RBRU0RSRUTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnUFCONn與CPU內(nèi)核相連UTRSTATnUBRDIVnAPB接口第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6
16、 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART相關(guān)寄存器描述UTXHn描述復(fù)位值7 : 0發(fā)送數(shù)據(jù)緩沖寄存器,保存發(fā)送數(shù)據(jù)未定義發(fā)送/接收數(shù)據(jù)緩沖寄存器UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnUFCONn與CPU內(nèi)核相連UTXHnUBRDIVnAPB接口URXHnURXHn描述復(fù)位值7 : 0接收數(shù)據(jù)緩沖寄存器,保存接收數(shù)據(jù)未定義第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 UART相關(guān)寄存器描述名稱描述復(fù)位值UBRDIV15:0波特率系數(shù)寄存寄存器:決定
17、串行發(fā)送接收時鐘率未定義Uart波特率系數(shù)寄存器UTXHnShifterTxD0URXHnShifterRxD0ULCONnUTRSTATnUCONnAPB接口UFCNn與CPU內(nèi)核相連UBRDIVn第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 通過設(shè)置UCONn寄存器選擇UART時鐘是由S3C2410A的系統(tǒng)時鐘(PCLK)產(chǎn)生還是由外部UART設(shè)備的時鐘(UCLK)產(chǎn)生。 波特率的大小可以通過設(shè)置波特率寄存器(UBRDIVn)控制,使用PCLK時的計算公式如下: UBRDIVn = (int)(PCLK/(bps x 16) ) -1 使用UCLK時的
18、計算公式如下: UBRDIVn = (int)(UCLK/(bps x 16) ) -1 其中PCLK 是系統(tǒng)時鐘頻率,UCLK是UART設(shè)備時鐘。 使用PCLK,在40MHz的情況下,當(dāng)波特率取115200時 UBRDIVn = (int)(40000000/ (115200 x 16)1= 20波特率計算第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 2.UART2.UART工作過程(以工作過程(以UART0UART0為例)為例) 串口初始化u首先要設(shè)置相應(yīng)I/O為TXD0、RXD0功能引腳;u然后通過ULCON0寄存器來設(shè)置串口數(shù)據(jù)格式;u然后通過UC
19、ON0寄存器來設(shè)置串口工作模式;u最后通過UBRDIV0來設(shè)置通訊波特率;第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 串口收發(fā)數(shù)據(jù)u發(fā)送:將待發(fā)送數(shù)據(jù)寫入UTXH0寄存器,然后通過讀取UTRSTAT0寄存器的值判斷數(shù)據(jù)是否發(fā)送完成;u接收:通過讀取UTRSTAT0寄存器的值判斷是否接收到數(shù)據(jù),如果接收到數(shù)據(jù),則可以從URXH0寄存器中讀出數(shù)據(jù)。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 6.1.3 與S3C2410A UART連接的串行接口電路1 1S3C2410A UARTS3C2410A UART與與RS-23
20、2CRS-232C的接口電路的接口電路 在圖6.1.7中,包含有UART0和UART1與RS-232C的接口電路,通過9芯的D型插頭與外設(shè)連接。也可設(shè)計數(shù)據(jù)發(fā)送與接收的狀態(tài)指示LED,當(dāng)有數(shù)據(jù)通過串行口傳輸時,LED閃爍,便于用戶掌握其工作狀態(tài),以及進(jìn)行軟、硬件的調(diào)試。 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 圖6.1.7 S3C2410A的RS-232C接口電路 RS232電平TTL電平第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 6.1.4 S3C2410A UART編程實例 本程序?qū)嵗龑崿F(xiàn)從UART0接收數(shù)
21、據(jù),然后分別從UART0和UART1發(fā)送出去。 其功能可以把鍵盤敲擊的字符通過PC機的串口發(fā)送給ARM系統(tǒng)上的UART0,ARM系統(tǒng)上的UART0接收到字符后,再通過UART0和UART1送給PC機,這樣就完成了串口間的收發(fā)數(shù)據(jù)。要實現(xiàn)以上數(shù)據(jù)的收發(fā)功能,需要編寫的主要代碼如下。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 2 2主函數(shù)主函數(shù) 實現(xiàn)的功能為從UART0接收字符,然后將接收到的字符再分別從UART0和UART1送出去,其中Uart_Select(n)用于選擇使
22、用的傳輸通道為UARTn。代碼如下:第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 4 4發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù) 其中whichUart為全局變量,指示當(dāng)前選擇的UART通道,使用串口發(fā)送一個字節(jié)的代碼如下:第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 5 5接收數(shù)據(jù)接收數(shù)據(jù) 如果沒有接收到字符則返回0。使用串口接收一個字符的代碼如下: 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 對串口進(jìn)行初始化時,首先
23、要設(shè)置相應(yīng)I/O 為TXD0、RXD0 功能引腳,然后通過ULCON0 寄存器來設(shè)置串口數(shù)據(jù)格式,通過UCON0 寄存器來設(shè)置串口工作模式,最后通過UBRDIV0 來設(shè)置通訊波特率。 使用串口發(fā)送數(shù)據(jù)時,將待發(fā)送數(shù)據(jù)寫入UTXH0 寄存器,然后通過讀取UTRSTAT0寄存器的值判斷數(shù)據(jù)是否發(fā)送完成。當(dāng)然,實際代碼也可以先等待UTXH0 寄存器為空(通過讀取UTRSTAT0 寄存器的值判斷),再將數(shù)據(jù)寫入UTXH0 寄存器。 進(jìn)行串口數(shù)據(jù)接收時,通過讀取UTRSTAT0 寄存器的值判斷是否接收到數(shù)據(jù),如果接收到數(shù)據(jù),則可以從URXH0 寄存器中讀出數(shù)據(jù)。 總結(jié)總結(jié)第第6 6章章 嵌入式系統(tǒng)總線接
24、口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 6.2 I6.2 I2C C接口接口 6.2.1 I2C 接口基本原理與結(jié)構(gòu) I2C BUS(Inter Integrated Circuit BUS,內(nèi)部集成電路總線)是由Philips公司推出的二線制串行擴展總線,用于連接微控制器及其外圍設(shè)備。 如下圖所示,在I2C總線上,只需要兩條線串行數(shù)據(jù)SDA線和串行時鐘SCL線,它們用于總線上器件之間的信息傳遞。SDA和SCL都是雙向的。每個器件都有一個唯一的地址(讀寫不一樣)以供識別,而且各器件都可以作為一個發(fā)送器或接收器(由器件的功能決定)。 在標(biāo)準(zhǔn)模式下,總線數(shù)據(jù)傳輸?shù)乃俣葹?00kbit/
25、s,在高速模式下,可達(dá)400kbit/s; I2C總線有如下操作模式:主發(fā)送模式、主接收模式、從發(fā)送模式、從接收模式。下面介紹其通用傳輸過程、信號及數(shù)據(jù)格式。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 I2C簡介電氣連接 I2C總線接口均為開漏或開集電極輸出,因此需要為總線增加上拉電阻Rp。RpRpVDDSCLSDASDA出SDA入SCL入SCL出SCLSDA器件1器件2I2C BUS總線速率越高,總線上拉電阻就越小,100Kbit/s總線速率,通常使用5.1K歐姆的上拉電阻第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)
26、計 (1)I2C總線的啟動和停止信號 當(dāng)I2C接口處于從模式時,要想數(shù)據(jù)傳輸,必須檢測SDA線上的啟動信號,啟動信號由主器件產(chǎn)生。 如下圖所示,在SCL信號為高時,SDA產(chǎn)生一個由高變低的電平變化,即產(chǎn)生一個啟動信號。當(dāng)I2C總線上產(chǎn)生了啟動信號后,那么這條總線就被發(fā)出啟動信號的主器件占用了,變成“忙”狀態(tài); 如下圖所示,在SCL信號為高時,SDA產(chǎn)生一個由低變高的電平變化,產(chǎn)生停止信號。停止信號也由主器件產(chǎn)生,作用是停止與某個從器件之間的數(shù)據(jù)傳輸。當(dāng)I2C總線上產(chǎn)生了一個停止信號后,那么在幾個時鐘周期之后總線就被釋放,變成“閑”狀態(tài)。 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌
27、入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 主器件產(chǎn)生一個啟動信號后,它還會立即送出一個從地址,用來通知將與它進(jìn)行數(shù)據(jù)通信的從器件。 1個字節(jié)的地址包括7位的地址信息和1位的傳輸方向指示位,如果第7位為“0”,表示馬上要進(jìn)行一個寫操作;如果為“1”,表示馬上要進(jìn)行一個讀操作。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 (2)數(shù)據(jù)傳輸格式 SDA線上傳輸?shù)拿總€字節(jié)長度都是8位,每次傳輸中字節(jié)的數(shù)量是沒有限制的。在起始條件后面的第一個字節(jié)是地址域,之后每個傳輸?shù)淖止?jié)后面都有一個應(yīng)答(ACK)位。(3)應(yīng)答信號 I2C總線數(shù)據(jù)傳送時,每傳送一個字節(jié)數(shù)據(jù)后都必須有應(yīng)答信號。主控
28、器接收數(shù)據(jù)時,如果要結(jié)束通信時,將在停止位之前發(fā)送非應(yīng)答信號。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 S3C2410A在I2C通信中可以配置為主控器,也可以作為被控器,那么它就具有4種操作模式:主發(fā)送模式、主接收模式、從發(fā)送模式和從接收模式。S從器件地址WA數(shù)據(jù)A數(shù)據(jù)A/ AP主發(fā)送模式:S從器件地址RA數(shù)據(jù)A數(shù)據(jù)AP主接收模式:S從器件地址WA數(shù)據(jù)A數(shù)據(jù)A/ AP/RS從發(fā)送模式:S從器件地址RA數(shù)據(jù)A數(shù)據(jù)AP從接收模式:主機到從機主機到從機A = 應(yīng)答(SDA為低)A = 非應(yīng)答(SDA為高)S = 起始信號P = 停止信號RS = 重復(fù)起始信號
29、第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 (4)I2C總線的數(shù)據(jù)傳輸過程 開始:主設(shè)備產(chǎn)生啟動信號,表明數(shù)據(jù)傳輸開始。 地址:主設(shè)備發(fā)送地址信息,包含7位的從設(shè)備地址和1位的數(shù)據(jù)方向指示位(讀或?qū)懳?,表示?shù)據(jù)流的方向)。 數(shù)據(jù):根據(jù)指示位,數(shù)據(jù)在主設(shè)備和從設(shè)備之間進(jìn)行傳輸。數(shù)據(jù)一般以8位傳輸,最重要的位放在前面;具體能傳輸多少量的數(shù)據(jù)并沒有限制。接收器產(chǎn)生1位的ACK(應(yīng)答信號)表明收到了每個字節(jié)。傳輸過程可以被中止和重新開始。 停止:主設(shè)備產(chǎn)生停止信號,結(jié)束數(shù)據(jù)傳輸。
30、第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 6.2.2 S3C2410A的I2C接口 S3C2410A提供一個I2C總線接口,其模塊框圖如圖6.2.3所示,具有一個專門的串行數(shù)據(jù)線和串行時鐘線。它有主設(shè)備發(fā)送模式、主設(shè)備接收模式、從設(shè)備發(fā)送模式和從設(shè)備接收模式4種操作模式。 控制S3C2410AI2C總線操作,需要寫數(shù)據(jù)到IICCON(I2C總線控制寄存器)、IICSTAT(I2C總線控制/狀態(tài)寄存器)、IICDS(I2C總線Tx/Rx數(shù)據(jù)寄存器)和IICADD(I2C總線地址寄存器)。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計
31、嵌入式系統(tǒng)設(shè)計 圖6.2.3 S3C2410A處理器I2C串行總線框圖第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 IIC相關(guān)寄存器u控制寄存器IICCON用于設(shè)置 IIC 總線時鐘和中斷(標(biāo)志)使能,還有 1 位中斷標(biāo)志位u狀態(tài)寄存器IICSTAT除了指示當(dāng)前 IIC 總線狀態(tài)外,還有 2 位 IIC 操作模式控制位和總線啟動/結(jié)束控制位u地址寄存器IICADD用來保存 S3C2410A作 IIC 從機時的器件地址u移位數(shù)據(jù)寄存器IICDS -用來發(fā)送數(shù)據(jù)或接收數(shù)據(jù)第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 IIC
32、總線控制寄存器(IICCON)第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 IICIIC總線狀態(tài)寄存器(總線狀態(tài)寄存器(IICSTATIICSTAT)第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 IIC總線地址寄存器(IICADD)IIC發(fā)送接收移位寄存器(IICDS)第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 6.2.3 S3C2410A的I2C接口應(yīng)用實例 S3C2410A I2C總線與使用I2C總線的EEPROM芯片KS24C080C連接電路如圖6.2.4所示。圖6.2.4
33、 S3C2410A IIC總線與KS24C080C連接電路 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 程序設(shè)計:程序設(shè)計: 使用使用I I2 2C C接口主模式向接口主模式向CAT1025CAT1025寫入寫入1010字節(jié)數(shù)據(jù),然后字節(jié)數(shù)據(jù),然后讀出校驗,若校驗通過則蜂鳴器響讀出校驗,若校驗通過則蜂鳴器響1 1聲,否則不斷地蜂鳴聲,否則不斷地蜂鳴報警報警 對 I2C 接口進(jìn)行初始化時,首先要設(shè)置相應(yīng) I/O為 IICSDA、IICSCL 功能引腳,然后通過 IICCON 寄存器來設(shè)置 IIC 總線時鐘,并使能 IIC 中斷(標(biāo)志),通過 IICSTAT
34、 寄存器來設(shè)置 IIC 接口為主發(fā)送模式。 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 RpRpVDDSCLSDASDA出SDA入SCL入SCL出SCLSDA器件1器件2I2C BUSI2C應(yīng)用示例 S3C2410A在該模式下作為主控器,向從機發(fā)送數(shù)據(jù)。數(shù)據(jù)流向如下圖所示:主機發(fā)送S3C2410A(主)第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 RpRpVDDSCLSDASDA出SDA入SCL入SCL出SCLSDA器件1器件2I2C
35、 BUSI2C應(yīng)用示例 S3C2410A在該模式下作為主控器,接收從機發(fā)出的數(shù)據(jù)。數(shù)據(jù)流向如下圖所示:主機接收S3C2410A(主)第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 主模式主模式/ /接收接收數(shù)據(jù)數(shù)據(jù)第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 初始化初始化IICIIC總線總線void InitI2C(void) / 設(shè)置管腳連接 rGPECON = (rGPECON & 0 x0FFFFFFF) | 0 xA0000000; / 設(shè)置IIC口使能,GPE14、GPE15分別為SCL和SDA rGP
36、EUP = rGPEUP | 0 xC000; / 禁止內(nèi)部上拉電阻 / 設(shè)置IIC控制寄存器 (使能ACK位時才能接收從機的應(yīng)答位) rIICCON = IICCON_DACK; /IICCON_DACK=(17) | (16) | (15) | (00) / 設(shè)置IIC為主機模式 rIICSTAT = (36)|(14); / 從機地址 (作主機時沒有用) rIICADD = 0 x10; 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 啟動啟動IIC總線,發(fā)送從器件地址
37、總線,發(fā)送從器件地址int StartI2C(uint8 sla) uint32 i;rIICDS = sla;/ 設(shè)置從機地址if(sla&0 x01) rIICSTAT = (26)|(15)|(14);/ 主接收模式,發(fā)送使能,啟動總線rIICCON = IICCON_DACK;/ 若是重啟總線,則需要有此操作 else rIICSTAT = (36)|(15)|(14); / 主發(fā)送模式,發(fā)送使能,啟動總線 / 等待操作完成 while(rIICCON&0 x10) = 0); / 判斷操作是否成功 (總線仲裁和從機應(yīng)答) if(rIICSTAT&0 x09)
38、= 0) return(TRUE); else / 發(fā)送結(jié)束信號 if(sla&0 x01) rIICSTAT = (26)|(05)|(14); else rIICSTAT = (36)|(05)|(14);rIICCON = IICCON_DACK; for(i=0; i5000; i+); / 等待結(jié)束信號產(chǎn)生完畢 return(FALSE); / end of if(rIICSTAT&0 x09) = 0).else. 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計
39、嵌入式系統(tǒng)設(shè)計 IICIIC發(fā)送發(fā)送1 1字節(jié)數(shù)據(jù),并接收應(yīng)答位字節(jié)數(shù)據(jù),并接收應(yīng)答位int I2C_SendByte(uint8 dat) uint32 i;rIICDS = dat;/ 將數(shù)據(jù)寫入I2C數(shù)據(jù)寄存器rIICCON = IICCON_DACK;/ 清除中斷標(biāo)志,允許發(fā)送數(shù)據(jù)操作/ 等待操作完成 while(rIICCON&0 x10) = 0); / 判斷操作是否成功 (總線仲裁和從機應(yīng)答) if(rIICSTAT&0 x09) = 0) return(TRUE); else / 發(fā)送結(jié)束信號rIICSTAT = (36)|(05)|(14);rIICCON =
40、 IICCON_DACK;for(i=0; i5000; i+); / 等待結(jié)束信號產(chǎn)生完畢 return(FALSE); 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 IICIIC接收接收1 1字節(jié)數(shù)據(jù),并發(fā)送應(yīng)答位字節(jié)數(shù)據(jù),并發(fā)送應(yīng)答位int I2C_RcvByteA(uint8 *dat) uint32 i;/ 允許接收數(shù)據(jù)rIICCON = IICCON_DACK;/ 等待接收數(shù)據(jù)操作完成 while(rIICCON&0 x10) = 0); / 判斷操作是
41、否成功 (總線仲裁) if(rIICSTAT&0 x08) != 0) / 發(fā)送結(jié)束信號rIICSTAT = (26)|(05)|(14);rIICCON = IICCON_DACK;for(i=0; i5000; i+); / 等待結(jié)束信號產(chǎn)生完畢return(FALSE); *dat = rIICDS;/ 讀取數(shù)據(jù)return(TRUE); 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 結(jié)束結(jié)束IICIIC總線總線void StopI2C(uint8 send)
42、 uint32 i;if(send) /主發(fā)送模式時為1,否則為0 rIICSTAT = (36)|(05)|(14); / 發(fā)送結(jié)束信號else rIICSTAT = (26)|(05)|(14); / 發(fā)送結(jié)束信號 rIICCON = IICCON_DACK;for(i=0; i5000; i+);/ 等待結(jié)束信號產(chǎn)生完畢第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 6.4 SPI6.4 SPI接口接口 SPI(Serial Peripheral Interface)一般稱為串行外設(shè)接口,是Motorola在其MC68HCxx微處理器系列中定義的一種標(biāo)
43、準(zhǔn)接口,實現(xiàn)了一個串行同步協(xié)議,目前在嵌入式系統(tǒng)中得到了廣泛的應(yīng)用。SPI采用同步、全雙工串行傳輸技術(shù),業(yè)內(nèi)也稱為同步串行總線接口 SPI接口可以用來連接存儲器、A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器、實時時鐘日歷、LCD驅(qū)動器、傳感器、音頻芯片,甚至其他處理器等。6.4.1 SPI接口原理與結(jié)構(gòu)1.原理第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 一個SPI總線可以連接多個主機和多個從機。在同一時刻只允許一個主機操作總線,即被主設(shè)備選中的那個從設(shè)備,能與主設(shè)備通信。其他未被選中的從設(shè)備不能與主設(shè)備通信。 串行時鐘由主機產(chǎn)生,當(dāng)主機發(fā)送一字節(jié)數(shù)據(jù)(通過MOSI)的同時
44、,從機返回一字節(jié)數(shù)據(jù)(通過MISO)。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 使用SPI通信需要4個引腳,分別為:引腳名稱類型描述SCK輸入/輸出串行時鐘,用于同步SPI接口間數(shù)據(jù)傳輸?shù)臅r鐘信號。該時鐘信號總是由主機輸出。nSS輸入從機選擇,SPI從機選擇信號是一個低有效信號,用于指示被選擇參與數(shù)據(jù)傳輸?shù)膹臋C。每個從機都有各自特定的從機選擇輸入信號。MISO輸入/輸出主入從出,MISO信號是一個單向的信號,它將數(shù)據(jù)由從機傳輸?shù)街鳈C。MOSI輸入/輸出主出從入,MOSI信號是一個單向的信號,它將數(shù)據(jù)從主機傳輸?shù)綇臋C。2.SPI電氣連接SPI主機S3C2
45、410ASPI從機1SPI從機2nSSSPI BUSnSSnSS作SPI主機時,SS要接上拉電阻第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 MOSI信號由主機產(chǎn)生,從機接收。在有些芯片上,MOSI只被簡單的標(biāo)為串行輸入(SI),或者串行數(shù)據(jù)輸入(SDI)。MISO信號由從機產(chǎn)生,不過還是在主機的控制下產(chǎn)生的。在一些芯片上,MISO有時被稱為串行輸出(SO)或串行數(shù)據(jù)輸出(SDO)。外設(shè)片選信號通常只是由主機的備用I/O引腳產(chǎn)生的。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 S3C2410包含有兩個串行外圍設(shè)備接口(
46、SPI口),每個SPI口都有兩個分別用于發(fā)送和接收的8位移位寄存器,在一次SPI通信當(dāng)中數(shù)據(jù)被同步發(fā)送(串行移出)和接收(串行移入)。 每個SPI通道有4個I/O引腳信號與SPI傳輸有關(guān),2個SPI通道使用以下引腳信號傳輸:SPICLK1:0SPIMISO1:0SPIMOSI1:0nSS1:06.4.2 S3C2410A的SPI接口電路1. 內(nèi)部結(jié)構(gòu)第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 8位串行數(shù)據(jù)的速率由相關(guān)的控制寄存器(SPPREn)的內(nèi)容決定。如果只想發(fā)送,接收到的是一些虛擬的數(shù)據(jù)。另外,如果只想接收,發(fā)送的數(shù)據(jù)也可以是一些虛擬的“1”。 當(dāng)
47、器件作為主機時,使用一個IO引腳拉低相應(yīng)從機的選擇引腳(nSS),傳輸?shù)钠鹗加芍鳈C發(fā)送數(shù)據(jù)來啟動,時鐘(SCK)信號由主機產(chǎn)生。通過MOSI發(fā)送數(shù)據(jù),同時通過MISO引腳接收從機發(fā)出的數(shù)據(jù)。 當(dāng)器件作為從機時,傳輸在從機選擇引腳(nSS)被主機拉低后開始,接收主機輸出的時鐘信號,在讀取主機數(shù)據(jù)的同時通過MISO引腳輸出數(shù)據(jù)。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 時鐘相位為1時鐘前沿數(shù)據(jù)輸出時鐘后沿數(shù)據(jù)采樣時鐘信號極性0極性1從機選擇時鐘相位為0時鐘前沿數(shù)據(jù)采樣時鐘后
48、沿數(shù)據(jù)輸出2.SPI傳輸時序時鐘前沿輸出時鐘后沿采樣時鐘前沿采樣時鐘后沿輸出第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 名稱描述訪問復(fù)位值SPI0名稱SPI1名稱SPCONnSPI控制寄存器。該寄存器控制SPI的操作模式。讀寫0SPCON0SPCON1SPSTAnSPI狀態(tài)寄存器。該寄存器顯示SPI的狀態(tài)。只讀01SPSTA0SPSTA1SPPINnSPI引腳控制寄存器。讀寫02SPPIN0SPPIN1SPPREnSPI波特率預(yù)分頻寄存器。該寄存器控制主機SCK的頻率。讀寫0SPPRE0SPPRE1SPRDATnSPI接收數(shù)據(jù)寄存器。該寄存器存放SPI口
49、接收到的數(shù)據(jù)。讀0SPRDAT0SPRDAT1SPTDATnSPI發(fā)送數(shù)據(jù)寄存器。該寄存器存放待SPI口發(fā)送的數(shù)據(jù)。讀寫0SPTDAT0SPTDAT16.4.3 SPI接口寄存器及操作1.寄存器第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 SPI寄存器描述SPI控制寄存器 SPCONn寄存器包含一些可編程位來控制SPI功能模塊的功能,該寄存器必須在數(shù)據(jù)傳輸之前進(jìn)行設(shè)定。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 SPI寄存器描述SPI狀態(tài)寄存器 SPSR寄存器為只讀寄存器,用于監(jiān)視SPI功能模塊的狀態(tài),包括一般性功能和異常狀況。第第6 6章章 嵌入式系統(tǒng)總線接口嵌入式系統(tǒng)總線接口 嵌入式系統(tǒng)設(shè)計嵌入式系統(tǒng)設(shè)計 SPI寄存器描述SPI引腳寄存器當(dāng)一個SPI系統(tǒng)被允許時,nSS之外的引腳的數(shù)據(jù)傳輸方向都由SPCONn的MSTR位控制,nSS引腳總是輸入。當(dāng)SPI是一個主設(shè)備是,nSS引腳用于檢測多主設(shè)備錯誤(如果SPPIN的ENMUL位被使能),另外還需要一個GPIO 來選擇從設(shè)備。如果SPI被配置為從設(shè)備,nSS引腳用來被選擇為從設(shè)備。第第6 6章章 嵌入式系統(tǒng)總線接口嵌
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 西安建筑科技大學(xué)華清學(xué)院《安裝工程計量與計價實訓(xùn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 鄭州輕工業(yè)大學(xué)《數(shù)據(jù)分析與大數(shù)據(jù)技術(shù)的數(shù)學(xué)基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 做賬實操-快遞公司加盟商保證金的賬務(wù)處理分錄
- 2025年江西省建筑安全員考試題庫附答案
- 四川建筑職業(yè)技術(shù)學(xué)院《建筑材料(B)》2023-2024學(xué)年第二學(xué)期期末試卷
- 中國地質(zhì)大學(xué)(北京)《熱力系統(tǒng)工程與仿真》2023-2024學(xué)年第二學(xué)期期末試卷
- 濟寧職業(yè)技術(shù)學(xué)院《植物營養(yǎng)與肥料學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 河南水利與環(huán)境職業(yè)學(xué)院《栽培與耕作學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 楊凌職業(yè)技術(shù)學(xué)院《飛行控制系統(tǒng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東文理職業(yè)學(xué)院《輻射防護(hù)課程設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 工期定額-民用建筑
- 黃土地質(zhì)災(zāi)害類型及其危害性評估
- 交際德語教程第二版A1Studio[21] 課后習(xí)題參考答案
- 最新修改 班組安全管理建設(shè)--5831模式通用課件
- 氣割、電氣焊作業(yè)的應(yīng)急救援預(yù)案
- 2018年柴油機大修工程量單
- 超級精美PPT模版美國經(jīng)典ppt模板(通用珍藏版2)
- 2022年“葉圣陶杯”全國中學(xué)生新作文大賽專用稿紙
- 中醫(yī)內(nèi)科方歌-八
- 氣動控制閥的定義分類及工作原理詳解
- 梯形練字格A4紙打印版
評論
0/150
提交評論