赤菟V307(CH32V307)是一款RISC-V內核的MCU,搭載的是沁恒自研RISC-V內核青稞V4F,最高主頻144MHz,支持單精度浮點運算(FPU)。
Matlab支持串口通信,可以接收串口的數據,并進行數據處理,本文主要講解赤菟V307與Matlab的串口通信,并進行快速傅里葉變換。
1、定義串口協議
為了更好的接收并處理串口數據,需要定制一定的傳輸協議:
l 每個數據以 ‘,’(ASCII:44)結束
l 整組數據以 ‘$’(ASCII:36) 結束
l 浮點統一放大到整數
2、赤菟V307端程序設計
赤菟V307發送一段信號,該信號由幅度為0.4的直流信號+幅度為0.5,頻率為50Hz的信號+幅度為,頻率為100Hz的信號+幅度為0.5,頻率為150Hz的信號組成,采樣率為1000Hz,一共發送1000個采樣值。
代碼如下:
3、Matlab端程序設計
matlab支持串口接收數據,根據定義的協議,解析數據,支持正負整數。具體代碼如下:
4、結果驗證
Matlab接收數據顯示如下:
經過Matlab的快速傅里葉變換結果如下:
打通了赤菟V307和Matlab之間的“任督二脈”,后面可以愉快的驗證赤菟V307的FFT以及相關的數字信號處理算法啦。
-
mcu
+關注
關注
146文章
16987瀏覽量
350301 -
matlab
+關注
關注
182文章
2963瀏覽量
230150 -
內核
+關注
關注
3文章
1363瀏覽量
40228 -
串口通信
+關注
關注
34文章
1620瀏覽量
55423 -
RISC-V
+關注
關注
44文章
2228瀏覽量
46026
發布評論請先 登錄
相關推薦
評論