自昊芯推出專題講解SCI串口通訊奇偶校驗(yàn),分為兩期講解,上期主要講解標(biāo)準(zhǔn)SCI模式下的奇偶校驗(yàn),本期主要講解增強(qiáng)FIFO模式下的奇偶校驗(yàn)。
HX2000系列SCI模塊與中斷框圖如下,可通過(guò)SCICCR[PARITYENA]使能,啟動(dòng)奇偶校驗(yàn);采用SCICCR[PARITY]選擇,使用奇或偶校驗(yàn),對(duì)每個(gè)字符增加一個(gè)額外的校驗(yàn)位,以校驗(yàn)收發(fā)數(shù)據(jù)的二進(jìn)制碼中“1”的個(gè)數(shù),校驗(yàn)收發(fā)數(shù)據(jù)的一致性;FIFO模式下校驗(yàn)原理與標(biāo)準(zhǔn)模式一致,但收發(fā)數(shù)據(jù)校驗(yàn)位不一致時(shí),僅置位SCIRXBUF[SCIFFPE]輸出錯(cuò)誤信號(hào)。


由此設(shè)計(jì)SCI串口增強(qiáng)FIFO通信校驗(yàn)實(shí)例:采用SCI與串口CH340,通過(guò)串口調(diào)試助手,向CPU發(fā)送任意一組四字節(jié)數(shù)據(jù),CPU接收所發(fā)送的數(shù)據(jù),通過(guò)按鍵控制,選擇奇或偶校驗(yàn),校驗(yàn)收發(fā)數(shù)據(jù)的一致性,硬件連接如下圖所示:

基于以上分析,在CDK上開(kāi)發(fā)SCI串口增強(qiáng)FIFO通信校驗(yàn),代碼包括:SCI GPIO外設(shè)引腳配置,SCI增強(qiáng)FIFO功能與校驗(yàn)配置程序,發(fā)送、接收與校驗(yàn)程序,主程序調(diào)用執(zhí)行。主要代碼如下:
1.intmain(void)
2.{
3./*初始化系統(tǒng)控制*/
4.InitSysCtrl();
5./*初始化內(nèi)存控制寄存器,使能內(nèi)存流水線模式*/
6.InitFlash();
7./*初始化串口通信的GPIO口:GPIO28: SCIRXDA,GPIO29: SCITXDA*/
8.InitSciGpio();
9.
10./*初始化LED,用于指示奇偶與幀格式校驗(yàn)錯(cuò)誤*/
11.InitLED();
12./*初始化key按鍵,用于控制奇偶校驗(yàn)?zāi)J竭x擇*/
13.InitKEY();
14.
15./*關(guān)閉PIE中斷*/
16.InitPieCtrl();
17./*清除中斷標(biāo)志位*/
18.IER=0x0000;
19.IFR=0x0000;
20./*初始化PIE中斷向量表*/
21.InitPieVectTable();
22.
23.EALLOW;
24./*中斷向量表入口地址SCIRXINTA,指向執(zhí)行接收中斷、校驗(yàn)?zāi)J竭x擇與程序*/
25.PieVectTable.SCIRXINTA=&sci_rx_isr;
26.EDIS;
27.
28./*打開(kāi)相應(yīng)的PIE中斷線*/
29.IER|=M_INT9;
30./*PIEGroup9,SCIRXINTA*/
31.PieCtrlRegs.PIEIER9.bit.INTx1=1;
32.
33./*SCI增強(qiáng)FIFO配置:含奇偶校驗(yàn)*/
34.Scia_Config(9600);
35./*打開(kāi)全局中斷*/
36.EINT;
37.for(;;)
38.{
39.}
40.return0;
41.}
CDK上開(kāi)發(fā)SCI串口增強(qiáng)FIFO通信校驗(yàn)程序,編譯結(jié)果為:

編譯通過(guò)后,就可開(kāi)始調(diào)試了,調(diào)試后,可通過(guò)串口調(diào)試助手查看發(fā)送與接收到的數(shù)據(jù):

收發(fā)數(shù)據(jù)校驗(yàn)位不一致時(shí),通過(guò)SciaRegs.SCIRXBUF.SCIFFPE置位輸出錯(cuò)誤信號(hào):

-
cpu
+關(guān)注
關(guān)注
68文章
11332瀏覽量
225988 -
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7349瀏覽量
95055 -
fifo
+關(guān)注
關(guān)注
3文章
407瀏覽量
45919 -
串口通訊
+關(guān)注
關(guān)注
2文章
266瀏覽量
26526
原文標(biāo)題:芯教程|平頭哥助力昊芯HX2000系列芯片專題SCI串口通訊奇偶校驗(yàn)(二)SCI增強(qiáng)FIFO
文章出處:【微信號(hào):HAAWKING2019,微信公眾號(hào):中科昊芯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
UART中有奇偶校驗(yàn)位和無(wú)奇偶校驗(yàn)位的數(shù)據(jù)傳輸是怎樣的?
奇偶校驗(yàn)碼
奇偶校驗(yàn)器,奇偶校驗(yàn)器是什么意思
奇偶校驗(yàn)碼,奇偶校驗(yàn)碼原理是什么?
奇偶校驗(yàn)器_奇偶校驗(yàn)設(shè)計(jì)程序
stm32串口奇偶校驗(yàn)
stm32 usart奇偶校驗(yàn)如何配置
STM32的UART奇偶校驗(yàn)注意
標(biāo)準(zhǔn)SCI模式下的奇偶校驗(yàn)
FPGA奇偶校驗(yàn)的基本原理及實(shí)現(xiàn)方法
芯教程|平頭哥助力昊芯HX2000系列芯片專題SCI串口通訊奇偶校驗(yàn)(二)SCI增強(qiáng)FIFO
增強(qiáng)FIFO模式下的奇偶校驗(yàn)
評(píng)論