• Recent
    • Docs
    • Github
    • 百度网盘
    • Onedrive
    • Official
    • Shop
    • Register
    • Login

    是否有 pin22 & pin24 接 Dmic Example?

    Scheduled Pinned Locked Moved Hardware
    3 Posts 2 Posters 321 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tonyone0902
      last edited by

      40 pin HAT 那邊 pin22 & pin24 分別有 PDM CLK & PDM Data,請問如果在 ubuntu 環境下如何透過這兩個腳位直接擷取 Dmic 音訊呢?

      1 Reply Last reply Reply Quote 0
      • G
        george
        last edited by george

        • DTS is modified as follows
        diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-cp4.dts b/arch/arm64/boot/dts/rockchip/rk3588s-cp4.dts
        index dc232a407a8c..da9796bfe7a3 100755
        --- a/arch/arm64/boot/dts/rockchip/rk3588s-cp4.dts
        +++ b/arch/arm64/boot/dts/rockchip/rk3588s-cp4.dts
        @@ -223,6 +223,24 @@ codec {
                         };
                 };
         
        +       pdmics: dummy-codec {
        +        status = "okay";
        +        compatible = "rockchip,dummy-codec";
        +        #sound-dai-cells = <0>;
        +    };
        +
        +    pdm_mic_array: pdm-mic-array {
        +        status = "okay";
        +        compatible = "simple-audio-card";
        +        simple-audio-card,name = "rockchip,pdm-mic-array";
        +        simple-audio-card,cpu {
        +            sound-dai = <&pdm1>;
        +        };
        +        simple-audio-card,codec {
        +            sound-dai = <&pdmics>;
        +        };
        +    };
        +       
                leds: leds {
                        compatible = "gpio-leds";
                        pinctrl-names = "default";
        @@ -944,6 +962,14 @@ &route_hdmi0 {
                status = "okay";
         };
         
        +&pdm1 {
        +    status = "okay";
        +    rockchip,path-map = <0 1 2 3>;
        +    #sound-dai-cells = <0>;
        +    pinctrl-names = "default";
        +    pinctrl-0 = <&pdm1m1_clk &pdm1m1_sdi1>;
        +};
        +
         &i2c0 {
                status = "okay";
                pinctrl-names = "default";
        @@ -1301,7 +1327,7 @@ ir_key1 {
         
         &spi0 {
                pinctrl-names = "default";
        -       status = "okay";
        +       status = "disabled";
         
                max-freq = <48000000>; /* spi internal clk, don't modify */
                 spi_dev@0 {
        
        • Device information
        coolpi@Ubuntu:~$ arecord -l
        **** List of CAPTURE Hardware Devices ****
        card 2: rockchipes8316c [rockchip,es8316-codec], device 0: fe470000.i2s-ES8316 HiFi es8316.7-0010-0 [fe470000.i2s-ES8316 HiFi es8316.7-0010-0]
          Subdevices: 1/1
          Subdevice #0: subdevice #0
        card 3: rockchippdmmica [rockchip,pdm-mic-array], device 0: fe4c0000.pdm-dummy_codec dummy-codec-0 [fe4c0000.pdm-dummy_codec dummy-codec-0]
          Subdevices: 1/1
          Subdevice #0: subdevice #0
        
        T 1 Reply Last reply Reply Quote 0
        • T
          tonyone0902 @george
          last edited by

          @george

          Thanks!

          1 Reply Last reply Reply Quote 0
          • 1 / 1
          • First post
            Last post