电赛总结(四)——波形发生芯片总结之AD9851
一、特性参数
1、180 MHz时钟速率参考时钟具有6倍倍乘器。芯片具有高性能10位DAC和高速滞后比较器
2、+2.7 V至+5.25 V单电源工作
3、正常输出工作频率范围为 0~72MHz ;
4、具有6倍频,所以只要30MHz的时钟供给即可。
二、功能管脚图

三、管脚说明
| 管脚名称 | 功能 |
| D0–D7 | 8位数据输入. 数据端口,用于装载32位的频率控制字和8位相位控制字。 D7为最高位,D0=最低位 D7, 25引脚, 也作为40位控制字串行输入引脚 |
| PGND |
6倍参考时钟倍乘器地 |
| PVcc |
6倍参考时钟倍乘器电源 |
| W-CLK | 字装入信号,上升沿有效 |
|
FQ-UD |
频率更新控制信号,时钟上升沿确认输入数据有效 |
| FREFCLOCK | 外部参考时钟输入,脉冲序列可直接或间接地加到6倍参考时钟倍乘器上。在直接方式中,输入频率即是系统时钟;在6倍参考时钟倍乘器方式,系统时钟为倍乘器输出 |
| AGND | 模拟地 |
|
AVDD |
模拟电源(+5V) |
|
DGND |
数字地 |
| DVDD |
数字电源(+5V) |
|
RSET |
DAC外部参考电阻连接端 |
| VOUTN | 内部比较器负向输出端 |
| VOUTP | 内部比较器正向输出端 |
| VINN | 内部比较器的负向输入端 |
|
VINP |
内部比较器的正向输入端 |
| DACBP |
DAC旁路连接端 |
| IOUTB |
“互补”DAC输出 |
| IOUT |
内部DAC输出端 |
|
RESET |
复位端。低电平清除DDS累加器和相位延迟器为0Hz和0 相位,同时置数据输入为串行模式以及禁止6倍参考时钟倍乘器工作 |
四、外围电路PCB原理图

