18.1.2
協(xié)議層
串口通訊的數(shù)據(jù)包由發(fā)送設(shè)備通過自身的TXD接口傳輸?shù)浇邮赵O(shè)備的RXD接口。在串口通訊的協(xié)議層中,規(guī)定了數(shù)據(jù)包的內(nèi)容,它由啟始位、主體數(shù)據(jù)、校驗(yàn)位以及停止位組成,通訊雙方的數(shù)據(jù)包格式要約定一致才能正常收發(fā)數(shù)據(jù),其組成見圖 19_6。

圖 19-6 串口數(shù)據(jù)包的基本組成
18.1.2.1
波特率
本章中主要講解的是串口異步通訊,異步通訊中由于沒有時(shí)鐘信號(如前面講解的DB9接口中是沒有時(shí)鐘信號的),所以兩個(gè)通訊設(shè)備之間需要約定好波特率,即每個(gè)碼元的長度,以便對信號進(jìn)行解碼,圖19_6中用虛線分開的每一格就是代表一個(gè)碼元。常見的波特率為4800、9600、115200等。
18.1.2.2
通訊的起始和停止信號
串口通訊的一個(gè)數(shù)據(jù)包從起始信號開始,直到停止信號結(jié)束。數(shù)據(jù)包的起始信號由一個(gè)邏輯0的數(shù)據(jù)位表示,而數(shù)據(jù)包的停止信號可由0.5、1、1.5或2個(gè)邏輯1的數(shù)據(jù)位表示,只要雙方約定一致即可。
18.1.2.3
有效數(shù)據(jù)
在數(shù)據(jù)包的起始位之后緊接著的就是要傳輸?shù)闹黧w數(shù)據(jù)內(nèi)容,也稱為有效數(shù)據(jù),有效數(shù)據(jù)的長度常被約定為5、6、7或8位長。
18.1.2.4
數(shù)據(jù)校驗(yàn)
在有效數(shù)據(jù)之后,有一個(gè)可選的數(shù)據(jù)校驗(yàn)位。由于數(shù)據(jù)通信相對更容易受到外部干擾導(dǎo)致傳輸數(shù)據(jù)出現(xiàn)偏差,可以在傳輸過程加上校驗(yàn)位來解決這個(gè)問題。校驗(yàn)方法有奇校驗(yàn)(odd)、偶校驗(yàn)(even)、0校驗(yàn)(space)、1校驗(yàn)(mark)以及無校驗(yàn)(noparity)。
奇校驗(yàn)要求有效數(shù)據(jù)和校驗(yàn)位中“1”的個(gè)數(shù)為奇數(shù),比如一個(gè)8位長的有效數(shù)據(jù)為:01101001,此時(shí)總共有4個(gè)“1”,為達(dá)到奇校驗(yàn)效果,校驗(yàn)位為“1”,最后傳輸?shù)臄?shù)據(jù)將是8位的有效數(shù)據(jù)加上1位的校驗(yàn)位總共9位。
偶校驗(yàn)與奇校驗(yàn)要求剛好相反,要求幀數(shù)據(jù)和校驗(yàn)位中“1”的個(gè)數(shù)為偶數(shù),比如數(shù)據(jù)幀:11001010,此時(shí)數(shù)據(jù)幀“1”的個(gè)數(shù)為4個(gè),所以偶校驗(yàn)位為“0”。
0校驗(yàn)是不管有效數(shù)據(jù)中的內(nèi)容是什么,校驗(yàn)位總為“0”,1校驗(yàn)是校驗(yàn)位總為“1”。
18.2
SCI簡介
SCI(Serial Communications Interface),意為串行通信接口,是相對與并行通信的概念,是串行通信技術(shù)的一種總稱,包括了UART,SPI等串行通信技術(shù)。RA6M5的SCI模塊是一個(gè)有10個(gè)通道的異步/同步串行接口,RA4M2有6個(gè)通道,RA2L1有5個(gè)通道。
SCI模塊包含如下功能(根據(jù)具體型號有所不同):
UART
8位時(shí)鐘同步接口
簡易IIC(只能用作主機(jī))
簡易SPI
智能卡接口(符合ISO/IEC 7816-3國際標(biāo)準(zhǔn))
曼徹斯特接口
增強(qiáng)的串行接口
另外,RA6M5的SCI0、SCI3~SCI9有獨(dú)立的FIFO緩沖區(qū);RA4M2的SCI0、SCI3、SCI4、SCI9有獨(dú)立的FIFO緩沖區(qū);RA2L1僅SCI0有獨(dú)立的FIFO緩沖區(qū)。
18.3
SCI的結(jié)構(gòu)框圖
以RA6M5為例,SCI的結(jié)構(gòu)框圖如下圖所示。接下來我們大致地研究一下它的結(jié)構(gòu)和功能。

