SPI设置

注意,虽然手册上CPOL(CLK空闲时电平)为低,但实测是是高电平

连接

SYNC 为片选引脚,使用时拉低

FSE/PSE为频率与相位寄存器选择,均拉低即可

void SPI_Write_16Bits(uint16_t transdata)
{
csset();
uint16_t arrofdata[1];
arrofdata[0]=transdata;
HAL_SPI_Transmit(&hspi1, (uint8_t* )arrofdata, 1, HAL_MAX_DELAY);
csreset();
}

频率设置

由于输入为十六位数据,而频率设置为28位,故传输两次数据

xx +后14位

xx +前14位

xx为频率寄存器的标志,10为寄存器1,01为寄存器0

例:传输数据100100100100100100

传入寄存器1

则传输

10+00100100100100

10+00000000001001

频率与传入的值通过拟合后为x*179/50

    int t=123456;//频率值
uint16_t a=0x8000,b=0x8000;
t=t*179/50;
if(t>16383){
   b|=(((t>>14)<<14)^t);
a|=(t>>14);}
else b|=t; //处理输入的两次值
HAL_Delay(1000);
SPI_Write_16Bits(0x2100);
SPI_Write_16Bits(0XC000);
SPI_Write_16Bits(0x2100);//init
SPI_Write_16Bits(0x2800);//选择寄存器1
SPI_Write_16Bits(b);
SPI_Write_16Bits(a);
SPI_Write_16Bits(0x2808);//选择寄存器1输出

由于int范围,t最高10M,在低于10hz时误差较大

AD9834配置的更多相关文章

  1. 配置android sdk 环境

    1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/

  2. Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记

    以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...

  3. react-router 组件式配置与对象式配置小区别

    1. react-router 对象式配置 和 组件式配置    组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...

  4. 总结:Mac前端开发环境的搭建(配置)

    新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...

  5. Android Studio 多个编译环境配置 多渠道打包 APK输出配置

    看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...

  6. Virtual Box配置CentOS7网络(图文教程)

    之前很多次安装CentOS7虚拟机,每次配置网络在网上找教程,今天总结一下,全图文配置,方便以后查看. Virtual Box可选的网络接入方式包括: NAT 网络地址转换模式(NAT,Network ...

  7. [linux]阿里云主机的免登陆安全SSH配置与思考

    公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...

  8. nginx配置反向代理或跳转出现400问题处理记录

    午休完上班后,同事说测试站点访问接口出现400 Bad Request  Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...

  9. Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)

    本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...

  10. 在 ML2 中配置 OVS flat network - 每天5分钟玩转 OpenStack(133)

    前面讨论了 OVS local network,今天开始学习 flat network. flat network 是不带 tag 的网络,宿主机的物理网卡通过网桥与 flat network 连接, ...

随机推荐

  1. 用C++写的文件字符数、单词数以及总行数的统计(源码)

    #include <stdio.h> #include <fstream> #include <string> using namespace std; //计算单 ...

  2. 最新go语言学习教程

    go语言学习教程 集合了连接go routine.go连接redis.go连接kafka等示例,所有代码均经过实践,可以直接使用 https://github.com/fastbpmn/go-stud ...

  3. mysql 的 json 类型

    MySQL的 json 数据类型 MySQL5.7 后的版本,添加了对于 json 类型的支持.此前,json 类型的数据,只能在代码层面做 json.loads() 和 json.dumps() 操 ...

  4. [笔记]gdb调试中一个string变量太长,如何将该string变量完全输出在屏幕上?

    来自 https://stackoverflow.com/questions/233328/how-do-i-print-the-full-value-of-a-long-string-in-gdb ...

  5. noi 2.1基本算法之枚举

    7647:余数相同问题 1.描述 已知三个正整数 a,b,c. 现有一个大于1的整数x,将其作为除数分别除a,b,c,得到的余数相同. 请问满足上述条件的x的最小值是多少? 数据保证x有解. 2.输入 ...

  6. linux的打开文件标志O_CLOEXEC

    当没有这个标志,打开文件时,得到的fd, 将会被子进程继承,并且子进程会获得这个fd的读写能力. 往往父进程打开的文件,不希望子进程读写,所以,子进程启动之后,可以手动关闭fd. 但是关闭fd的操作不 ...

  7. wake on lan sender 2.0.8

    局域网 远程关机

  8. 为什么 A 能 ping 通 B,B 却不能 ping 通 A ?

    有开发小哥咨询了一个问题,记录一下处理过程分享给有需要的朋友. 问题如下: A.B 两台开发服务器连接交换机,并且 A.B 两台服务器的 IP 地址设置为同一个网段,却发现 A 能 ping 通 B ...

  9. 深入Alertmanager 概念与配置介绍

    原文: https://www.cnblogs.com/gered/p/13496950.html 警报一直是整个监控系统中的重要组成部分,Prometheus监控系统中,采集与警报是分离的.警报规则 ...

  10. ubuntu 逻辑卷增加磁盘

    使用lv* 相关的命令 lvdisplay lvscan ACTIVE            '/dev/ubuntu-vg/ubuntu-lv' [<74.00 GiB] inherit lv ...