五、STM32F103驱动程序
#ifndef __AD9851_H
#define __AD9851_H #include "stm32f10x.h"
#include "gpio.h" #define ad9851_Clk Pin10
#define ad9851_FQ_UD Pin11
#define ad9851_Rst Pin12
#define ad9851_D0 Pin2
#define ad9851_D1 Pin3
#define ad9851_D2 Pin4
#define ad9851_D3 Pin5
#define ad9851_D4 Pin6
#define ad9851_D5 Pin7
#define ad9851_D6 Pin8
#define ad9851_D7 Pin9 void ad9851_write_dds(unsigned long dds); void ad9851_init(void); void ad9851_writefrq(unsigned long freq); #endif /* __DAC_H */
#include "ad9851.h"
#include "pbdata.h"
#include "math.h" unsigned char phase_word = 0x00; //相位控制字,使用低五位
unsigned char power_down = 0x00; //低功耗模式
unsigned char mult = 0x01; //六倍频开关
unsigned char ww[5] = {0x09,0x0E,0x38,0xE3,0xBE};
unsigned long freq,set_value; void ad9851_init(void)
{
set_out(GPIOG,ad9851_Clk | ad9851_FQ_UD | ad9851_Rst | ad9851_D0 | ad9851_D1 | ad9851_D2 | ad9851_D3 | ad9851_D4 | ad9851_D5 |ad9851_D6 | ad9851_D7 );
set_outH(GPIOG,ad9851_Rst);
delay_ms(10);
set_outL(GPIOG,ad9851_Rst);
delay_ms(10);
} void ad9851_write_dds(unsigned long dds)
{
unsigned char i;
ww[0] = (phase_word << 3) | power_down << 2 | mult;
ww[1] = (dds >> 24) & 0xff;
ww[2] = (dds >> 16) & 0xff;
ww[3] = (dds >> 8) & 0xff;
ww[4] = dds & 0xff; set_outL(GPIOG,ad9851_FQ_UD); for(i=0;i<5;i++)
{
set_outL(GPIOG,ad9851_Clk); set_outH(GPIOG,ww[i] << 2);
set_outL(GPIOG,((~ww[i]) << 2) & 0x3fc);
delay_us(10);
set_outH(GPIOG,ad9851_Clk);
delay_us(10);
} set_outH(GPIOG,ad9851_FQ_UD);
delay_us(10);
set_outL(GPIOG,ad9851_FQ_UD);
} void ad9851_writefrq(unsigned long freq)
{
unsigned long dds;
dds = freq;
ad9851_write_dds(dds);
}
电赛总结(四)——波形发生芯片总结之AD9851的更多相关文章
- 电赛总结(四)——波形发生芯片总结之AD9834
一.特性参数 1.2.3V~5.5V供电 2.输出频率高达37.5MHz 3.正弦波.三角波输出 4.提供相位调制和频率调制功能 5.除非另有说明,VDD = 2.3 V至5.5 V,AGND = D ...
- 电赛总结(四)——波形发生芯片总结之AD9854
一.特性参数 ·300M内部时钟频率 ·可进行频移键控(FSK),二元相移键控(BPSK),相移键控(PSK),脉冲调频(CHIRP),振幅调制(AM)操作 ·正交的双通道12位D/A转换器 ·超高速 ...
- 【系列】关于NJUPT电赛自控方向第一次积分赛的总结
本人是NJUPT电子科学与技术专业大一摸鱼狗一枚.本博客旨在总结与分享个人准备电赛所学知识,同时也是为了防止遗忘,锻炼写文章的能力.目前电赛方向为自控方向.主要研究方向为单片机.图像处理.自动控制相关 ...
- TI MSP430工程配置及2019年电赛A题编程示例(使用430 F5529)
配置 第一步:右击工程,选择Options 第二步:在General Options的Target选项卡里选择对应的器件Device,这里是MSP430G2231 第三步:在Debugger里选择FE ...
- NOI.AC NOIP模拟赛 第四场 补记
NOI.AC NOIP模拟赛 第四场 补记 子图 题目大意: 一张\(n(n\le5\times10^5)\)个点,\(m(m\le5\times10^5)\)条边的无向图.删去第\(i\)条边需要\ ...
- noi2019模拟测试赛(四十七)
noi2019模拟测试赛(四十七) T1与运算(and) 题意: 给你一个序列\(a_i\),定义\(f_i=a_1\&a_2\&\cdots\&a_i\),求这个序列的所 ...
- 【春训团队赛第四场】补题 | MST上倍增 | LCA | DAG上最长路 | 思维 | 素数筛 | 找规律 | 计几 | 背包 | 并查集
春训团队赛第四场 ID A B C D E F G H I J K L M AC O O O O O O O O O 补题 ? ? O O 传送门 题目链接(CF Gym102021) 题解链接(pd ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(四)——一步一步教你如何撸Dapr之订阅发布
之前的章节我们介绍了如何通过dapr发起一个服务调用,相信看过前几章的小伙伴已经对dapr有一个基本的了解了,今天我们来聊一聊dapr的另外一个功能--订阅发布 目录:一.通过Dapr实现一个简单的基 ...
- 电赛总结(二)——AD芯片总结之AD7715
一.特性参数 1.16位无失真AD转换器 2.增益可调,在1,2,32,128可切换. 3.数字地和模拟地分开,可以减少噪声. 4.具有较大的输出电流,有比较好的带载能力. 二.管脚排列 三.引脚功能 ...
随机推荐
- WPF 显示gif
using System; using System.IO; using System.Collections.Generic; using System.Windows; using System. ...
- SpringMVC 和Struts2的区别
SpringMVC 和Struts2的区别 1. 机制: spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同. 2. 性能: spring会稍微比s ...
- Java finally语句到底是在return之前还是之后执行?
网上有很多人探讨Java中异常捕获机制try...catch...finally块中的finally语句是不是一定会被执行?很多人都说不是,当然他们的回答是正确的,经过我试验,至少有两种情况下fina ...
- swift中文文档- 类型转换
未翻译完 待续(英语烂,求斧正) Type Casting 类型转换 Type casting is a way to check the type of an instance, and/or to ...
- 唐巧的iOS技术博客选摘
1. 那些被遗漏的objective-c保留字:http://blog.devtang.com/blog/2013/04/29/the-missing-objc-keywords/ 2. 使用cr ...
- Unity3D研究院之Jenkins的使用(七十八)
长夜漫漫无心睡眠,来一篇嘿嘿.我相信如果已经用Shell脚本完成IOS和Android打包的朋友一定需要Jenkins 怎么才能让策划打包ipa和apk?怎么才能彻底省去程序的时间,只要在同一局域网内 ...
- 在特定的action里使用validates
http://guides.rubyonrails.org/v3.0.8/active_record_validations_callbacks.html#on 在特定的action里使用valida ...
- Linux and the Unix Philosophy (Linux/Unix设计思想)
http://www.iwangzheng.com/ 大约30年前,当美国人边开着大型轿车边享受着其他国家民众的羡慕目光时,大众汽车却在美国开展了一项主题为“小即是美”的广告营销活动.那时,美国人对大 ...
- Populating Next Right Pointers in Each Node
这题代码简单,不过不容易想到. void connect(TreeLinkNode *root) { if (root == nullptr ||root->left==nullptr)retu ...
- 18个网站SEO建议
第一位专家是Autotrader公司的搜索市场经理Dewi Nawasari,她认为SEO就是优化网站,以吸引你的目标客户的过程.她的建议如下: 1.创建良好的引导链接 要把用户的使用过程尽量的简化, ...