18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

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

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

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

串行通信相關(guān)的基礎(chǔ)知識(shí)

友晶FPGA ? 來(lái)源:友晶FPGA ? 2025-10-15 10:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

串行通信是電子設(shè)備中數(shù)據(jù)交換的基石。最常見(jiàn)的串行通信協(xié)議有UART,SPI,I2C等。

本文將介紹串行通信相關(guān)的基礎(chǔ)知識(shí)。為后面用FPGA實(shí)現(xiàn)這些串行協(xié)議的案例做準(zhǔn)備。

并行通信和串行通信

并行通信:數(shù)據(jù)各個(gè)位用多條數(shù)據(jù)線同時(shí)進(jìn)行傳輸 (傳輸速度快,但占用引腳資源多)。

1a98167a-9dc8-11f0-8c8f-92fbcf53809c.png

串行通信:數(shù)據(jù)分成一位一位的形式在一條數(shù)據(jù)線上逐個(gè)傳輸(通信線路簡(jiǎn)單,占用資源少,但速度慢)。

1af69dc6-9dc8-11f0-8c8f-92fbcf53809c.png

同步通信和異步通信

同步通信:帶時(shí)鐘同步信號(hào)的數(shù)據(jù)傳輸,發(fā)送方和接收方在同一時(shí)鐘的控制下同步傳輸數(shù)據(jù)。

1b50a550-9dc8-11f0-8c8f-92fbcf53809c.png

異步通信:不帶時(shí)鐘同步信號(hào)的數(shù)據(jù)傳輸,發(fā)送方和接收方使用各自的時(shí)鐘控制數(shù)據(jù)的發(fā)送和接收過(guò)程。

1bacc808-9dc8-11f0-8c8f-92fbcf53809c.png

在沒(méi)有時(shí)鐘同步的情況下,收發(fā)雙方約定好 ,比如發(fā)送方在每秒傳輸 115200個(gè) 數(shù)據(jù),那么,接收方也在每秒接收 115200個(gè) 數(shù)據(jù)。

異步通信需要起始位和停止位來(lái)界定一個(gè)數(shù)據(jù)幀。雙方時(shí)鐘誤差累積會(huì)導(dǎo)致誤碼,故單次傳輸數(shù)據(jù)量不宜過(guò)大(通?!?0位)。

單工、半雙工、全雙工

串行通信的傳輸方向有如下三種:

1c04cbf2-9dc8-11f0-8c8f-92fbcf53809c.png

單工通信:數(shù)據(jù)只能單向傳輸;

半雙工通信:數(shù)據(jù)可以雙向傳輸,但不能同時(shí)進(jìn)行(如I2C);

全雙工通信:數(shù)據(jù)可以同時(shí)雙向傳輸(如UART、SPI)。

常見(jiàn)的串行通信接口

1c608d20-9dc8-11f0-8c8f-92fbcf53809c.png

前面已經(jīng)發(fā)布過(guò)FPGA實(shí)現(xiàn)SPI協(xié)議的相關(guān)案例,有興趣可以參考:

05-基于FPGA和LTC2308的數(shù)字電壓表設(shè)計(jì)-用FPGA實(shí)現(xiàn)SPI協(xié)議通訊

04-基于FPGA和LTC2308的數(shù)字電壓表設(shè)計(jì)-SPI協(xié)議詳解

近期將發(fā)布不同F(xiàn)PGA開(kāi)發(fā)板上的串口應(yīng)用案例的設(shè)計(jì)。

后期還將發(fā)布基于FPGA的HDMI發(fā)送器(ADV7513)的I2C協(xié)議控制相關(guān)的設(shè)計(jì),敬請(qǐng)期待。

單端傳輸和差分傳輸

單端傳輸:用信號(hào)線對(duì)GND的電壓值來(lái)表示邏輯"0"和"1";

