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

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

10/11 10:05
383
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

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
    下载

相关推荐