电赛总结(四)——波形发生芯片总结之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.具有较大的输出电流,有比较好的带载能力. 二.管脚排列 三.引脚功能 ...
随机推荐
- mybatis 使用resultMap实现数据库的操作
resultType:直接表示返回类型 resultMap:对外部resultMap的引用 二者不能同时使用 创建一个实体类Role和User public class Role { private ...
- iOS开发摇动手势实现详解
1.当设备摇动时,系统会算出加速计的值,并告知是否发生了摇动手势.系统只会运动开始和结束时通知你,并不会在运动发生的整个过程中始终向你报告每一次运动.例如,你快速摇动设备三次,那只会收到一个摇动事件. ...
- 百度编辑器Ueditor 初始化加载内容失败解决办法
项目上有用到百度文本编辑器ueditor,在页面加载的时候初始化编辑器内容时候,使用 $.document.ready(function() { UE.getEditor('editor').setC ...
- avalon框架,简单的MVVM
今天我又要挑战一次一个高大上的公司了 但是看着jd有点忧伤了要求如下 基本要求:1.熟悉 HTML / CSS / JS 并有良好的代码风格:2.理解 Web 标准,语义化,可以解决主流浏览器及不同版 ...
- 记一个奇怪的python异常处理过程
我的一个程序, 总是在退出时报异常, Exception TypeError: "'NoneType' object is not callable" in <functio ...
- SpringMvc 相关,bean map转换,百度天气,base64.js,jsBase64.java;
1. Map<String, Object>与JavaBean[POJO, Model]转换; //model public class model{ private int id; pr ...
- sql 去除重复记录
1.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select * from peoplewhere peopleId in (select peopleId from ...
- string,const char*,char*之间的相互转换
1. string转const char* string s = "abc"; const char* c_s = s.c_str(); 2. const char*转string ...
- PHP error_log() 函数
定义和用法 error_log() 函数向服务器错误记录.文件或远程目标发送一个错误. 若成功,返回 true,否则返回 false. 语法 error_log(error,type,destinat ...
- FineUI第七天---文件上传
文件上传的方式: 控件的一些常用属性: ButtonText:按钮文本. ButtonOnly:是否只显示按钮,不显示只读输入框. ButtonIcon:按钮图标. ButtonIconUrl: ...