差分傳輸:用兩根信號(hào)線來(lái)傳輸一路信號(hào),兩根信號(hào)線上傳輸?shù)男盘?hào)幅值相等,相位差為180°(極性相反),用它們的差值來(lái)表示邏輯"0"和"1"。

1cc32f48-9dc8-11f0-8c8f-92fbcf53809c.png

差分傳輸利于消除共模干擾(共模干擾是指在導(dǎo)線與地之間產(chǎn)生一個(gè)與有用信號(hào)同向的無(wú)用電信號(hào),如下所示)。

1d274eba-9dc8-11f0-8c8f-92fbcf53809c.png

從兩信號(hào)線差值可知引入的噪聲并不會(huì)影響接收端判斷傳輸?shù)臄?shù)據(jù)。

UART協(xié)議

UART 是universal asynchronous receiver-transmitter的縮寫(xiě),是一種采用全雙工異步串行通信的通信方式。

UART傳輸格式

UART協(xié)議層的通信協(xié)議數(shù)據(jù)格式如下:

1d8870a0-9dc8-11f0-8c8f-92fbcf53809c.png

空閑:高電平(總線空閑);

起始位:低電平;

數(shù)據(jù)位:先發(fā)低位,后發(fā)高位,數(shù)據(jù)位可以是5位,6位,7位,8位(數(shù)據(jù)位具體是多少位由串口收發(fā)雙方提前約定好);

校驗(yàn)位:分奇校驗(yàn)和偶校驗(yàn),該位可省略;

停止位:1位、1.5位、2位可選。

UART傳輸速率

串口通信的速率用波特率表示,它表示每秒傳輸?shù)姆?hào)數(shù),單位是Bd。

因?yàn)閁ART編碼方式(采用NRZ)非常簡(jiǎn)單,一個(gè)符號(hào)就是一個(gè)比特。所以,當(dāng)人們說(shuō)“串口速率為115200”時(shí),實(shí)際指的是波特率為115200 Baud,同時(shí)比特率也是115200 bps。

常用的波特率有9600、19200、38400、57600 、115200。

串口傳輸?shù)奈恢芷?/strong>

位周期代表串口傳輸一個(gè)bit所占用的時(shí)間。假設(shè)系統(tǒng)時(shí)鐘是50MHz,波特率是115200Bd,那么串口發(fā)送和接收時(shí),數(shù)據(jù)的每個(gè)位將占用1/115200=8.68us,每個(gè)位占用50000000/115200 ≈ 434個(gè)系統(tǒng)時(shí)鐘周期。

奇偶校驗(yàn)

奇偶校驗(yàn)(Parity Check)是一種驗(yàn)證數(shù)據(jù)傳輸正確與否的方法。

奇校驗(yàn)(Odd Parity):通過(guò)設(shè)置校驗(yàn)位為"1"或"0",讓傳輸?shù)臄?shù)據(jù)(包含校驗(yàn)位)中"1"的個(gè)數(shù)為奇數(shù)。

偶校驗(yàn)(Even Parity):通過(guò)設(shè)置校驗(yàn)位為"1"或"0",讓傳輸?shù)臄?shù)據(jù)(包含校驗(yàn)位)中"1"的個(gè)數(shù)為偶數(shù)。

以發(fā)送數(shù)據(jù)"10101010"為例(數(shù)據(jù)中包含4個(gè)"1"),奇校驗(yàn)時(shí)校驗(yàn)位應(yīng)設(shè)置為"1":

1de48660-9dc8-11f0-8c8f-92fbcf53809c.png

偶校驗(yàn)時(shí)校驗(yàn)位應(yīng)設(shè)置為"0":

1e3c106a-9dc8-11f0-8c8f-92fbcf53809c.png

奇偶校驗(yàn)的缺點(diǎn):無(wú)法檢測(cè)雙位錯(cuò)誤;沒(méi)辦法確定哪一位出錯(cuò);不能修正。所以一般應(yīng)用中有的人會(huì)直接舍棄校驗(yàn)位。

