STM32控制板 模块丝印 芯片引脚名 功能
PA3 -----> SYKC FSYNC 低电平有效控制输入
PA4 <-----> CLK SCLK 串行时钟输入
PA5 -----> DATA SDATA 串行数据输入
(3.3V,5V均可) -----> V+ 控制板3.3V或5V与AD9833模块V+连接。
GND <----> GND 控制板与AD9833模块需共地。
浮空 ------ 其他 所有未说明但模块有留出管脚,未使用可直接浮空,功能请参考数据手册
IC解密单片机源程序如下:
- IC解密
- /**********************************************************
- 功能:参考时钟25MHz,stm32f103rct6控制AD9833点频调相位输出,正弦波范围0-10M,
- 方波:0-500K,三角波:0-1M 。
- 接口:控制引脚接口请参照AD9833.h
- IC解密
- AD9833 单片机
- IC解密硬件连接: SYKC——PA3;
- CLK ——PA4;
- DATA——PA5;
- V+——(3.3V,5V均可)
- GND--GND(0V)
- **********************************************************/
- #include "stm32_config.h"
- #include "stdio.h"
- #include "AD9833.h"
- int main(void)
- {
- MY_NVIC_PriorityGroup_Config(NVIC_PriorityGroup_2); //设置中断分组
- delay_init(72); //初始化延时函数
- delay_ms(500);//延时一会儿,等待上电稳定,确保AD9833比控制板先上电。
-
- //代码移植建议
- //1.修改头文件AD9833.h中,自己控制板实际需要使用哪些控制引脚。如AD9833_FSYNC脚改成PA1控制,则定义"#define AD9833_FSYNC PAout(1)"
- //2.修改C文件AD9833.c中,AD983_GPIO_Init函数,所有用到管脚的GPIO输出功能初始化
- //3.完成
-
- AD9833_Init();//IO口及AD9833寄存器初始化
-
- //频率入口参数为float,可使信号的频率更精确
- AD9833_SetFrequencyQuick(1000.0,AD9833_OUT_SINUS);//写输出频率1000.0Hz,输出正弦波
- // AD9833_SetFrequencyQuick(1000.0,AD9833_OUT_TRIANGLE);//写输出频率1000.0Hz,输出三角波
- // AD9833_SetFrequencyQuick(1000.0,AD9833_OUT_MSB);//写输出频率1000.0Hz,输出方波
- while(1)
- {
- AD9833_SetPhase(AD9833_REG_PHASE0,0); //设置0°相位,范围:0-4095(0-360°)
- delay_ms(2);
- AD9833_SetPhase(AD9833_REG_PHASE0,2048);//设置180°相位,范围:0-4095(0-360°)
- delay_ms(2);
-
- }
- }