隨著能源需求的日益短缺,科技的日趨智能化,高效精準(zhǔn)的通信模式已日趨成為人們生產(chǎn)生活的必然趨勢(shì),昊芯順應(yīng)時(shí)代要求,推出適用于高精度工業(yè)自動(dòng)化運(yùn)動(dòng)控制的HXS320F28034數(shù)字信號(hào)處理器,其SCI模塊有標(biāo)準(zhǔn)模式和增強(qiáng)FIFO模式,這兩種模式均可通過(guò)奇偶校驗(yàn),校驗(yàn)收發(fā)數(shù)據(jù)的一致性,從而更有效助力于工程師實(shí)現(xiàn)高效精準(zhǔn)閉環(huán)控制,于廣泛應(yīng)用于電動(dòng)車、電動(dòng)汽車、軌道交通、全電飛機(jī)、新能源發(fā)電、機(jī)器人等工業(yè)自動(dòng)化高精度控制領(lǐng)域。
自平頭哥半導(dǎo)體有限公司的劍池集成開發(fā)環(huán)境(簡(jiǎn)稱“CDK”)支持HX2000系列芯片調(diào)試以來(lái),本期推出專題講解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ù)的一致性,原理如下:
(1)SCICCR[PARITY]=0時(shí),采用奇校驗(yàn),即8位字符數(shù)據(jù)位中“1”的數(shù)目為偶數(shù),校驗(yàn)位為“1”,若為奇數(shù),則校驗(yàn)位為“0”。
(2)SCICCR[PARITY]=1時(shí),采用偶校驗(yàn),即8位字符數(shù)據(jù)位中“1”的數(shù)目為偶數(shù),校驗(yàn)位為“0”,若為奇數(shù),則校驗(yàn)位為“1”。
(3)標(biāo)準(zhǔn)SCI模式下,收發(fā)數(shù)據(jù)的校驗(yàn)位不一致時(shí),硬件會(huì)將SCIRXST[PE]位置1表示SCI奇偶校驗(yàn)錯(cuò)誤,將SCIRXST[RXERROR]位置1表示SCI接收錯(cuò)誤標(biāo)志,可通過(guò)SCICTL1[RXERRINTENA]使能,打開接收錯(cuò)誤中斷線,觸發(fā)PIE向CPU發(fā)出RXINT中斷信號(hào),從而觸發(fā)執(zhí)行接收錯(cuò)誤中斷服務(wù)程序。
典型應(yīng)用一:
下圖為PMSM三環(huán)伺服控制系統(tǒng),其人機(jī)界面交互通訊是通過(guò)SCI模塊實(shí)現(xiàn)的:PC端通過(guò)SCI模塊,向DSP端發(fā)送位置控制指令,三閉環(huán)有感伺服控制系統(tǒng)通過(guò)位置指令及位置反饋數(shù)據(jù)計(jì)算輸出PWM占空比值;伺服系統(tǒng)的運(yùn)行數(shù)據(jù)通過(guò)SCI模塊發(fā)送給PC端,PC端通過(guò)labview等調(diào)試軟件接收數(shù)據(jù)進(jìn)行實(shí)時(shí)讀取顯示。為保證系統(tǒng)在運(yùn)行過(guò)程中數(shù)據(jù)傳輸?shù)臏?zhǔn)確性,本設(shè)計(jì)采用了奇偶校驗(yàn)。
典型應(yīng)用二:
采用SCI與串口CH340,通過(guò)串口調(diào)試助手,向CPU發(fā)送任意一字節(jié)數(shù)據(jù),CPU接收所發(fā)送的數(shù)據(jù),采用奇校驗(yàn),校驗(yàn)收發(fā)數(shù)據(jù)的一致性,不一致時(shí)觸發(fā)接收錯(cuò)誤中斷,點(diǎn)亮LED燈GPIO44,硬件連接如下圖所示:
基于以上分析,在CDK上開發(fā)標(biāo)準(zhǔn)SCI串口通信校驗(yàn)程序,代碼包括:SCI GPIO外設(shè)引腳配置,標(biāo)準(zhǔn)SCI功能與校驗(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./*初始化LED,用于標(biāo)識(shí)奇偶與幀格式校驗(yàn)錯(cuò)誤*/ 10.InitLED(); 11. 12./*關(guān)閉PIE中斷*/ 13.InitPieCtrl(); 14./*清除中斷標(biāo)志位*/ 15.IER=0x0000; 16.IFR=0x0000; 17./*初始化PIE中斷向量表*/ 18.InitPieVectTable(); 19. 20.EALLOW; 21./*中斷向量表入口地址SCIRXINTA,指向執(zhí)行接收校驗(yàn)程序*/ 22.PieVectTable.SCIRXINTA=&sciaRxIsr; 23.EDIS; 24. 25./*打開相應(yīng)的PIE中斷線*/ 26.IER|=M_INT9; 27./*PIEGroup9,SCIRXINTA*/ 28.PieCtrlRegs.PIEIER9.bit.INTx1=1; 29. 30./*標(biāo)準(zhǔn)SCI配置:含奇偶校驗(yàn)*/ 31.Scia_Config(9600); 32. 33./*使能外部中斷和CPU中斷*/ 34.EINT; 35.while(1) 36.{ 37./*當(dāng)數(shù)據(jù)接收成功時(shí),發(fā)送返回?cái)?shù)據(jù)*/ 38.if(SciaRegs.SCIRXST.bit.RXRDY==1) 39.{ 40./*SCI發(fā)送:返回接收數(shù)據(jù)*/ 41.Scia_Send(SciaRegs.SCIRXBUF.bit.RXDT); 42.} 43.} 44.return0; 45.}
CDK上開發(fā)標(biāo)準(zhǔn)SCI串口通信校驗(yàn)程序,編譯結(jié)果為:
編譯通過(guò)后,就可開始調(diào)試了,調(diào)試后,可通過(guò)串口調(diào)試助手查看發(fā)送與接收到的數(shù)據(jù):
收發(fā)數(shù)據(jù)的校驗(yàn)位不一致時(shí),觸發(fā)RXINT中斷信號(hào),根據(jù)SciaRegs[SCIRXST]中錯(cuò)誤置位類型,點(diǎn)亮LED燈GPIO44,效果如下:
審核編輯:湯梓紅
-
串口通訊
+關(guān)注
關(guān)注
1文章
262瀏覽量
25046 -
SCI
+關(guān)注
關(guān)注
1文章
56瀏覽量
20182 -
奇偶校驗(yàn)
+關(guān)注
關(guān)注
0文章
15瀏覽量
8232 -
平頭哥
+關(guān)注
關(guān)注
0文章
65瀏覽量
9140 -
中科昊芯
+關(guān)注
關(guān)注
5文章
80瀏覽量
5232
原文標(biāo)題:芯教程|平頭哥助力昊芯HX2000系列芯片專題SCI串口通訊奇偶校驗(yàn)(一)標(biāo)準(zhǔn)SCI
文章出處:【微信號(hào):HAAWKING2019,微信公眾號(hào):中科昊芯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
奇偶校驗(yàn)碼
奇偶校驗(yàn)器,奇偶校驗(yàn)器是什么意思
奇偶校驗(yàn)碼,奇偶校驗(yàn)碼原理是什么?
奇偶校驗(yàn)器_奇偶校驗(yàn)設(shè)計(jì)程序
stm32串口奇偶校驗(yàn)
stm32 usart奇偶校驗(yàn)如何配置
![stm32 usart<b class='flag-5'>奇偶校驗(yàn)</b>如何配置](https://file.elecfans.com/web2/M00/0A/63/poYBAGD6JMyAYewdAAEQfJWnx78915.png)
STM32的UART奇偶校驗(yàn)注意
![STM32的UART<b class='flag-5'>奇偶校驗(yàn)</b>注意](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
增強(qiáng)FIFO模式下的奇偶校驗(yàn)
FPGA奇偶校驗(yàn)的基本原理及實(shí)現(xiàn)方法
![FPGA<b class='flag-5'>奇偶校驗(yàn)</b>的基本原理及實(shí)現(xiàn)方法](https://file.elecfans.com/web2/M00/A5/8E/pYYBAGRghoOAPZUgAACJvzTKi5I120.png)
芯教程|平頭哥助力昊芯HX2000系列芯片專題SCI串口通訊奇偶校驗(yàn)(一)標(biāo)準(zhǔn)SCI
![芯教程|平頭哥助力昊芯HX2000系列芯片專題<b class='flag-5'>SCI</b>串口通訊<b class='flag-5'>奇偶校驗(yàn)</b>(一)<b class='flag-5'>標(biāo)準(zhǔn)</b><b class='flag-5'>SCI</b>](https://file.elecfans.com/web2/M00/40/13/poYBAGJrifOAHrt_AADsXZ_x3z4373.png)
芯教程|平頭哥助力昊芯HX2000系列芯片專題SCI串口通訊奇偶校驗(yàn)(二)SCI增強(qiáng)FIFO
![芯教程|平頭哥助力昊芯HX2000系列芯片專題<b class='flag-5'>SCI</b>串口通訊<b class='flag-5'>奇偶校驗(yàn)</b>(二)<b class='flag-5'>SCI</b>增強(qiáng)FIFO](https://file.elecfans.com/web2/M00/40/13/poYBAGJrifOAHrt_AADsXZ_x3z4373.png)
評(píng)論