消除累計(jì)誤差

UART發(fā)送方和接收方使用各自的時(shí)鐘,在這種情況下容易產(chǎn)生累計(jì)誤差。比如發(fā)送方首先發(fā)送1-bit數(shù)據(jù),它計(jì)時(shí)了1s后開(kāi)始發(fā)送第二個(gè)1-bit數(shù)據(jù),可是接收方在接收第一個(gè)1-bit數(shù)據(jù)時(shí),它只計(jì)時(shí)了0.9s,發(fā)送方在發(fā)送完一個(gè)8-bit數(shù)據(jù)后,會(huì)產(chǎn)生誤差;如果第二次發(fā)送數(shù)據(jù)時(shí)又緊接著發(fā),那誤差累計(jì)就會(huì)導(dǎo)致誤差越來(lái)越大。

1e97eb7e-9dc8-11f0-8c8f-92fbcf53809c.png

為了消除累計(jì)誤差,UART一次只能發(fā)送一個(gè)字節(jié)的數(shù)據(jù),不能連續(xù)發(fā)送多個(gè)字節(jié)數(shù)據(jù)。

電平轉(zhuǎn)換

UART是通信協(xié)議,它定義了數(shù)據(jù)的格式。UART通常以 TTL/CMOS 電平在芯片之間傳輸。其邏輯 1 是 3.3V/5V,邏輯 0 是 0V。它只在板級(jí)或極短距離內(nèi)有效,因?yàn)?TTL 電平抗干擾能力差,傳輸距離短。

想要UART通信抗干擾能力強(qiáng),傳輸距離變遠(yuǎn),在物理層上需要采用RS-232, RS-422, RS-485標(biāo)準(zhǔn)進(jìn)行UART信號(hào)傳輸。

1ef27436-9dc8-11f0-8c8f-92fbcf53809c.png

FPGA 的 UART 模塊(TTL 電平)不能直接接 RS-232 或 RS-422/485 網(wǎng)絡(luò),需要一個(gè) “電平轉(zhuǎn)換芯片” 作為橋梁。

就拿DE2-115開(kāi)發(fā)板上的RS232接口來(lái)說(shuō),RS232的電平使用負(fù)邏輯電平,和FPGA 的電平(TTL)不一樣,需要中間的轉(zhuǎn)換芯片,DE2-115開(kāi)發(fā)板采用的是ZT3232LEEY,將+-15v的邏輯電平轉(zhuǎn)換為T(mén)TL電平。

RS-232 、 RS-422和RS-485的物理接口一般采用DB9接口或者鳳凰頭接口(接口形式不固定,也有其他物理接口比如網(wǎng)口等)。

DB9接口:

鳳凰頭接口:

這是 RS-232、RS-422 和 RS-485 標(biāo)準(zhǔn)在最常見(jiàn)的 DB9 接口上的物理接口引腳定義表格:

200fb5e0-9dc8-11f0-8c8f-92fbcf53809c.png

但DB9的體積比較大,為了節(jié)省開(kāi)發(fā)板的空間,現(xiàn)在大多用USB口替代,比如C5G和TSP開(kāi)發(fā)板,分別用FT232R和CP2102N來(lái)作為USB電平和TTL電平之間的轉(zhuǎn)換,以及uart協(xié)議和USB協(xié)議之間的轉(zhuǎn)換。

具體流程如下:

FPGA 仍通過(guò) UART (TTL) 發(fā)送數(shù)據(jù)。

數(shù)據(jù)發(fā)送給 USB轉(zhuǎn)UART芯片。

該芯片將簡(jiǎn)單的 UART 協(xié)議數(shù)據(jù)打包成復(fù)雜的 USB 協(xié)議數(shù)據(jù)包。

電腦接收到 USB 數(shù)據(jù)包后,需要安裝驅(qū)動(dòng)程序,將其解包還原成 UART 數(shù)據(jù),并在操作系統(tǒng)中創(chuàng)建一個(gè)虛擬串口(如 COM3)。

