18.1.2
協(xié)議層
串口通訊的數(shù)據(jù)包由發(fā)送設(shè)備通過(guò)自身的TXD接口傳輸?shù)浇邮赵O(shè)備的RXD接口。在串口通訊的協(xié)議層中,規(guī)定了數(shù)據(jù)包的內(nèi)容,它由啟始位、主體數(shù)據(jù)、校驗(yàn)位以及停止位組成,通訊雙方的數(shù)據(jù)包格式要約定一致才能正常收發(fā)數(shù)據(jù),其組成見(jiàn)圖 19_6。
圖 19-6 串口數(shù)據(jù)包的基本組成
18.1.2.1
波特率
本章中主要講解的是串口異步通訊,異步通訊中由于沒(méi)有時(shí)鐘信號(hào)(如前面講解的DB9接口中是沒(méi)有時(shí)鐘信號(hào)的),所以兩個(gè)通訊設(shè)備之間需要約定好波特率,即每個(gè)碼元的長(zhǎng)度,以便對(duì)信號(hào)進(jìn)行解碼,圖19_6中用虛線分開(kāi)的每一格就是代表一個(gè)碼元。常見(jiàn)的波特率為4800、9600、115200等。
18.1.2.2
通訊的起始和停止信號(hào)
串口通訊的一個(gè)數(shù)據(jù)包從起始信號(hào)開(kāi)始,直到停止信號(hào)結(jié)束。數(shù)據(jù)包的起始信號(hào)由一個(gè)邏輯0的數(shù)據(jù)位表示,而數(shù)據(jù)包的停止信號(hào)可由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ù)的長(zhǎng)度常被約定為5、6、7或8位長(zhǎng)。
18.1.2.4
數(shù)據(jù)校驗(yàn)
在有效數(shù)據(jù)之后,有一個(gè)可選的數(shù)據(jù)校驗(yàn)位。由于數(shù)據(jù)通信相對(duì)更容易受到外部干擾導(dǎo)致傳輸數(shù)據(jù)出現(xiàn)偏差,可以在傳輸過(guò)程加上校驗(yàn)位來(lái)解決這個(gè)問(wèn)題。校驗(yàn)方法有奇校驗(yàn)(odd)、偶校驗(yàn)(even)、0校驗(yàn)(space)、1校驗(yàn)(mark)以及無(wú)校驗(yàn)(noparity)。
奇校驗(yàn)要求有效數(shù)據(jù)和校驗(yàn)位中“1”的個(gè)數(shù)為奇數(shù),比如一個(gè)8位長(zhǎng)的有效數(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簡(jiǎn)介
SCI(Serial Communications Interface),意為串行通信接口,是相對(duì)與并行通信的概念,是串行通信技術(shù)的一種總稱,包括了UART,SPI等串行通信技術(shù)。RA6M5的SCI模塊是一個(gè)有10個(gè)通道的異步/同步串行接口,RA4M2有6個(gè)通道,RA2L1有5個(gè)通道。
SCI模塊包含如下功能(根據(jù)具體型號(hào)有所不同):
UART
8位時(shí)鐘同步接口
簡(jiǎn)易IIC(只能用作主機(jī))
簡(jiǎn)易SPI
智能卡接口(符合ISO/IEC 7816-3國(guó)際標(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)框圖如下圖所示。接下來(lái)我們大致地研究一下它的結(jié)構(gòu)和功能。
18.3.1
功能引腳
見(jiàn)圖中標(biāo)注①處。
RXDn/SCLn/MISOn:
RXDn:UART接收數(shù)據(jù)輸入。
SCLn:I2C時(shí)鐘信號(hào)輸入或輸出。
MISOn:SPI主機(jī)信號(hào)輸入,從機(jī)信號(hào)輸出。
TXDn/SDAn/MOSIn:
TXDn:UART發(fā)送數(shù)據(jù)輸出。
SDAn:I2C數(shù)據(jù)輸入或輸出。
MOSIn:SPI從機(jī)信號(hào)輸入,主機(jī)信號(hào)輸出。
SSn/CTSn_RTSn:
SSn:片選信號(hào)輸入,低電平有效。
CTSn_RTSn:清除以發(fā)送(Clear to Send)或請(qǐng)求以發(fā)送(Request to Send)。低電平有效。如果使能RTS流控制,當(dāng)UART接收器準(zhǔn)備好接收新數(shù)據(jù)時(shí)就會(huì)將RTS變成低電平;當(dāng)接收寄存器已滿時(shí),RTS將被設(shè)置為高電平。如果使能CTS流控制,發(fā)送器在發(fā)送下一幀數(shù)據(jù)之前會(huì)檢測(cè)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ā)送和接收控制
見(jiàn)圖中標(biāo)注②處。
通信模式和通信參數(shù)設(shè)置。
FIFO模式設(shè)置。
波特率生成器的時(shí)鐘輸入選擇。
18.3.3
數(shù)據(jù)寄存器和移位寄存器
見(jiàn)圖中標(biāo)注③處。
RSR接收移位寄存器將RXDn引腳接收到的串行數(shù)據(jù)轉(zhuǎn)為并行數(shù)據(jù)。當(dāng)接收到一幀數(shù)據(jù),數(shù)據(jù)會(huì)被自動(dòng)傳入RDR/RDRHL或FRDRHL寄存器(在FIFO模式下),并允許RSR繼續(xù)接收更多數(shù)據(jù),CPU無(wú)法直接訪問(wèn)RSR。
TSR傳輸移位寄存器用于傳輸串行數(shù)據(jù)。要進(jìn)行數(shù)據(jù)傳輸,SCI首先自動(dòng)將數(shù)據(jù)從TDR/TDRHL或FTDRHL寄存器(在FIFO模式下)傳入到TSR中,然后將數(shù)據(jù)發(fā)送到TXDn引腳,CPU無(wú)法直接訪問(wèn)TSR。
18.3.4
波特率發(fā)生器
見(jiàn)圖中標(biāo)注④處。
用于控制波特率,具體由BRR(Bit Rate Rigister),MDDR(Modulation Duty Register)和SMR(Serial Mode Register)寄存器控制。SMR在這里對(duì)波特率生成器的輸入時(shí)鐘進(jìn)行選擇,可以選擇PCLK,PCLK/4,PCLK/16,PCLK/64,即PCLK/4n(n=0-3)。
-
接口
+關(guān)注
關(guān)注
33文章
9275瀏覽量
155469 -
串口通訊
+關(guān)注
關(guān)注
2文章
266瀏覽量
26050 -
波特率
+關(guān)注
關(guān)注
2文章
319瀏覽量
35315
原文標(biāo)題:串口通信協(xié)議層&SCI簡(jiǎn)介————瑞薩RA系列FSP庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南(45)
文章出處:【微信號(hào):瑞薩嵌入式小百科,微信公眾號(hào):瑞薩嵌入式小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
USB接口在串行通信中的應(yīng)用
串行通信的分類,常見(jiàn)的串行通信接口?
串行通信接口的基本知識(shí)
LCD串行接口的定義及其功能
異步串行通信接口的IP核設(shè)計(jì)
串行通信及接口電路
什么是串行通信和接口

評(píng)論