0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

針對單片機(jī)串行通信技術(shù)全解析

MCU開發(fā)加油站 ? 來源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2018-05-07 09:08 ? 次閱讀

1、什么是串行通信?

串行通信(英語:Serial communication)是指在計(jì)算機(jī)總線或其他數(shù)據(jù)通道上,每次傳輸一個位元數(shù)據(jù),并連續(xù)進(jìn)行以上單次過程的通信方式。與之對應(yīng)的是并行通信,它在串行端口上通過一次同時傳輸若干位元數(shù)據(jù)的方式進(jìn)行通信。

簡言之:串行通訊就是排成一隊(duì)走,并行就是排成一列走,如下圖

2、同步串行通信(Synchronous serial communication)和異步串行通信(Asynchronous serial communication)

  1. 發(fā)送端在發(fā)送串行數(shù)據(jù)的同時,提供一個時鐘信號,并按照一定的約定(例如在時鐘信號的上升沿的時候,將數(shù)據(jù)發(fā)送出去)發(fā)送數(shù)據(jù),接收端根據(jù)發(fā)送端提供的時鐘信號,以及大家的約定,接收數(shù)據(jù)。這就是常說的同步串行通信(Synchronous serial communication),I2C、SPI等有時鐘信號的協(xié)議,都屬于這種通信方式。

  2. 發(fā)送端在數(shù)據(jù)發(fā)送之前和之后,通過特定形式的信號(例如START信號和STOP信號),告訴接收端,可以開始(或者停止)接收數(shù)據(jù)了。與此同時,收發(fā)兩方會約定一個數(shù)據(jù)發(fā)送的速度(就是大名鼎鼎的波特率),發(fā)送端在發(fā)送START信號之后,就按照固定的節(jié)奏發(fā)送串行數(shù)據(jù),與此同時,接收端在收到START信號之后,也按照固定的節(jié)奏接收串行數(shù)據(jù)。這就是常說的異步串行通信(Asynchronous serial communication)。

3、單片機(jī)上常用的串行通訊接口

? SPI:高速同步串行口。3~4線接口,收發(fā)獨(dú)立、可同步進(jìn)行串行外圍設(shè)備接口,是Motorola公司推出的一種同步串行通訊方式,是一種三線同步總線,因其硬件功能很強(qiáng),與SPI有關(guān)的軟件就相當(dāng)簡單,使CPU有更多的時間處理其他事務(wù)。SPI通常有SCK時鐘,STB片選,DATA數(shù)據(jù)信號三個信號。 I2C通常有 SDA數(shù)據(jù)和SCL時鐘兩個信號。SPI總線真正實(shí)現(xiàn)了全雙工數(shù)據(jù)傳輸,SPI 有3線跟4線兩種,4線的話,就是多了一條叫SDC的線,用來告知從設(shè)備現(xiàn)在傳輸?shù)氖菙?shù)據(jù)還是指令。這個接口較快,可以傳輸較連續(xù)的數(shù)據(jù)。SPI的速度要大于IIC,一般用在產(chǎn)品內(nèi)部元件之間的高速數(shù)據(jù)通信上面,如大容量存儲器等。

? UART通用異步串行口,一般我們說的單片機(jī)上的“串口”大多是特指UART。可以全雙工通信,線數(shù)也比較少。數(shù)據(jù)是異步傳輸?shù)模瑢﹄p方的時序要求比較嚴(yán)格,通信速度也不是很快。在多機(jī)(單片機(jī)與單片機(jī)之間)通信上面用的最多。

? IIC:一種串行傳輸方式,三線制,網(wǎng)上可找到其通信協(xié)議和用法的,IIC 接口的協(xié)議里面包括設(shè)備地址信息,可以同一總線上連接多個從設(shè)備,通過應(yīng)答來互通數(shù)據(jù)及命令。但是傳輸速率有限,標(biāo)準(zhǔn)模式下可達(dá)到100Kbps,快速模式下可達(dá)到400Kbps,高速模式下達(dá)到Mbps,不能實(shí)現(xiàn)全雙工,不適合傳輸很多的數(shù)據(jù)。

? USB這個肯定是很熟悉的了,幾乎每天都打交道。通用串行總線(英語:Universal Serial Bus,縮寫:USB)是連接計(jì)算機(jī)系統(tǒng)與外部設(shè)備的一種串口總線標(biāo)準(zhǔn),也是一種輸入輸出接口的技術(shù)規(guī)范,被廣泛地應(yīng)用于個人電腦和移動設(shè)備等信息通訊產(chǎn)品,并擴(kuò)展至攝影器材、數(shù)字電視(機(jī)頂盒)、游戲機(jī)等其它相關(guān)領(lǐng)域。很多單片機(jī)上也帶有USB接口例如ST的STM32