這樣,上位機(jī)軟件就可以像操作傳統(tǒng)串口一樣,通過(guò)這個(gè)虛擬串口與 FPGA 通信了。

所以,當(dāng)我們?cè)谠O(shè)計(jì)FPGA串口收發(fā)的時(shí)候,只需要按UART協(xié)議收發(fā)數(shù)據(jù),CH340G、FT232R和CP2102N芯片會(huì)幫我們完成uart與外部USB設(shè)備之間信號(hào)轉(zhuǎn)換。

TSP開(kāi)發(fā)板的USB轉(zhuǎn)UART橋接芯片采用CP2102N,C5G開(kāi)發(fā)板采用FT232R,DE10-Standard開(kāi)發(fā)板采用CH340G,DE23-Lite開(kāi)發(fā)板采用FT2232H。

后續(xù)即將發(fā)布:

2-基于TSP 開(kāi)發(fā)板的FPGA 串口通信設(shè)計(jì) (CP2102N)

3-基于DE10-Standard 開(kāi)發(fā)板的FPGA 串口通信設(shè)計(jì) (CH340G)

4-基于DE23-Lite 開(kāi)發(fā)板的FPGA 串口通信設(shè)計(jì) (FT2232H)

5-基于C5G 開(kāi)發(fā)板的FPGA 串口通信設(shè)計(jì) (采用Nios II控制Intel Uart IP進(jìn)行串口收發(fā))

本文知識(shí)點(diǎn)總結(jié)如下:

206b2592-9dc8-11f0-8c8f-92fbcf53809c.png

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

    關(guān)注

    1650

    文章

    22211

    瀏覽量

    627617
  • I2C
    I2C
    +關(guān)注

    關(guān)注

    28

    文章

    1543

    瀏覽量

    129983
  • uart
    +關(guān)注

    關(guān)注

    22

    文章

    1288

    瀏覽量

    105715
  • 同步通信
    +關(guān)注

    關(guān)注

    0

    文章

    29

    瀏覽量

    9432
  • 串行通信
    +關(guān)注

    關(guān)注

    4

    文章

    599

    瀏覽量

    36855

原文標(biāo)題:1-串行通信基礎(chǔ)知識(shí)