18.3.1
功能引腳
見圖中標(biāo)注①處。
RXDn/SCLn/MISOn:
RXDn:UART接收數(shù)據(jù)輸入。
SCLn:I2C時(shí)鐘信號輸入或輸出。
MISOn:SPI主機(jī)信號輸入,從機(jī)信號輸出。
TXDn/SDAn/MOSIn:
TXDn:UART發(fā)送數(shù)據(jù)輸出。
SDAn:I2C數(shù)據(jù)輸入或輸出。
MOSIn:SPI從機(jī)信號輸入,主機(jī)信號輸出。
SSn/CTSn_RTSn:
SSn:片選信號輸入,低電平有效。
CTSn_RTSn:清除以發(fā)送(Clear to Send)或請求以發(fā)送(Request to Send)。低電平有效。如果使能RTS流控制,當(dāng)UART接收器準(zhǔn)備好接收新數(shù)據(jù)時(shí)就會將RTS變成低電平;當(dāng)接收寄存器已滿時(shí),RTS將被設(shè)置為高電平。如果使能CTS流控制,發(fā)送器在發(fā)送下一幀數(shù)據(jù)之前會檢測CTS引腳,如果為低電平,表示可以發(fā)送數(shù)據(jù),如果為高電平則在發(fā)送完當(dāng)前數(shù)據(jù)幀之后停止發(fā)送,該引腳只適用于硬件流控制。
CTSn(n = 0,3 to 9):
清除以發(fā)送(Clear to Send),適用于硬件流控制。
SCKn:
時(shí)鐘輸出或輸入引腳,適用于同步通信。
18.3.2
發(fā)送和接收控制
見圖中標(biāo)注②處。
通信模式和通信參數(shù)設(shè)置。
FIFO模式設(shè)置。
波特率生成器的時(shí)鐘輸入選擇。
18.3.3
數(shù)據(jù)寄存器和移位寄存器
見圖中標(biāo)注③處。
RSR接收移位寄存器將RXDn引腳接收到的串行數(shù)據(jù)轉(zhuǎn)為并行數(shù)據(jù)。當(dāng)接收到一幀數(shù)據(jù),數(shù)據(jù)會被自動傳入RDR/RDRHL或FRDRHL寄存器(在FIFO模式下),并允許RSR繼續(xù)接收更多數(shù)據(jù),CPU無法直接訪問RSR。
TSR傳輸移位寄存器用于傳輸串行數(shù)據(jù)。要進(jìn)行數(shù)據(jù)傳輸,SCI首先自動將數(shù)據(jù)從TDR/TDRHL或FTDRHL寄存器(在FIFO模式下)傳入到TSR中,然后將數(shù)據(jù)發(fā)送到TXDn引腳,CPU無法直接訪問TSR。
18.3.4
波特率發(fā)生器
見圖中標(biāo)注④處。
用于控制波特率,具體由BRR(Bit Rate Rigister),MDDR(Modulation Duty Register)和SMR(Serial Mode Register)寄存器控制。SMR在這里對波特率生成器的輸入時(shí)鐘進(jìn)行選擇,可以選擇PCLK,PCLK/4,PCLK/16,PCLK/64,即PCLK/4n(n=0-3)。
-
接口
+關(guān)注
關(guān)注
33文章
9443瀏覽量
156136 -
串口通訊
+關(guān)注
關(guān)注
2文章
266瀏覽量
26214 -
波特率
+關(guān)注
關(guān)注
2文章
319瀏覽量
35442
原文標(biāo)題:串口通信協(xié)議層&SCI簡介————瑞薩RA系列FSP庫開發(fā)實(shí)戰(zhàn)指南(45)
文章出處:【微信號:瑞薩嵌入式小百科,微信公眾號:瑞薩嵌入式小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
USB接口在串行通信中的應(yīng)用
串行通信接口的基本知識
LCD串行接口的定義及其功能
異步串行通信接口的IP核設(shè)計(jì)
什么是串行通信和接口

串行通信接口的結(jié)構(gòu)和功能
評論