自中科昊芯推出專題講解SCI串口通信以來,第一期主要講解SCI串口FIFO通信原理,第二期主要講解SCI串口自動波特率,本期主要講解FIFO中斷通信邏輯。
HX2000系列SCI模塊原理與中斷邏輯如下,中斷邏輯為:當SCITXBUF數據被傳輸到TXSHF寄存器時,將通過SCICTL[TXRDY]產生一個發送中斷,使能SCICTL[TXINTENA]打開發送中斷信號,將通過PIE響應CPU執行,使得CPU可以連續寫數據到SCITXBUF,使得SCI模塊可以向PC端連續發送數據。當SCI接收一個完整幀,并將RXSHF寄存器中的數據傳輸到SCIRXBUF寄存器中,將通過SCIRXST[RXRDY]產生一個接收中斷,使能SCICTL[RXBKINTENA]打開接收中斷信號,將通過PIE響應CPU執行,使得CPU讀取PC端發送的數據幀。
由此設計SCI串口FIFO中斷通信實例:采用SCI與串口CH340,連續發送數據,PC端接收發送的數據;通過串口調試助手,向CPU發送任意一組數據,CPU接收發送的數據。
基于以上分析,在CDK上開發SCI串口FIFO中斷通信輸出程序,代碼包括:SCI GPIO外設引腳配置,FIFO功能配置,發送與接收中斷程序,主程序調用執行。主要代碼如下:
CDK上開發SCI串口FIFO中斷通信程序,其編譯結果為:
編譯通過后,就可以開始調試了,DSP端連續發送數據的調試結果如下:
PC端發送數據的調試結果如下:
調試后,可通過串口調試助手查看發送與接收到的數據如下圖:
-
dsp
+關注
關注
554文章
8059瀏覽量
350413 -
寄存器
+關注
關注
31文章
5363瀏覽量
121158 -
數據
+關注
關注
8文章
7139瀏覽量
89576 -
串口通信
+關注
關注
34文章
1627瀏覽量
55728
發布評論請先 登錄
相關推薦
串口中斷是內部中斷還是外部中斷,串口中斷是怎么觸發的
AFE4960如何正確的從FIFO中讀取樣本呢?
FIFO Generator的Xilinx官方手冊
![<b class='flag-5'>FIFO</b> Generator的Xilinx官方手冊](https://file1.elecfans.com/web1/M00/F4/CF/wKgaoWcyw0uAFsglAAAmkjNjX48160.png)
陀螺儀LSM6DSOW開發(4)----中斷獲取FIFO數據
![陀螺儀LSM6DSOW開發(4)----<b class='flag-5'>中斷</b>獲取<b class='flag-5'>FIFO</b>數據](https://file1.elecfans.com/web2/M00/FE/0D/wKgaomaYgkSAUZwMAAlOsGN2SpE275.png)
ASM330LHH使用FIFO閾值中斷輸出時工作異常的原因?
驅動LSM6DS3TR-C實現高效運動檢測與數據采集(8)----中斷獲取FIFO數據并應用MotionFX庫解析空間坐標
![驅動LSM6DS3TR-C實現高效運動檢測與數據采集(8)----<b class='flag-5'>中斷</b>獲取<b class='flag-5'>FIFO</b>數據并應用MotionFX庫解析空間坐標](https://file1.elecfans.com/web2/M00/FE/7B/wKgaomabpfyAey7iAAkXM5ka7wg848.png)
陀螺儀LSM6DSV16X與AI集成(9)----中斷獲取FIFO數據并應用MotionFX庫解析空間坐標
![陀螺儀LSM6DSV16X與AI集成(9)----<b class='flag-5'>中斷</b>獲取<b class='flag-5'>FIFO</b>數據并應用MotionFX庫解析空間坐標](https://file1.elecfans.com/web2/M00/FE/0C/wKgaomaYfhCASGSHAAn1ptBupx4254.png)
上位機與pLc通訊中斷如何判斷
同步FIFO和異步FIFO區別介紹
![同步<b class='flag-5'>FIFO</b>和異步<b class='flag-5'>FIFO</b>區別<b class='flag-5'>介紹</b>](https://file1.elecfans.com/web2/M00/EB/91/wKgZomZetI6ACXETAAAiwkYcoTM829.png)
評論