• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

数模转换AD5545芯片驱动程序设计Verilog代码VIVADO仿真

5小时前
109
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24111QU6459D.doc

共1个文件

名称:数模转换AD5545芯片驱动程序设计Verilog代码VIVADO仿真

软件:VIVADO

语言:Verilog

代码功能:数模转换AD5545芯片驱动程序

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. Testbench

5. 仿真图

部分代码展示:

`timescale?1ns?/?1ps
//////////////////////////////////////////////////////////////////////////////////
//?Company:?
//?Engineer:?
//?
//?Create?Date:?2019/10/10?22:06:23
//?Design?Name:?
//?Module?Name:?AD5545_drive
//?Project?Name:?
//?Target?Devices:?
//?Tool?Versions:?
//?Description:?
//?
//?Dependencies:?
//?
//?Revision:
//?Revision?0.01?-?File?Created
//?Additional?Comments:
//?
//////////////////////////////////////////////////////////////////////////////////
//数据速率为1M,AB分别0.5M
module?AD5545_drive(
????input?clk_200M,
????input?[15:0]?data_A,
????input?[15:0]?data_B,
????output?reg?DA_SDI,
????output?reg?DA_CLK,
????output?reg?DA_CS_n,
????output?reg?DA_LDAC_n
????);
reg?flag_AB=0;
reg?[1:0]?A1A0=2'd0;//01--A;10--B
reg?[15:0]?data_DA=16'd0;//DA数据
reg?[7:0]?count=8'd0;//计数器
always@(posedge?clk_200M)
????if(count==8'd199)
????????flag_AB<=~flag_AB;//flag_AB==0时输出A数据,=1时输出B数据
always@(posedge?clk_200M)
????if(flag_AB==0)begin//flag_AB==0时输出A数据,=1时输出B数据
????????A1A0<=2'b01;//01--A;10--B
????????data_DA<=data_A;
????????end
?????else?begin
????????A1A0<=2'b10;//01--A;10--B
????????data_DA=8'd199)
????????count<=8'd0;
????else
????????count<=count+8'd1;
//count=0~5---cs=1?ldac=1;
//count=6~150---cs=0?ldac=1;
//count=160~200---cs=1?ldac=0;
//控制DA_CS_n
always@(posedge?clk_200M)
????if(count<8'd6)
????????DA_CS_n8'd159)
????????DA_CS_n<=1;
????else
????????DA_CS_n<=0;
//控制DA_LDAC_n
always@(posedge?clk_200M)
????if(count8'd170)
????????DA_LDAC_n<=0;
????else
????????DA_LDAC_n<=1;
//控制DA_CLK
always@(posedge?clk_200M)
????case(count)
????????8'd10:DA_CLK<=1;//第1个时钟
????????8'd14:DA_CLK<=0;
????????
????????8'd18:DA_CLK<=1;//第2个时钟
????????8'd22:DA_CLK<=0;
????????
????????8'd26:DA_CLK<=1;//第3个时钟
????????8'd30:DA_CLK<=0;
????????
????????8'd34:DA_CLK<=1;//第4个时钟
????????8'd38:DA_CLK<=0;
????????
????????8'd42:DA_CLK<=1;//第5个时钟
????????8'd46:DA_CLK<=0;
????????8'd50:DA_CLK<=1;//第6个时钟
????????8'd54:DA_CLK<=0;
????????8'd58:DA_CLK<=1;//第7个时钟
????????8'd62:DA_CLK<=0;
????????8'd66:DA_CLK<=1;//第8个时钟
????????8'd70:DA_CLK<=0;
????????8'd74:DA_CLK<=1;//第9个时钟
????????8'd78:DA_CLK<=0;
????????8'd82:DA_CLK<=1;//第10个时钟
????????8'd86:DA_CLK<=0;
????????8'd90:DA_CLK<=1;//第11个时钟
????????8'd94:DA_CLK<=0;
????????8'd98:DA_CLK<=1;//第12个时钟
????????8'd102:DA_CLK<=0;
????????8'd106:DA_CLK<=1;//第13个时钟
????????8'd110:DA_CLK<=0;
????????8'd114:DA_CLK<=1;//第14个时钟
????????8'd118:DA_CLK<=0;
????????8'd122:DA_CLK<=1;//第15个时钟
????????8'd126:DA_CLK<=0;
????????8'd130:DA_CLK<=1;//第16个时钟
????????8'd134:DA_CLK<=0;
????????8'd138:DA_CLK<=1;//第17个时钟
????????8'd142:DA_CLK<=0;
????????8'd146:DA_CLK<=1;//第18个时钟
????????8'd150:DA_CLK<=0;

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1368

  • 2-24111QU6459D.doc
    下载

相关推荐