久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3965|回復: 0
收起左側

MCU通信技術:SPI UART TWI I2C三種串行總線協議

[復制鏈接]
ID:86860 發表于 2015-7-26 01:41 | 顯示全部樓層 |閱讀模式
1.SPI(Serial PeripheralInterface:串行外設接口)
管腳:SS/SCK/MOSI(SDO)/MISO(SDI)
結構:一個始終發生器、兩個移位寄存器(主從各一個);


使用:初始化(完成對兩器件器件SPI使能、主從設置、SCK設置、IO方向、采樣沿);
      編寫數據讀/寫函數(只要發生一次數據傳送,兩器件的SPIF位就會置位,從而讀寫);
       必要時加入中斷程序;
注意:兩個寄存器是互通的,其工作過程見網硬盤,從百度文庫搜集。因此主機讀從機數據必須發送兩個字節,第一個是命令字節,告訴從機要準備數據于從機SPDR中,第二個是任意字節,這樣發送了后就會把從機SPDR中的字節交換過來,從而實現數據交換。
擴展:


(2) I2C(INTER ICBUS)
   管腳: SDA/SCL
   結構:

UART(UniversalAsynchronous ReceiverTransmitter:通用異步收發器)
RXD/TXD/GND;
(1) 特點
  Master mode and slavemode
  Bi-directionalmode
Slaveselect output
  Modefault error flag with CPU interruptcapability
  Double-buffereddata register
Serialclock with programmable polarity and phase
  Controlof SPI operation during wait mode

SPI 有兩種模式,Normal Mode and BidirectionalMode,包括以下幾根線:


SS     Slave Select
SCK   Serial Clock
MOSI Master Output, Slave Input
MISO Master Input, Slave Output


MOMI Master Output, Master Input
SISO   SlaveInput, Slave Output

其中前四根線用于NormalMode ,常用的也是4根線的Normal Mode

MOSI
This pin is used to transmit data out of the SPI module when itis configured as a Master and receive data
when it is configured as Slave.
MISO
This pin is used to transmit data out of the SPI module when itis configured as a Slave and receive data
when it is configured as Master.
SS
This pin is used to output the select signal from the SPImodule to another peripheral with which a data
transfer is to take place when its configured as a Masterandits used as an input to receive the slave select
signal when the SPI is configured as Slave.
SCK
This pin is used to output the clock with respect to which theSPI transfers data or receive clock in case of
Slave.

SPI 是一種允許一個主設備啟動一個與從設備的同步通訊的協議,從而完成數據的交換。也就是SPI是一種規定好的通訊方式。這種通信方式的優點是占用端口較少,一般4根就夠基本通訊了。同時傳輸速度也很高。一般來說要求主設備要有SPI控制器(但可用模擬方式),就可以與基于SPI的芯片通訊了。
   SPI 的通信原理很簡單,它需要至少4根線,事實上3根也可以。也是所有基于SPI的設備共有的,它們是SDI(數據輸入),SDO(數據輸出),SCK(時 鐘),CS(片選)。其中CS是控制芯片是否被選中的,也就是說只有片選信號為預先規定的使能信號時(高電位或低電位),對此芯片的操作才有效。這就允許在同一總線上連接多個SPI設備成為可能。
    接下來就負責通訊的3根線了。通訊是通過數據交換完成的,這里先要知道SPI是串行通訊協議,也就是說數據是一位一位的傳輸的。這就是SCK時鐘線存在的原 因,由SCK提供時鐘脈沖,SDISDO則基于此脈沖完成數據傳輸。數據輸出通過SDO線,數據在時鐘上沿或下沿時改變,在緊接著的下沿或上沿被讀取。 完成一位數據傳輸,輸入也使用同樣原理。這樣,在至少8次時鐘信號的改變(上沿和下沿為一次),就可以完成8位數據的傳輸。
    要注意的是,SCK信號線只由主設備控制,從設備不能控制信號線。同樣,在一個基于SPI的設備中,至少有一個主控設備。
    這樣傳輸的特點:這樣的傳輸方式有一個優點,與普通的串行通訊不同,普通的串行通訊一次連續傳送至少8位數據,而SPI允許數據一位一位的傳送,甚至允許暫停,因為SCK時鐘線由主控設備控制,當沒有時鐘跳變時,從設備不采集或傳送數據。也就是說,主設備通過對SCK時鐘線的控制可以完成對通訊的控制。
    SPI還是一個數據交換協議:因為SPI的數據輸入和輸出線獨立,所以允許同時完成數據的輸入和輸出。
    不同的SPI設備的實現方式不盡相同,主要是數據改變和采集的時間不同,在時鐘信號上沿或下沿采集有不同定義,具體請參考相關器件的文檔。

I2C

   只要求兩條總線線路:一條串行數據線SDA一條串行時鐘線SCL
   每個連接到總線的器件都可以通過唯一的地址和一直存在的簡單的主機從機關系軟件設定地址主機可以作為主機發送器或主機接收器
   它是一個真正的多主機總線如果兩個或更多主機同時初始化數據傳輸可以通過沖突檢測和仲裁,防止數據被破壞
   串行的8位雙向數據傳輸位速率在標準模式下可達100kbit/s快速模式下可達400kbit/s高速模式下可達3.4Mbit/s
   片上的濾波器可以濾去總線數據線上的毛刺波保證數據完整
   連接到相同總線的IC數量只受到總線的最大電容400pF限制

UART

UART總線是異步串口,因此一般比前兩種同步串口的結構要復雜很多,一般由波特率產生器(產生的波特率等于傳輸波特率的16)UART接收器、UART發送器組成,硬件上由兩根線,一根用于發送,一根用于接收。
    顯然,如果用通用IO口模擬UART總線,則需一個輸入口,一個輸出口。
UART常用于控制計算機與串行設備的芯片。有一點要注意的是,它提供了RS-232C數據終端設備接口,這樣計算機就可以和調制解調器或其它使用RS-232C接口的串行設備通信了。
明顯可以看出,SPIUART可以實現全雙工,但I2C不行

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久大全 | 欧美一级淫片免费视频黄 | 日韩免费视频一区二区 | 欧美激情亚洲 | 国产精品久久久久久网站 | 欧美激情网站 | 91精品国产91久久久久久丝袜 | 国产成人啪免费观看软件 | 亚洲欧美久久 | 日韩日韩日韩日韩日韩日韩日韩 | 成av人电影在线 | 国产精品国产a级 | 青青草亚洲 | 国产精品一区二区久久精品爱微奶 | 久久精品国产一区二区电影 | 日本一区二区三区在线观看 | 一本在线 | 日韩色图在线观看 | 亚洲一区二区综合 | 中文字幕不卡在线观看 | 国产xxxx岁13xxxxhd | 欧美中文字幕在线 | 一级a性色生活片久久毛片波多野 | 欧美色综合一区二区三区 | 国产午夜精品久久久久免费视高清 | 九九在线视频 | 日韩视频一区二区 | 日本久久黄色 | 午夜成人免费视频 | www.操.com| 粉嫩国产精品一区二区在线观看 | 黄网站涩免费蜜桃网站 | 久久久久se| 日韩在线视频精品 | 日日夜夜天天 | 日本五月婷婷 | 亚洲有码转帖 | 久久综合婷婷 | 免费在线h视频 | 中文日韩字幕 | 91电影在线 |