2024-06-04 07:44 AM
I am trying to provide a clock to PDM microphones using the CKI1 MDF pin, and no clock is being generated. The MDF correctly generates a clock signal on MDF CKI0. The IO configuration for CKI0 and CKI1 is the same (except for the alternate function register settings). Direction and enable bits are set appropriately in the MDF CKGCR. Is it not possible to use the MDF CKI0 and CKI1 outputs simultaneously? I have verified that I am able to drive the pin outputs high and low, but I do not get any signal when I enable clock generation.
I am using an STM32U5A9J-DK board with default solder bridge configuration.
2024-06-05 01:38 AM
Hello @jcmoreau ,
CKI0 and CKI1 can work simultaneously. However, make sure that both CKIx output are enabled:
1. In CKGCR register, make sure CCK0EN and CCK1EN are set
2. In CKCGR register, ensure CCK1DIR and CCK0DIR are set (pad direction is output mode)
If you have configure your project from CubeMX, in common parameters of MDF1, select "CCK0 and CCK1 are used as output clock" for Output clock Pin setting
Then, in MX_MDF1_Init, make sure you get the following configuration:
MdfHandle0.Init.CommonParam.OutputClock.Pins = MDF_OUTPUT_CLOCK_ALL;
In case you configuration in well done, please share with me your configuration and GPIO configuration.
Best Regards,
Gwénolé
2024-06-05 02:13 PM
Hi Gwenole,
Thanks for your reply. I am not using CubeMX. CCK0EN and CCK1EN are set. CCK1DIR and CCK0DIR are set. I ended up just clocking the microphones using the working clock output, MDF_CKI0. I may try using MDF_CKI1 with a different board to see if I get different results.