以上各種接口的通訊協(xié)議是不一樣的,如UART最簡單的協(xié)議是一個起始位一個終止位中間八個數(shù)據(jù)位,而USB的話通訊協(xié)議就復(fù)雜的多的多。

4、串行接口電氣標(biāo)準(zhǔn)。

TTL電平:TTL電平指的是低電平為0,高電平為1(+5V電平),大多數(shù)的單片機(jī)自帶的串口用的就是這種電平。一般用于芯片之間通信,TTL電平通信距離較短。

UART使用的是單片機(jī)自帶的電平,單片機(jī)是什么電平標(biāo)準(zhǔn)那么該單片機(jī)上的UART就是什么電平標(biāo)準(zhǔn),例如51單片機(jī)的UART就是用的TTL電平。而這種電平是沒辦法用于遠(yuǎn)程數(shù)據(jù)傳輸?shù)?,為了能讓串行?shù)據(jù)能夠傳輸?shù)母h(yuǎn),我們需要更加強(qiáng)大的傳輸標(biāo)準(zhǔn),于是就有了RS-232、RS-422、RS485等。

? RS-232-C

RS-232-C也稱標(biāo)準(zhǔn)串口,是目前最常用的一種串行通訊接口。它是在1970年由美國電子工業(yè)協(xié)會(EIA)聯(lián)合貝爾系統(tǒng)、 調(diào)制解調(diào)器廠家及計(jì)算機(jī)終端生產(chǎn)廠家共同制定的用于串行通訊的標(biāo)準(zhǔn)。它的全名是“數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE)之間串行二進(jìn)制數(shù)據(jù)交換接口技術(shù)標(biāo)準(zhǔn)”。傳統(tǒng)的RS-232-C接口標(biāo)準(zhǔn)有22根線,采用標(biāo)準(zhǔn)25芯D型插頭座。自IBM PC/AT開始使用簡化了的9芯D型插座。至今25芯插頭座現(xiàn)代應(yīng)用中已經(jīng)很少采用。電腦一般有兩個串行口:COM1和COM2,9針D形接口通常在計(jì)算機(jī)后面能看到?,F(xiàn)在有很多手機(jī)數(shù)據(jù)線或者物流接收器都采用COM口與計(jì)算機(jī)相連。

? RS-422

為改進(jìn)RS-232通信距離短、速率低的缺點(diǎn),RS-422定義了一種平衡通信接口,將傳輸速率提高到10Mb/s,傳輸距離延長到4000英尺(速率低于100kb/s時),并允許在一條平衡總線上連接最多10個接收器。RS- 422是一種單機(jī)發(fā)送、多機(jī)接收的單向、平衡傳輸規(guī)范,被命名為TIA/EIA-422-A標(biāo)準(zhǔn)。

? RS-485

為擴(kuò)展應(yīng)用范圍,EIA又于1983年在RS-422基礎(chǔ)上制定了RS-485 標(biāo)準(zhǔn),增加了多點(diǎn)、雙向通信能力,即允許多個發(fā)送器連接到同一條總線上,同時增加了發(fā)送器的驅(qū)動能力和沖突保護(hù)特性,擴(kuò)展了總線共模范圍,后命名為 TIA/EIA-485-A標(biāo)準(zhǔn)。

下圖是一般傳輸過程:單片機(jī)匹配電平到RS-232,通過RS-232傳輸,再從RS-232匹配到TTL再給另一個單片機(jī)。

5、其他

各種串行通訊是可以相互轉(zhuǎn)換的,如下圖中我們最經(jīng)常使用的CH340芯片就能夠把USB轉(zhuǎn)成TTL電平的UART串口通訊。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • RS485
    +關(guān)注

    關(guān)注

    39

    文章

    1134

    瀏覽量

    82003
  • 串行通訊
    +關(guān)注

    關(guān)注

    2

    文章

    77

    瀏覽量

    16341

原文標(biāo)題:單片機(jī)串行通信全解析

