DAC8563芯片参考手册重要内容总结

DAC8563的主要参数:

  1. 供电电压:2.7~5.5V
  2. 分辨率:16bit,双通道
  3. 通讯接口:3线SPI串行通讯,速率最高至50MHz,支持3.3V和5V单片机(有MOSI/CLK/CS,无MISO)
  4. 内部自带2.5V参考电压。使用内部参考电压时,DAC通道输出电压根据增益设置的不同可输出0~2.5V(增益为1)或0~5V(增益为2,默认)

高低电平电气规范:

DAC8563的芯片封装如下:

1、【VoutA】模拟输出电压通道A,对应DAC-A寄存器的设置值

2、【VoutB】模拟输出电压通道B,对应DAC-B寄存器的设置值

3、【GND】 芯片所有电路的参考地

4、【LDAC】 将寄存器设置值同步输出,在同步模式下该引脚接地,芯片接收到的数据将在第24个时钟周期的下降沿同步输出。(在此使用的是同步模式)

5、【CLR】 异步清除输入,在写输出寄存器时若产生下降沿,则写操作中止。下降沿触发后,DAC8563输出电压中间值

6、【SYNC】 片选,电平触发(低电平)而非边沿触发,为低时才会采样数据至DAC寄存器。DAC通道的输出电压在第24个时钟下降沿之后更新。若在第23个时钟边沿之前SYNC被拉高,则忽略本次写操作

7、【SCLK】 串行时钟输入,数据传输速率最大至50MHz,因此SPI的时钟最大只能设置为50MHz

8、【Din】 串行数据输入,在时钟的下降沿被采样(由在下降沿被采样的信息可知,需将STM32的SPI配置为 (1)CPOL=高,CPHA=第1个边沿 (2)CPOL=低,CPHA=第2个边沿)

9、【AVDD】 供电电源输入(2.7~5.5V)

10、【VREFIN/VREFOUT】双向参考电压引脚,当使用内部参考时,该引脚向外输出内部参考电压2.5V

时序图:

重视以上时序图中的参数:

【t4】每次24位的数据传输完成后,要将SYNC即片选拉高保持一段时间,至少需等待80nS才能进行下一次的转换(即拉低)

【t5】从SYNC即片选拉低到SCLK第一个下降沿的时间,至少为13nS,因此在片选后要稍作延时再进行数据的发送

DAC8563的电压输出框架如图所示:

根据DAC8563上电复位的描述,在上电时DAC寄存器都会被设置为半量程,即寄存器中值为32768,所有通道的输出电压为VREFIN/2。这里有一个疑问,假使使用的是内部参考,又因为在上电时内部参考被禁止,等效于VREFIN为0V,因此所有通道的输出电压在软件未启动时输出仍是0V。

DAC8563有内部电压参考,但上电默认关闭,当内部参考打开时会在VREFIN/VREFOUT引脚输出2.5V,并且可以灌电流或拉电流最大20mA。根据内部参考的拉电流能力,可以将DAC8563芯片输出的2.5V参考电压作为其它芯片的参考电压。

串行通讯重要数据:

24位数据,MSB(高位在前),下降沿采样,3线SPI无DOUT

程序中需要使用到的指令图中红框已框出,由上到下依次为:

1、写DAC通道A,更新DAC通道A

2、写DAC通道B,更新DAC通道B

3、写DAC通道A和B,更新DAC通道A和B

4、设置DAC通道A和B增益均为2

5、DAC通道A和B上电

6、使能内部参考,设置所有DAC通道增益为2

DAC8563输出正负电压参考电路:

对以上设计示例中的公式进行推导,涉及到运算放大器计算中的虚短、虚断。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/429599.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

20155220 吴思其 2016-2017《java程序设计》第一周总结

对第一章和第二章的学习 通过了前两章的学习,我了解到了java的由来以及JVM/JRE/JDK三大平台 JDK JDK 是 Java 语言的软件开发工具包。 JDK是整个JAVA的核心,包括了Java运行环境,一堆Java工具(javac/java/jdb等)和Java基…

手把手教你从0创建STM32串口空闲+DMA数据接收工程

串口通讯是嵌入式系统中最常用的通讯方式。 STM32的串口接收普通的方式是在串口读数据寄存器非空RXNE中断(Read data register not empty)中1个字节1个字节的接收串口数据,一帧数据的接收完成可以使用结束帧判断,也可以使用定时器…

CSS display属性的值及作用

display 的属性值有:none|inline|block|inline-block|list-item|run-in|table|inline-table|table-row-group|table-header-group|table-footer-group|table-row|table-column-group|table-column|table-cell|table-caption|inherit其中常用的的有none、inline、blo…

TC214B直流电机控制芯片

潘多拉开发板中通过TC214B电机驱动芯片驱动板载直流电机,因此需要先了解TC214B芯片的主要功能及其使用方法。 通过以上资料可以了解到,MCU控制TC214B从而进行直流电机转动方向,方向控制(即前进/后退)主要是通过控制MCU…

题目1065:输出梯形

AC: #include<iostream> using namespace std; int main() {int h;while(cin>>h){int i,j,k,t;k(h-1)*2;th;for (i0;i<h;i)//h在此处已用&#xff0c;所以用th来代替重用&#xff1b;{ for (j0;j<k;j)cout<<" ";k-2;for (j0;j<t;j)cout&…

《C语言深度解剖》中的.c/.h 程序模板及函数注释风格

编程规范和变量命令规范对于代码的可阅读性、可维护性有着很大的影响。编程规范有很多&#xff0c;大公司也会制定自己公司的编程规范&#xff0c;如《华为技术有限公司c语言编程规范》等。对于个人编程来说没必要将自己编写的代码按照每一种编程规范去规范&#xff0c;因为不同…

