美文网首页
Jetson Nano使用PCM5102音频DAC模块

Jetson Nano使用PCM5102音频DAC模块

作者: Mr_Michael | 来源:发表于2020-06-23 15:22 被阅读0次

    一、产品说明

    image

    ​ 数字信号转模拟音频输出

    二、通信格式

    3线音频接口:LRCK、BCK和DIN。

    • LRCK:左右声道word(32bit)数据时钟,左右声道选择取决于音频格式(I2S或左对齐)
    • BCK:bit时钟,用于将DIN数据写入寄存器
    • DIN:音频数据输入

    音频格式选择:FMT 引脚

    模拟信号输出:OUTL、OUTR

    静音控制:XSMT:默认高

    系统时钟输入:SCK【可选】

    1.左对齐格式

    2.I2S格式

    上层应用播放音乐时,每发一个word的数据就切换一次左右声道,就可以达到双声道同时输出的效果。

    三、配置修改

    Audio Setup and Development

    参考:https://www.jianshu.com/p/95b3b8cdc08b

    1.开启I2S引脚接口

    The I2S and AUDIO_MCLK are mapped to the following GPIOs:

    • (SCK)AUDIO_MCLK --> GPIO BB.00 (Audio Master Clock---12.288MHz)
    • (BCK)DAP4_SCLK --> GPIO J.07 (I2S4 BitClock---1.5/1.4MHz)
    • (LRCK)DAP4_FS --> GPIO J.04 (I2S4 FS---48/44.1KHz)
    • (DIN)DAP4_DIN --> GPIO J.05 (I2S4 Data In from Codec)
    • DAP4_DOUT --> GPIO J.06 (I2S4 Data Out to Codec)
    # jetson nano开发板上启动Jetson‑IO
    sudo find /opt/nvidia/jetson-io/ -mindepth 1 -maxdepth 1 -type d -exec touch {}/__init__.py \;
    sudo /opt/nvidia/jetson-io/jetson-io.py
    
    image

    ​ 打开I2S4,保存并重新启动以重新配置引脚:通过为配置应用设备树覆盖来创建新的DTB。然后,它将更新用于引导Linux的配置文件( /boot/extlinux/extlinux.conf)并重新引导开发人员工具包。

    ​ 使用/boot/tegra210-p3448-0000-p3449-0000-a02-user-custom.dtb文件覆盖public source的tegra210-p3448-0000-p3449-0000-a02.dtb文件。

    2.PCM5102与Jetson nano引脚连接

    • PCM_SCK:JN_I2S_MCLK(不连接也正常)
    • PCM_BCK:JN_I2S_SCLK
    • PCM_DIN:JN_I2S_SDIN
    • PCM_LRCK:JN_I2S_LRCK
    • PCM_FLT:GND
    • PCM_FMT:GND

    3.测试I2S

    # 查看引脚配置
    sudo grep "Name:\|J:\|BB:" /sys/kernel/debug/tegra_gpio
    Name:Bank:Port CNF OE OUT IN INT_STA INT_ENB INT_LVL
     J: 2:1 00 00 00 00 00 00 000000
    BB: 6:3 00 00 00 00 00 00 000000
    
    
    cat /proc/asound/cards
     0 [tegrahda       ]: tegra-hda - tegra-hda
                          tegra-hda at 0x70038000 irq 83
     1 [tegrasndt210ref]: tegra-snd-t210r - tegra-snd-t210ref-mobile-rt565x
                          tegra-snd-t210ref-mobile-rt565x
            
    # 将I2S绑定到声卡
    # amixer -c <cardname> cset name="I2Sn Mux" ADMAIF<i>
    amixer -c tegrasndt210ref cset name="I2S4 Mux" "ADMAIF1"
    
    # 播放音频
    # aplay -D hw:<cardname>,<i-1> <in.wav>
    aplay -D hw:tegrasndt210ref,0 audio_test.wav
    

    Jetson AGX Xavier ASoC驱动程序支持以下格式:

    • 样本大小:8位(S8),16位(S16_LE)或24/32位(S32_LE)

    • 采样率:8000、11025、16000、22.5、0 24000、32000、44100、48000、88400、96000、176400或192000 Hz

    • 频道:1或2

    备注:测试发现播放双声道音频源会有输出声音杂乱的情况,而输出单声道音频源输出效果正常。

    • 单声道音频源:左右声道输入数据一致。
    • 双声道音频源:左右声道输入数据不同。

    相关文章

      网友评论

          本文标题:Jetson Nano使用PCM5102音频DAC模块

          本文链接:https://www.haomeiwen.com/subject/mmdhfktx.html