Hello,
I was trying to run PDM microphone example code for Thingy:52 on my own PCB with nRF52832 chip. I was struggling a lot and can't even start PDM clock, using some free pin (I was suspecting, that pin dedicated for this purpose in my project can be shorted to ground). I tried a lot, but I wasn't able to configure the PDM registers to start the clock generation.
Is there any need to use any othe module, than PDM driver? Any special IO configuration?
The flow of code is as described here:
Setting the PDMCLKCTRL register to default.
Setting the MODE register to default.
Setting the GAINL and GAINR registers to default.
Setting the PSEL.CLK register to CONNECT and port 6 (my free port)
Setting the PSEL.DIN register to CONNECT and port 18 (0x00000012) (my PDM data port)
Setting the SAMPLE.PTR register - addres for my data buffer in RAM.
Setting the SAMPLE.MAXCNT register to 100 (same as data buffer size)
Setting the ENABLE register to turn the PDM on
Triggering the TASKS_START to start transfer.
I checked the register values and they seemed ok. After triggering TASKS_START I see, that EVENTS_STARTED and EVENTS_STOPPED are set, but I don't see any clock signal on pin 8 (port 6) of nRF52832 chip (monitoring with oscilloscope). I tried to run this code on another board, to make sure, that the chip is not faulty, but the results are the same - there is no clock signal.
Any help or suggestion, where to look for clues?
BR,
Bartek