block/PDM: description: Pulse Density Modulation (Digital Microphone) Interface. items: - name: TASKS_START description: Starts continuous PDM transfer. byte_offset: 0 access: Write - name: TASKS_STOP description: Stops PDM transfer. byte_offset: 4 access: Write - name: EVENTS_STARTED description: PDM transfer has started. byte_offset: 256 - name: EVENTS_STOPPED description: PDM transfer has finished. byte_offset: 260 - name: EVENTS_END description: The PDM has written the last sample specified by SAMPLE.MAXCNT (or the last sample after a STOP task has been received) to Data RAM. byte_offset: 264 - name: INTEN description: Enable or disable interrupt. byte_offset: 768 fieldset: INTEN - name: INTENSET description: Enable interrupt. byte_offset: 772 fieldset: INTENSET - name: INTENCLR description: Disable interrupt. byte_offset: 776 fieldset: INTENCLR - name: ENABLE description: PDM module enable register. byte_offset: 1280 fieldset: ENABLE - name: PDMCLKCTRL description: PDM clock generator control. byte_offset: 1284 fieldset: PDMCLKCTRL - name: MODE description: Defines the routing of the connected PDM microphones' signals. byte_offset: 1288 fieldset: MODE - name: GAINL description: Left output gain adjustment. byte_offset: 1304 fieldset: GAINL - name: GAINR description: Right output gain adjustment. byte_offset: 1308 fieldset: GAINR - name: PSEL description: Unspecified. byte_offset: 1344 block: PSEL - name: SAMPLE description: Unspecified. byte_offset: 1376 block: SAMPLE block/PSEL: description: Unspecified. items: - name: CLK description: Pin number configuration for PDM CLK signal. byte_offset: 0 fieldset: PSEL_CLK - name: DIN description: Pin number configuration for PDM DIN signal. byte_offset: 4 fieldset: PSEL_DIN block/SAMPLE: description: Unspecified. items: - name: PTR description: RAM address pointer to write samples to with EasyDMA. byte_offset: 0 fieldset: PTR - name: MAXCNT description: Number of samples to allocate memory for in EasyDMA mode. byte_offset: 4 fieldset: MAXCNT fieldset/ENABLE: description: PDM module enable register. fields: - name: ENABLE description: Enable or disable PDM module. bit_offset: 0 bit_size: 1 enum: ENABLE fieldset/GAINL: description: Left output gain adjustment. fields: - name: GAINL description: Left output gain adjustment, in 0.5 dB steps, around the default module gain (see electrical parameters) 0x00 -20 dB gain adjust 0x01 -19.5 dB gain adjust (...) 0x27 -0.5 dB gain adjust 0x28 0 dB gain adjust 0x29 +0.5 dB gain adjust (...) 0x4F +19.5 dB gain adjust 0x50 +20 dB gain adjust. bit_offset: 0 bit_size: 7 enum: GAINL fieldset/GAINR: description: Right output gain adjustment. fields: - name: GAINR description: Right output gain adjustment, in 0.5 dB steps, around the default module gain (see electrical parameters). bit_offset: 0 bit_size: 8 enum: GAINR fieldset/INTEN: description: Enable or disable interrupt. fields: - name: STARTED description: Enable or disable interrupt for STARTED event. bit_offset: 0 bit_size: 1 enum: INTEN_STARTED - name: STOPPED description: Enable or disable interrupt for STOPPED event. bit_offset: 1 bit_size: 1 enum: INTEN_STOPPED - name: END description: Enable or disable interrupt for END event. bit_offset: 2 bit_size: 1 enum: INTEN_END fieldset/INTENCLR: description: Disable interrupt. fields: - name: STARTED description: Write '1' to Disable interrupt for STARTED event. bit_offset: 0 bit_size: 1 enum: INTENCLR_STARTED - name: STOPPED description: Write '1' to Disable interrupt for STOPPED event. bit_offset: 1 bit_size: 1 enum: INTENCLR_STOPPED - name: END description: Write '1' to Disable interrupt for END event. bit_offset: 2 bit_size: 1 enum: INTENCLR_END fieldset/INTENSET: description: Enable interrupt. fields: - name: STARTED description: Write '1' to Enable interrupt for STARTED event. bit_offset: 0 bit_size: 1 enum: INTENSET_STARTED - name: STOPPED description: Write '1' to Enable interrupt for STOPPED event. bit_offset: 1 bit_size: 1 enum: INTENSET_STOPPED - name: END description: Write '1' to Enable interrupt for END event. bit_offset: 2 bit_size: 1 enum: INTENSET_END fieldset/MAXCNT: description: Number of samples to allocate memory for in EasyDMA mode. fields: - name: BUFFSIZE description: Length of DMA RAM allocation in number of samples. bit_offset: 0 bit_size: 15 fieldset/MODE: description: Defines the routing of the connected PDM microphones' signals. fields: - name: OPERATION description: Mono or stereo operation. bit_offset: 0 bit_size: 1 enum: OPERATION - name: EDGE description: Defines on which PDM_CLK edge Left (or mono) is sampled. bit_offset: 1 bit_size: 1 enum: EDGE fieldset/PDMCLKCTRL: description: PDM clock generator control. fields: - name: FREQ description: PDM_CLK frequency. bit_offset: 0 bit_size: 32 enum: FREQ fieldset/PSEL_CLK: description: Pin number configuration for PDM CLK signal. fields: - name: PIN description: Pin number. bit_offset: 0 bit_size: 5 - name: CONNECT description: Connection. bit_offset: 31 bit_size: 1 enum: PSEL_CLK_CONNECT fieldset/PSEL_DIN: description: Pin number configuration for PDM DIN signal. fields: - name: PIN description: Pin number. bit_offset: 0 bit_size: 5 - name: CONNECT description: Connection. bit_offset: 31 bit_size: 1 enum: PSEL_DIN_CONNECT fieldset/PTR: description: RAM address pointer to write samples to with EasyDMA. fields: - name: SAMPLEPTR description: Address to write PDM samples to over DMA. bit_offset: 0 bit_size: 32 enum/EDGE: bit_size: 1 variants: - name: LeftFalling description: Left (or mono) is sampled on falling edge of PDM_CLK. value: 0 - name: LeftRising description: Left (or mono) is sampled on rising edge of PDM_CLK. value: 1 enum/ENABLE: bit_size: 1 variants: - name: Disabled description: Disable. value: 0 - name: Enabled description: Enable. value: 1 enum/FREQ: bit_size: 32 variants: - name: 1000K description: PDM_CLK = 32 MHz / 32 = 1.000 MHz. value: 134217728 - name: Default description: PDM_CLK = 32 MHz / 31 = 1.032 MHz. value: 138412032 - name: 1067K description: PDM_CLK = 32 MHz / 30 = 1.067 MHz. value: 142606336 enum/GAINL: bit_size: 7 variants: - name: MinGain description: -20dB gain adjustment (minimum). value: 0 - name: DefaultGain description: 0dB gain adjustment ('2500 RMS' requirement). value: 40 - name: MaxGain description: +20dB gain adjustment (maximum). value: 80 enum/GAINR: bit_size: 8 variants: - name: MinGain description: -20dB gain adjustment (minimum). value: 0 - name: DefaultGain description: 0dB gain adjustment ('2500 RMS' requirement). value: 40 - name: MaxGain description: +20dB gain adjustment (maximum). value: 80 enum/INTENCLR_END: bit_size: 1 variants: - name: Disabled description: 'Read: Disabled.' value: 0 - name: R_Enabled_W_Clear description: 'Read: Enabled.' value: 1 enum/INTENCLR_STARTED: bit_size: 1 variants: - name: Disabled description: 'Read: Disabled.' value: 0 - name: R_Enabled_W_Clear description: 'Read: Enabled.' value: 1 enum/INTENCLR_STOPPED: bit_size: 1 variants: - name: Disabled description: 'Read: Disabled.' value: 0 - name: R_Enabled_W_Clear description: 'Read: Enabled.' value: 1 enum/INTENSET_END: bit_size: 1 variants: - name: Disabled description: 'Read: Disabled.' value: 0 - name: R_Enabled_W_Set description: 'Read: Enabled.' value: 1 enum/INTENSET_STARTED: bit_size: 1 variants: - name: Disabled description: 'Read: Disabled.' value: 0 - name: R_Enabled_W_Set description: 'Read: Enabled.' value: 1 enum/INTENSET_STOPPED: bit_size: 1 variants: - name: Disabled description: 'Read: Disabled.' value: 0 - name: R_Enabled_W_Set description: 'Read: Enabled.' value: 1 enum/INTEN_END: bit_size: 1 variants: - name: Disabled description: Disable. value: 0 - name: Enabled description: Enable. value: 1 enum/INTEN_STARTED: bit_size: 1 variants: - name: Disabled description: Disable. value: 0 - name: Enabled description: Enable. value: 1 enum/INTEN_STOPPED: bit_size: 1 variants: - name: Disabled description: Disable. value: 0 - name: Enabled description: Enable. value: 1 enum/OPERATION: bit_size: 1 variants: - name: Stereo description: Sample and store one pair (Left + Right) of 16bit samples per RAM word R=[31:16]; L=[15:0]. value: 0 - name: Mono description: Sample and store two successive Left samples (16 bit each) per RAM word L1=[31:16]; L0=[15:0]. value: 1 enum/PSEL_CLK_CONNECT: bit_size: 1 variants: - name: Connected description: Connect. value: 0 - name: Disconnected description: Disconnect. value: 1 enum/PSEL_DIN_CONNECT: bit_size: 1 variants: - name: Connected description: Connect. value: 0 - name: Disconnected description: Disconnect. value: 1