dac7714和dac3152两种DAC芯片FPGA控制流程记录
记录时间2022910
- 前言
离开上个公司,将在公司使用过的几个接口和几个片子控制过程记录一下,以后可能用不到,也有可能会用得到,留下以后可以复用。。。。。。
一、dac3152
先说一下这个,这个芯片用我上上个公司的一个老领导的话就是–这很简单。不需要配置芯片内的寄存器,直接控制输出就行。。。。。。
对于FPGA端只需要控制输出DACCLP/N和N0P/N-D9PN,即差分时钟和10bit的差分数据,输出为IOUTAP/N和IOUTBP/B两个通道。
控制时序:
DAC3152芯片可以控制两个输出通道,只需要在上升沿发送B通道的电压数据,下降沿发送A通道的电压数据,因为是10bit并行输入数据,所以控制餐数范围0-1023,当然也可以AB两个通道输出相同的电压,即上升沿下降沿发送数据一致我用的就是两通道输出相同的电压。
代码:
always @(posedge clk_in or negedge rst_in_n)beginif(!rst_in_n)dac_d_buf <= 0 ;else if(dac_transfer_i_raising)dac_d_buf <= dac_wdata_i[9:0] ;//modle2 512end assign dac_d = dac_d_buf ;assign dac_clk = clk_in ;
输入时钟的频率决定着DA芯片输出电压最大频率可以达到500MHz,我只输出100MHz时钟。
时钟不变,数据改变,可以用万用表测试输出电压。
用万用便测试输出电压:AB两个通道实际输出有差别。
二、dac7714
这个芯片可以产生四路DA信号,VoutA、VoutB、VoutC、VoutD,通道选择由SPI接口配置
需要配置的管脚除了SPI的三线外,还有三个管脚需要配置
**LOADDACS/**低有效,低电平改变输出电压,高电平锁存各通道输出电压,RESET/ 复位信号,低有效,RESETSEL设置复位后输出的电压值,0表示复位后输出控制字000对应的电压值,1表示复位后输出控制字800对应的电压值。
根据时序图可知,需要通过SPI向芯片写入16bit数据便可以完成配置,有效电压控制数据为D11-D0共12Bit,A1和A0则用来选择控制输出哪路DA输出,具体控制列表如下:
SPI程序只需要配置时钟上升沿发送数据,下降沿采样即可。(程序简单就不放了。。。。)
dac7714和dac3152两种DAC芯片FPGA控制流程记录相关推荐
- NVMe协议逻辑实现、nvme固态硬盘,支持master和slave两种模式,FPGA、SSD控制器,接口统一标准化、简单方便
NVMe协议逻辑实现.nvme固态硬盘,支持master和slave两种模式,FPGA.SSD控制器,接口统一标准化.简单方便. 1.支持admin和nvme命令集. 2.支持随机和顺序读写,顺序读写 ...
- 【嵌入式硬件芯片开发笔记】4-20mA DAC芯片AD5421配置流程
[嵌入式硬件芯片开发笔记]4-20mA DAC芯片AD5421配置流程 16位.串行输入.环路供电.4 mA至20 mA DAC 可用于HART协议相关电路 同AD5700配合使用 AD5421的SP ...
- 【MIMO】两种空间相关信道生成方式的记录(公式+MATLAB代码)
文章目录 前言 一. Kronecker相关信道模型 二.生成方式1 1.公式 2.MATLAB代码 三.生成方式2-complex correlation 1.公式 2.MATLAB代码 四.生成方 ...
- initramfs两种方法恢复_微信会话记录删除了怎么恢复?最权威的方法在这
随着手机软件的不断更新以及长时间使用,占用的手机内存也开始越来越大,我们只能通过清理手机内存来释放多余的空间了.如果我们在清理微信的时候删除了聊天记录,那后面有需要的时候该怎么找回呢?很多朋友都会上百 ...
- ecshop flow.php?step=checkout,【原创文章】推荐两种调试ecshop php程序日志记录的方法...
最近在调试ecshop的程序,发现一些好的调试方法.在php程序的调试中,对于变量值的获取非常重要,这样才能判断是哪里出了问题,如果变量明明赋值了,为什么是空值呢,就可以一步一步追查到原因.我比较喜欢 ...
- mysql proxy性能差_两种MySQL-Proxy架构的测试对比记录
为观察读写分离效果,可以先停掉slave复制同步(slave stop),通过打开log参数,tail -f sql.log观察,单独进行读写测试,select查询语句基本上都是在slave中进行的, ...
- 基于web端和C++的两种深度学习模型部署方式
深度学习Author:louwillMachine Learning Lab 本文对深度学习两种模型部署方式进行总结和梳理.一种是基于web服务端的模型部署,一种是基... 深度学习 Author:l ...
- 【深度学习】基于web端和C++的两种深度学习模型部署方式
深度学习 Author:louwill Machine Learning Lab 本文对深度学习两种模型部署方式进行总结和梳理.一种是基于web服务端的模型部署,一种是基于C++软件集成的方式进行部署 ...
- pytorch基于web端和C++的两种深度学习模型部署方式
本文对深度学习两种模型部署方式进行总结和梳理.一种是基于web服务端的模型部署,一种是基于C++软件集成的方式进行部署. 基于web服务端的模型部署,主要是通过REST API的形式来提供接口方便调用 ...
最新文章
- ubuntu 18.04 添加快快捷方式
- JAVA并发编程JUC基础学习(简介)
- 用alternatives进行java版本的转换
- VisualStudioCode下载安装与安装中文插件教程(图文教程)
- 网易云信SDK V3.1.0版本发布啦
- dubbo provider异步_dubbo九连问你知道多少?
- 排序算法之快速排序详解
- Spring中拦截/和拦截/*的区别 - 不能访问到返回的JSP - 访问静态资源(jpg,js等)
- 在线学ajax,ajax学习
- Linux: chmod 和 chown用法小结
- 医院怎样进行计算机安全管理制度,医院信息安全管理制度
- cvpr2020 人脸检测与识别_CVPR 2020 | 元学习人脸识别框架详解
- 10大Ubuntu应用程序
- WEB Service 下实现大数据量的传输
- vs2017优雅配色
- Android OTA在线升级一(架构分析)【转】
- 计算机桌面文字重影,电脑桌面字有重影怎么办
- 2018 PKU_WC 长沙游 《我到长沙来看雪》
- js怎么识别图片中的文字,js图片文字识别代码
- 服务器报错 http error 503.the service is unavailable怎么解决