I cannot get Chinese AD9954 DDS Signal Generator module working with STM32F1xx. Can anyone help?
Some details:
- issue: there is no signal generated at all by the DDS board
- module is this: ttps://www.aliexpress.com/item/1005002747924243.html?spm=a2g0s.9042311.0.0.6e454c4d304D3u
- I tried this code: https://github.com/JQIamo/AD9954-arduino
- I dont have external clock, the jumper is located as on the picture
I connected the AD9954 to STM32f1xx the following way:
/*
** AD9954_CS----------PA4 OUT 14
** AD9954_SCLK--------PA5 OUT 15
** AD9954_SDIO--------PA7 OUT MOSI 17
** AD9954_OSK---------PA6 OUT 16
** PS0----------------PA3 OUT 13
** PS1----------------PA2 OUT 12
** IOUPDATE-----------PA1 OUT 11
** AD9954_SDO---------- IN
** AD9954_IOSY--------PA0 OUT 10 //?
** AD9954_RES---------PB1 OUT 19
** AD9954_PWR---------PB0 OUT 18 //?
*/
#define ssPin 14
#define resetPin 19
#define updatePin 11
#define ps0 13
#define ps1 12
#define osk 16
#define spi_clk 15
Any tips what can be wrong? Do I have a broken DDS module?
I was able to check that AD9954_SCLK appears from STM32 with a scope. Unfortunately my scope setup is not good enough to check all signal timings on SPI properly.
The code I use only sends stuff to AD9954 over SPI... Is there a way to verify if the chip is alive? (i.e receive something from AD9954)