文章出處:【微信號:mcugeek,微信公眾號:MCU開發(fā)加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    單片機(jī)串行通信發(fā)射機(jī)

    單片機(jī)串行通信發(fā)射機(jī) 我所做的單片機(jī)串行通信發(fā)射機(jī)
    發(fā)表于 03-30 14:53 ?73次下載

    51單片機(jī)串行通信口原理解析

    51單片機(jī)串行通信口原理解析 MCS-51單片機(jī)內(nèi)部有一個全雙工的串行
    發(fā)表于 03-17 16:38 ?1.1w次閱讀
    51<b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>串行</b><b class='flag-5'>通信</b>口原理<b class='flag-5'>解析</b>

    單片機(jī)串行口的并行通信技術(shù)

    單片機(jī)串行口是最常用的端口, 對于存在兩個或多個串行口的單片機(jī)來說, 充分利用串行口進(jìn)行通信
    發(fā)表于 12-09 15:19 ?103次下載
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>串行</b>口的并行<b class='flag-5'>通信</b><b class='flag-5'>技術(shù)</b>

    單片機(jī)單片機(jī)課程設(shè)計(jì)-雙機(jī)串行通信

    串行通信單片機(jī)的一個重要應(yīng)用。本次課程設(shè)計(jì)就是要利用單片機(jī)來完成一個系統(tǒng),實(shí)現(xiàn)雙片單片機(jī)串行
    發(fā)表于 04-13 14:53 ?57次下載

    單片機(jī)擴(kuò)展串行通信資料

    單片機(jī)擴(kuò)展串行通信資料,很好的設(shè)計(jì)資料,快來下載學(xué)習(xí)吧。
    發(fā)表于 05-09 17:35 ?26次下載

    FPGA與單片機(jī)實(shí)現(xiàn)數(shù)據(jù)串行通信的解決方案

    本文針對由FPGA構(gòu)成的高速數(shù)據(jù)采集系統(tǒng)數(shù)據(jù)處理能力弱的問題,提出FPGA與單片機(jī)實(shí)現(xiàn)數(shù)據(jù)串行通信的解決方案。
    發(fā)表于 02-11 14:30 ?1.1w次閱讀

    基于AVR單片機(jī)的SPI串行通信的應(yīng)用

    基于AVR單片機(jī)的SPI串行通信的應(yīng)用
    發(fā)表于 09-01 11:23 ?16次下載
    基于AVR<b class='flag-5'>單片機(jī)</b>的SPI<b class='flag-5'>串行</b><b class='flag-5'>通信</b>的應(yīng)用

    arm系列單片機(jī)與pc機(jī)之間的串行通信

    arm系列單片機(jī)與pc機(jī)之間的串行通信
    發(fā)表于 09-01 16:58 ?2次下載
    arm系列<b class='flag-5'>單片機(jī)</b>與pc<b class='flag-5'>機(jī)</b>之間的<b class='flag-5'>串行</b><b class='flag-5'>通信</b>

    關(guān)于單片機(jī)串行通信發(fā)射機(jī)

    關(guān)于單片機(jī)串行通信發(fā)射機(jī)
    發(fā)表于 09-04 08:59 ?14次下載
    關(guān)于<b class='flag-5'>單片機(jī)</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b>發(fā)射<b class='flag-5'>機(jī)</b>

    單片機(jī)串行通信發(fā)射機(jī)單片機(jī)串行通信發(fā)射機(jī)

    單片機(jī)串行通信發(fā)射機(jī)單片機(jī)串行通信發(fā)射
    發(fā)表于 09-04 11:17 ?16次下載
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b>發(fā)射<b class='flag-5'>機(jī)</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b>發(fā)射<b class='flag-5'>機(jī)</b>

    基于單片機(jī)串行口的并行通信技術(shù)

    基于單片機(jī)串行口的并行通信技術(shù)
    發(fā)表于 09-05 08:43 ?4次下載
    基于<b class='flag-5'>單片機(jī)</b><b class='flag-5'>串行</b>口的并行<b class='flag-5'>通信</b><b class='flag-5'>技術(shù)</b>

    單片機(jī)串行通信及SPI通信教程

    單片機(jī)串行通信及SPI通信
    發(fā)表于 12-20 12:18 ?11次下載

    51單片機(jī)串行通信的原理解析資料下載

    電子發(fā)燒友網(wǎng)為你提供51單片機(jī)串行通信的原理解析資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、用戶指南、解決方案等資料,希望可以幫助到廣
    發(fā)表于 04-20 08:42 ?9次下載
    51<b class='flag-5'>單片機(jī)</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b>的原理<b class='flag-5'>解析</b>資料下載

    80C51單片機(jī)串行通信講解

    80C51單片機(jī)串行通信講解(通信網(wǎng)絡(luò)與信息技術(shù)2009)-為80C51單片機(jī)
    發(fā)表于 09-30 11:44 ?31次下載
    80C51<b class='flag-5'>單片機(jī)</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b>講解

    如何實(shí)現(xiàn)51單片機(jī)與PC機(jī)串行通信

    51單片機(jī)與PC機(jī)串行通信是一種常見的通信方式,它允許單片機(jī)通過
    的頭像 發(fā)表于 10-21 11:35 ?113次閱讀