目前官方提供的roc-rk3308b-cc-plus dts 只有amic,没有dmic,需要如何修改dts才能支持pdm 麦克风阵列
ROC-RK3308B-CC-PLUS如何修改DTS以支持PDM呢


这个dts同样适用于ROC-RK3308B-CC-PLUS,因为ROC-RK3308B-CC使用的调试串口是UART2,ROC-RK3308B-CC-PLUS使用的是UART4。你可以将我发给你的dts,改下chosen和fiq_debugger
chosen {
bootargs = "earlycon=uart8250,mmio32,0xff0e0000
swiotlb=1 console=ttyFIQ0 root=PARTLABEL=rootfs rootfstype=ext4 rootwait
snd_aloop.index=7 snd_aloop.use_raw_jiffies=1
overlayroot=device:dev=PARTLABEL=userdata,fstype=ext4,mkfs=1
coherent_pool=1m systemd.gpt_auto=0 cgroup_enable=memory swapaccount=1";
};
&fiq_debugger {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart4_xfer>;
rockchip,serial-id = <4>;
};
&uart4 {
status = "disabled";
};

你好,我使用改后的dts,内核可以正常起来,但是使用arecord录音时,好像时钟有点问题
# arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: rockchiprk3308v [rockchip,rk3308-vad], device 0: dailink-multicodecs multicodec-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: UAC1Gadget [UAC1_Gadget], device 0: UAC1_PCM [UAC1_PCM]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 7: Loopback [Loopback], device 0: Loopback PCM [Loopback PCM]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 7: Loopback [Loopback], device 1: Loopback PCM [Loopback PCM]
Subdevices: 7/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
#
录音
# arecord -f dat -t wav -r 48000 -c 8 -D hw:0,0 test.wav
Recording WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Channels 8
[ 142.674604] clk_pdm_frac parent_rate(589823999) is low than rate(61440000)*20, fractional div is not allowed
[ 142.676548] dma-pl330 ff2d0000.dma-controller: pl330_submit_req:1680 Try increasing mcbufsz (372/256)
[ 142.676603] dma-pl330 ff2d0000.dma-controller: fill_queue:2211 Bad Desc(3)
[ 142.676627] dma-pl330 ff2d0000.dma-controller: pl330_submit_req:1680 Try increasing mcbufsz (372/256)
[ 142.676642] dma-pl330 ff2d0000.dma-controller: fill_queue:2211 Bad Desc(3)

windows装个软件Audacity,分析下音频文件中,8个通道是否有通道录到音了,一般有波形就说明通道有录取到音了

检查下硬件了,可以录音的时候,用示波器测量下时钟线和数据线是否有波形出来
录音命令:
arecord -D 6mic_loopback -r 16000 -f S16_LE /tmp/record.wav -c 8
或者arecord -D hw:0,0 -r 16000 -f S16_LE -c 8 /tmp/record.wav
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持数字示波器】树莓派PICO调试器官方固件本地化部署实践被打赏24分 | |
【换取手持数字示波器】分享一个KEIL无法识别CMSIS-DAP调试器的解决办法被打赏20分 | |
【换取手持数字示波器】分享一个自制的ArduinoNano扩展板底板被打赏23分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 | |
【换取手持示波器】树莓派PICO逻辑分析仪被打赏16分 |