每天学点Linux命令:倒叙打印文件第二行的前100个大写字母

sed -n 2p afile | grep [[:upper:]] -o | tr -d \n | cut -c1-100 | rev 处理第二行 grep:提取大写字母 o: 不显示非结果 tr:删除换行 Cut&#xff1a;截取1-100个字符 rev:逆序 断断续续搞了好长时间。最后还是解决了&#xff1b;man是个好东西~ 好人&…

ST7789V2 LCD驱动芯片

ST7789V2是一个单芯片TFT-LCD驱动器。该芯片可以直接连接到外部MCU&#xff0c;支持并行8080系列的8位/9位/16位/18位接口&#xff0c;也支持SPI串行通讯接口。 显示数据可以存储在240x320x18bits的片上显示数据RAM中。 它可以在没有外部操作时钟的情况下执行显示数据RAM读写操…

关于Java Collections的几个常见问题

列举几个关于Java Collections的常见问题并给出答案。 1. 什么时候用LinkedList&#xff0c;什么时候用ArrayList&#xff1f; ArrayList是使用数组实现的list&#xff0c;本质上就是数组。ArrayList中的元素可以通过索引随机获取一个元素。但是如果该数组已满&#xff0c;当添…

STM32 USB虚拟串口原理(上)

USB虚拟串口是使用USB的CDC&#xff08;CDC为communication device class(virtual port com)&#xff09;类实现的一种通讯接口。使用STM32自带的USB slave功能可以在电脑上实现一个USB虚拟串口&#xff0c;在电脑上可以直接使用串口调试助手打开该虚拟串口和STM32进行通讯。ST…

RT-Thread使用ENV生成工程时自己添加的文件被清掉的解决方法

在项目中难得一次就可以将需要的模块或组件包添加完成&#xff0c;因此在实际开发中经常会遇到在未完成的项目中增加软件包或使能硬件功能的情况。一般我们会使用RT-Thread的ENV辅助开发环境的menuconfig图形化系统配置工具对组件包进行配置&#xff0c;配置完后使用pkgs --upd…

怎样使用两行代码实现博客园打赏功能

也许大家看博客园博客的时候&#xff0c;遇到过一些博客右侧&#xff0c;展示了打赏二维码~ 如下图所示 那么&#xff0c;这是怎么实现的呢~~~ 不错&#xff0c;你没猜错&#xff0c;他们使用的是本人写的一个js插件--tctip。 大家搜一下&#xff0c;还能搜到网上有些tctip的教…

STM32 HAL库 .c/.h 文件介绍

HAL库中各个文件的介绍&#xff1a; startup_stm32l475xx.s 启动文件的主要作用是进行RAM中堆、栈内存的分配和初始化&#xff0c;中断向量表及中断函数的定义等&#xff0c;进行完这一系列工作后执行系统复位从而跳转至用户main函数开始执行。 stm32l4xx_hal_ppp.c/.h 基本…

【bzoj3514】 Codechef MARCH14 GERALD07加强版

http://www.lydsy.com/JudgeOnline/problem.php?id3514 (题目链接) 题意 给出$n$个点$m$条边的无向图&#xff0c;询问保留图中编号在$[l,r]$的边的时候图中的连通块的个数。 Solution 将边的编号作为权值用LCT维护一个最大生成树&#xff0c;同时记录一下加入当前边$i$会把哪…

C语言中将浮点数四舍五入取整的宏定义(支持正数和负数的圆整)

在实际工程项目中经常会需要将浮点型的计算结果四舍五入为整型&#xff0c;因此定义如下宏定义对浮点型进行圆整。若所需圆整的浮点型结果正负号无法确定&#xff0c;则需要将结果圆整为带符号的整型结果如int8_t、int16_t、int32_t等。对于结果>0的浮点数和<0的浮点数圆…

原码、反码、补码,计算机中所有的数都是以补码的形式存储的

计算机中所有的数都是以补码的形式存储的 原码&#xff1a; 一个数的原码就是其10进制的数转换为2进制数&#xff0c;正数的原码符号位为0&#xff0c;负数的原码符号位为1。 如10进制的数26667&#xff0c;将其转换为2进制为0110 1000 0010 1011。10进制的数-26667&#xf…

RT-Thread设备框架学习感悟

前面几周跟着野火的教程从0到1实现了RT-Thread的内核&#xff0c;对RT-Thread的调度机制和线程、定时器的底层实现有了总体的了解。后面还需进一步对齐实现细节进行探索&#xff0c;但大致先了解其框架&#xff0c;后面再进行细致的了解。在学习新知识时&#xff0c;最重要的是…

Tensorflow之RNN,LSTM

Tensorflow之RNN,LSTM #!/usr/bin/env python2 # -*- coding: utf-8 -*- """ tensorflow之RNN 循环神经网络做手写数据集分类 """import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data#设置随机数来比较两种计算…

python selenium T3

python selenium T3 既然要做自动,就得对得起自动化的这个名字。这一章我们将进一步的增加自动化测试的实用,增加自动发邮件功能、多线程 和定时任务,让我们的自动化工作真正变得高效而又强大起来。 EG1 : with open(report.html , r) as f:msg MIMEText(f.read() , _subtypeh…

RT-Thread中自定义MSH命令传入的参数是字符串,需用户自行检查和解析

如下是在将安富莱的dac8563模块对接到潘多拉开发板RT-Thread SPI设备框架中时导出到RT-Thread的自定义MSH命令&#xff0c;需要注意的是MSH传入的是字符串&#xff0c;需要自行对字符串进行解析处理。 #include "stdlib.h" /* 使用其中的函数&#xff1a;atoi(); */…