STM32/STM8技术william hill官网
直播中

李浩宇

10年用户 21经验值
擅长:可编程逻辑 MEMS/传感技术 嵌入式技术 模拟技术 RF/无线
私信 关注
[问答]

求解答:stm32驱动AD9854

`在网上(几个电子设计类的专业网站)找到了几个Ad9854的驱动代码,内容是一样的,但是我自己在用那个代码的时候,main函数里面是产生1MHZ的正弦波,但是出来的结果是周期性的68MHZ的非正弦波。用到的代码截图如图,求解答。
以下 是个人的理解
最有可能出错是在出在void AD9852_Send(unsigned char addr,unsigned char data)函数,因为数据是八位的,地址是六位的,这里用了PC的ODR是十六位,根据代码       
AD9854_ADDR &= 0x00ff|addr<<8;
AD9854_ADDR |= 0xff00&addr<<8;
地址用的是高八位,所以我将AD9854的地址线A0-A5接在PD8—PC13(截图的是网上的代码,我将里面的PC改为了PD,同时我也有注意到IO口初始化和时钟使能那里添加 PD的代码)
数据用的是低八位,所以我将AD9854的数据线D0-D7 接在PD0-PD7

` 图片1.png 图片2.png 图片3.png 图片4.png 图片5.png
已退回2积分

回帖(3)

李浩宇

2015-4-11 10:55:05
引用: xianyoudian 发表于 2015-4-11 09:02
解决了吗?参考《单片机原理》AD部分,你的频率设置是否合适

这个和ad没有关系吧,ad9854是DDS芯片
举报

wel2015

2016-4-15 18:01:43
楼主解决了吗?
举报

愿风裁尘

2017-6-20 09:53:18
举报

更多回帖

发帖
×
20
完善资料,
赚取积分