OpenEdv-开源电子网

标题: 开拓者V2高速ADDA芯片怎么测量模拟量显示在数码管? [打印本页]

作者: nzlyyds    时间: 2023-6-28 16:22
标题: 开拓者V2高速ADDA芯片怎么测量模拟量显示在数码管?
请问在开拓者v2高速adda的实验例程上,
module ad_wave_rec(
    input                 clk         ,  //时钟
    input                 rst_n       ,  //复位信号,低电平有效

    input         [7:0]   ad_data     ,  //AD输入数据
    //模拟输入电压超出量程标志(本次试验未用到)
    input                 ad_otr      ,  //0:在量程范围 1:超出量程
    output   reg          ad_clk      ,   //AD(AD9280)驱动时钟,最大支持32Mhz时钟
    output                led_flag    ,
    output   reg  [19:0]  num   
    );

//*****************************************************
//**                    main code
//*****************************************************

parameter    V_REF        = 12'd3300    ; // 3.3V放大1000倍,避免用小数
wire    [19:0]   num_t     ;               // 临时寄存的数据
assign num_t = V_REF * ad_data ;
assign led_flag = (num == 19'd3000) ? 1'b1 : 1'b0;
always @(posedge clk or negedge rst_n) begin
    if(rst_n == 1'b0) begin
        num <= 20'd0;
    end
    else
        num <= num_t >> 4'd8;
end


//时钟分频(2分频,时钟频率为25Mhz),产生AD时钟
always @(posedge clk or negedge rst_n) begin
    if(rst_n == 1'b0)
        ad_clk <= 1'b0;
    else
        ad_clk <= ~ad_clk;
end   

这个高速ad模块的ad_data跟板载的ad实验里的ad_data是一样的吗?我用板载ad实验的led模块能显示这个高速ad测量到的电压数据吗?是否跟板载ad实验一样需要i2c通信?


作者: QinQZ    时间: 2023-6-28 16:22
nzlyyds 发表于 2023-6-29 09:32
那请问高速adda模块的测到的ad数据怎么转成电压呢,跟板载的ad模块转成电压是一样的吗?

不太一样,板载AD是0~255对应0~3.3V,高速AD输入的0~255对应正负5V,换算关系需要变,而且还有负电压
作者: QinQZ    时间: 2023-6-29 09:02
高速ADDA模块是并行接口,不用IIC接口,你应该将ad_data连接到数码管显示模块的输入数据就行了
作者: nzlyyds    时间: 2023-6-29 09:32
QinQZ 发表于 2023-6-29 09:02
高速ADDA模块是并行接口,不用IIC接口,你应该将ad_data连接到数码管显示模块的输入数据就行了

那请问高速adda模块的测到的ad数据怎么转成电压呢,跟板载的ad模块转成电压是一样的吗?




欢迎光临 OpenEdv-开源电子网 (http://openedv.com/) Powered by Discuz! X3.4