文章出處:【微信號(hào):友晶FPGA,微信公眾號(hào):友晶FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    通信技術(shù)基礎(chǔ)知識(shí)介紹

    通信技術(shù)基礎(chǔ)知識(shí)介紹 電信網(wǎng)(telecommunication network)是構(gòu)成多個(gè)用戶相互通信的多個(gè)電信系統(tǒng)互連的通信體系,是人類(lèi)實(shí)現(xiàn)遠(yuǎn)距離
    發(fā)表于 02-23 16:25 ?1.6w次閱讀

    串行通信基礎(chǔ)知識(shí)

    摘要:串行數(shù)據(jù)通信要解決兩個(gè)關(guān)鍵技術(shù)問(wèn)題,一個(gè)是數(shù)據(jù)傳送,另一個(gè)是數(shù)據(jù)轉(zhuǎn)換。所謂數(shù)據(jù)傳送就是指數(shù)據(jù)以什么形式進(jìn)行傳送。所謂數(shù)據(jù)轉(zhuǎn)換就是指單片機(jī)在接受數(shù)據(jù)時(shí),如何把接收到的串行數(shù)據(jù)轉(zhuǎn)化為并行數(shù)據(jù),單片機(jī)在發(fā)送數(shù)據(jù)時(shí),如何把并行數(shù)據(jù)轉(zhuǎn)換為
    發(fā)表于 07-31 23:27

    電子通信技術(shù)基礎(chǔ)知識(shí)

    電子通信技術(shù)基礎(chǔ)知識(shí)
    發(fā)表于 08-20 09:58

    移動(dòng)通信基礎(chǔ)知識(shí)

    本帖最后由 南海孤雁 于 2012-12-7 12:43 編輯 移動(dòng)通信基礎(chǔ)知識(shí)視頻監(jiān)控系統(tǒng)發(fā)展。
    發(fā)表于 12-07 12:35

    并行通信串行通信的區(qū)別

    目錄通信基礎(chǔ)知識(shí)STM32串口通信基礎(chǔ)(UART)串口通信過(guò)程UART中設(shè)置的參數(shù)通信基礎(chǔ)知識(shí)?
    發(fā)表于 07-27 08:05

    UART串口通信基礎(chǔ)知識(shí)介紹

    一、基礎(chǔ)知識(shí)介紹1、通信方式的分類(lèi)(1)通信方式可分為并行通信串行通信。由于并行
    發(fā)表于 12-02 07:32

    數(shù)字通信基本知識(shí)組成

    目錄數(shù)字通信基本知識(shí)組成串行通信和并行通信同步通信和異步通信
    發(fā)表于 12-08 07:50

    串行通信基礎(chǔ)知識(shí)與UART驅(qū)動(dòng)構(gòu)件使用方法

    慕課蘇州大學(xué).嵌入式開(kāi)發(fā)及應(yīng)用.第二章.入門(mén)與軟件框架.串行通信基礎(chǔ)知識(shí)與UART驅(qū)動(dòng)構(gòu)件使用方法0 目錄2 入門(mén)與軟件框架2.1 串行通信
    發(fā)表于 12-20 06:21

    通信基礎(chǔ)知識(shí)教程

    通信基礎(chǔ)知識(shí) 1、電信基礎(chǔ)知識(shí)2、通信電源技術(shù)3、配線設(shè)備結(jié)構(gòu)、原理與防護(hù)4、防雷基礎(chǔ)知識(shí)5、EMC
    發(fā)表于 03-04 16:48 ?34次下載

    單片機(jī)的串行通信

    需了解 串行通信基礎(chǔ)知識(shí)串行通信的工作方式2和方式3
    發(fā)表于 06-29 12:40 ?32次下載

    電源的分類(lèi)和相關(guān)基礎(chǔ)知識(shí)

    電源的分類(lèi)和相關(guān)基礎(chǔ)知識(shí) 1、交流穩(wěn)壓電源的分類(lèi)及其特點(diǎn):
    發(fā)表于 03-08 10:03 ?586次閱讀

    JAVA相關(guān)基礎(chǔ)知識(shí)

    JAVA相關(guān)基礎(chǔ)知識(shí),感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 11-10 11:17 ?0次下載

    開(kāi)關(guān)電源設(shè)計(jì)的相關(guān)基礎(chǔ)知識(shí)

    開(kāi)關(guān)電源設(shè)計(jì)的相關(guān)基礎(chǔ)知識(shí)
    發(fā)表于 09-08 16:19 ?37次下載
    開(kāi)關(guān)電源設(shè)計(jì)的<b class='flag-5'>相關(guān)</b><b class='flag-5'>基礎(chǔ)知識(shí)</b>

    串口通信基礎(chǔ)知識(shí)詳解

    目錄通信基礎(chǔ)知識(shí)STM32串口通信基礎(chǔ)(UART)串口通信過(guò)程UART中設(shè)置的參數(shù)通信基礎(chǔ)知識(shí)?
    發(fā)表于 12-20 19:20 ?15次下載
    串口<b class='flag-5'>通信</b><b class='flag-5'>基礎(chǔ)知識(shí)</b>詳解

    關(guān)于JAVA的相關(guān)基礎(chǔ)知識(shí)

    JAVA相關(guān)基礎(chǔ)知識(shí),Arrays.sort(數(shù)組名)—給數(shù)組排輸出,String是最基本的數(shù)據(jù)類(lèi)型等等
    發(fā)表于 09-23 15:22 ?0次下載