tft每日頭條

 > 生活

 > 嵌入式開發中的框架原理

嵌入式開發中的框架原理

生活 更新时间:2025-04-09 08:28:33
1,USART和UART

串行同步/異步收發傳輸器和串行異步收發器,兩者的區别在于USART可以作為同步通信接口,同步通信時會比UART多一個時鐘線,進行同步。在異步通信時二者無差别。串口包含 TTL 電平和 RS-232 電平兩種,嵌入式系統裡面,單片機的串口一般都是 TTL 電平。

TTL電平:工作電壓為5V,輸出電路中電壓大于等于(≥)2.4V為邏輯1;電壓小于等于(≤)0.4V為邏輯0,輸入電路:電壓大于等于(≥)2.0V為邏輯1;電壓小于等于(≤)0.8V為邏輯0;

RS232電平:RS232采用負邏輯電平,即-15V~-3V代表邏輯"1", 3V~ 15V代表邏輯"0"。這裡的電平,是TxD線(或者RxD線)相對于GND的電壓。

串口通信時數據按位傳輸,其協議也可以稱為:位協議,一般串口通信的數據幀格式為:

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)1

其中各位的含義如下:

  • 起始位:發送 1 位邏輯 0(低電平),開始傳輸數據。
  • 數據位:可以是 5~8 位的數據,先發低位,再發高位,一般常見的就是 8 位(1 個字節),其他的如 7 位的 ASCII 碼。
  • 校驗位:奇偶校驗,将數據位加上校驗位,1 的位數為偶數(偶校驗),1 的位數 4 為奇數(奇校驗)。
  • 停止位:停止位是數據傳輸結束的标志,可以是 1/1.5/2 位的邏輯 1(高電平)。
  • 空閑位:空閑時數據線為高電平狀态,代表無數據傳輸。

串口通信的速度由波特率決定。

2,SPI協議

高速串行同步全雙工總線協議,SPI通信接口由四根線構成,分别是MISO(主機輸入),MOSI(主機輸出),SCLK(時鐘線),CS(片選線)構成。适用于單主機多從機的通信模式。通過片選線的使能來确定是和哪一個從機通信。時鐘信号線SCLK隻能由主機控制,從機不能控制。

spi通信過程是兩個8位的移位寄存器數據轉移的過程,過程如下:

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)2

SPI接口的一個缺點:沒有指定的流控制,沒有應答機制确認是否接收到數據。

SPI的傳輸速度受時鐘頻率,cpu處理數據能力影響,目前最快可達50Mbps。

3,IIC協議

兩線式串行總線,由數據線SDA和時鐘線SCL構成的串行同步全雙工總線。IIC總線協議規定SDA數據線上的高電平必須在時鐘的高電平周期保持穩定,也就是說SDA數據線隻有在SCL低電平狀态才能改變。

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)3

IIC協議的起始和結束規定為在時鐘線為高電平時,數據線電平由高變低,為起始,由低變高為停止。

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)4

IIC在傳輸數據時遵循以下格式:在起始條件發生後,發送一個7位的從機地址,第8位是一個數據讀寫标志位,“0”表示發送,寫入數據,“1”表示請求數據,接着會收到一個從機發送的ACK響應,然後開始收發數據,數據以字節為單那位,每次發送八位,然後接受一個從機相應的ACK,直到停止信号出現

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)5

可能出現的傳輸格式:

1,主機發送器發送到從機接收器傳輸的方向不會改變

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)6

2,在第一個字節後 主機立即讀從機,在第一次響應時 主機發送變成了主機接受,從機接受變成了從機發送,第一次響應仍由從機産生 之前發送了一個不響應信号 A 的主機産生停止條件

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)7

3,複合格式 傳輸改變方向的時侯起始條件和從機地址都會被重複 但 R/ W 位取反 如果主機接收器發送一個重複起始條件它之前應該發送了一個不響應信号。

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)8

4.8080并口協議

LCD屏常用的時序為8080時序和6800時序, 6800總線又叫做摩托羅拉總線、8080時序也叫做英特爾總線。

Intel 總線的控制線有四根,RD 寫使能, WR 讀使能, ALE 地址鎖存, CS 片選。而 moto 總線隻有 三根,R/W 讀/寫,ALE 地址鎖存,CE 片使能。8080總線存在許多接口8/9/16/18位接口

8080模式LCD控制所需引腳:

CS :片選信号線

RS(D/I) :數據/命令選擇管腳(1:數據讀寫,0:命令讀寫)

WR :MPU向LCD寫入數據控制線

RD :MPU從LCD讀出數據控制線

DB[15:0] :16位雙向數據線

RST :硬件複位LCD信号

BL :LCD背光控制信号

IM0 :IM0=0時為16bit數據總線,IM0=1時為8bit數據總線

讀寫過程:

讀取:

LCD_CS = 0; //開始片選 LCD_RS = 1; //讀數據 LCD_WR = 1; //禁止寫 LCD_RD = 0; //上升沿讀數據 data = DATAIN();//讀取數據 LCD_RD = 1; //上升沿讀數據 LCD_CS = 1; //結束片選

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)9

寫入:

LCD_CS = 0; //開始片選 LCD_RS = 1; //寫數據 LCD_RD = 1; //禁止讀 DATAOUT(Data); //輸出數據 LCD_WR = 0; //寫入開始 LCD_WR = 1; //寫入結束 LCD_CS = 0; //結束片選

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)10

5,單總線

單總線是美國DALLAS公司推出的外圍串行擴展總線技術。與SPI、I²C串行數據通信方式不同.它采用單根信号線,既傳輸時鐘又傳輸數據,而且數據傳輸是雙向的,具有節省I/O口線、資源結構簡單、成本低廉、便于總線擴展和維護等諸多優點。

1-Wire 産品特點 :

  • 通過單線接口提供器件控制及操作
  • 每個器件具有唯一的工廠光刻ID
  • 通過單總線供電(“寄生電源”)
  • 可挂接多點:單一總線可挂接多個器件
  • 提供額外的ESD保護

以DHT11溫濕度模塊為例:

用戶MCU發送一次開始信号後,DHT11從低功耗模式轉換到高速模式,等待 主機開始信号結束後,DHT11發送響應信号,送出40bit的數據,并觸發一次信号采 集,用戶可選擇讀取部分數據.從模式下,DHT11接收到開始信号觸發一次溫濕度 采集,如果沒有接收到主機發送開始信号,DHT11不會主動進行溫濕度采集.采集 數據後轉換到低速模式。

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)11

總線空閑狀态為高電平,主機把總線拉低等待DHT11響應,主機把總線拉低必 須大于18毫秒,保證DHT11能檢測到起始信号。DHT11接收到主機的開始信号後, 等待主機開始信号結束,然後發送80us低電平響應信号.主機發送開始信号結束後, 延時等待20-40us後, 讀取DHT11的響應信号,主機發送開始信号後,可以切換到輸 入模式,或者輸出高電平均可, 總線由上拉電阻拉高

嵌入式開發中的框架原理(嵌入式常用通訊協議彙總)12

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved