集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 9637|回复: 21

fpga控制0809

[复制链接]
ICE 发表于 2010-6-27 23:52:45 | 显示全部楼层 |阅读模式
//功能:采集数据,找出最大的数据

//McuStart  单片机输入信号,要求FPGA开始工作
//McuReset  复位AD0809
  
//Write 开始AD0809转换
//Read  读取AD0809转换结果
//EOC  AD0809是否转换完成标志
//Data  0809数据口

//我省略了0809de的ALE 和时钟输入 引脚
//只要不断有McuStart脉冲,就可以不断进行AD转换,不过脉冲周期长度要考虑
module  AD0809(McuStart, McuReset, Write, Read, EOC, Data);

input[7:0]Data;
input  McuStart,  McuReset, EOC;

output  Write, Read;

reg TempA[7:0], TempB[7:0];

always @(negedge McuReset) //复位
begin
  if(McuReset == 1'b0)
  begin
    Write = 0;
    Read= 0;
  //  ALE  = 0;
  //  TempA = 8b'00000000;
  //  TempB = 8b'00000000;
  end
//  else这里不加else,不知是否有问题?
  
  
end

always @(negedge McuStart)//
begin
if((McuStart == 1'b0) && (McuReset == 1'b0) && (EOC ==1) )//
   begin
    Write = 1;//
    Read= 0;
    Write = 0;//产生一个写脉冲,0809开始转换
     // 但是我想不出如何延时,以加宽脉冲?
  end
end

always @(posedge EOC)
begin
  if(EOC == 1'b1)
  begin
  Read = 1;
  Write = 0;
  Read = 0;// 产生一个读脉冲,这里也要加延时,不知如何加
  TempA = Data;
  if(TempA > TempB)
  begin
    TempB = TempA;
  end
  
  end
end

endmodule
 楼主| ICE 发表于 2010-6-28 01:49:57 | 显示全部楼层
用软件仿真下就知道是否可以不加&nbsp;&nbsp;else 了<br>
  延时个人觉得可以重复同样的语句来实现  不知大家意下如何?
HANG 发表于 2010-6-28 02:19:13 | 显示全部楼层
在VHDL中有 wait 语句可以实现延时<br>
  不知道 Verilog&nbsp;&nbsp;是否也有这样的语句 楼主可以试试
CCIE 发表于 2010-6-28 02:44:23 | 显示全部楼层
延时可以用计数器或状态机实现
ANG 发表于 2010-6-28 03:26:00 | 显示全部楼层
可不可以用wait那?
longt 发表于 2010-6-28 03:50:55 | 显示全部楼层
不可以用wait吧, wait是仿真的时候用的!
FFT 发表于 2010-6-28 05:26:28 | 显示全部楼层
居然听到说用WAIT,如果WAIT可以的话,VERILOG里面就可以用#+时间来控制时间了。<br>
正确方法是:[广告]:用计数器或状态机实现,或者二者结合可以。
usd 发表于 2010-6-28 07:18:39 | 显示全部楼层
用计数器或状态机实现,或者二者结合可以。<br>
俺去研究了
usb 发表于 2010-6-28 08:13:24 | 显示全部楼层
用#+时间或者使用 always 语句实现自循环 以及使用 repeat 语句均可实现 <br>
&nbsp; &nbsp;例如# 10 Write = 0;
CCIE 发表于 2010-6-28 09:21:46 | 显示全部楼层
可以用状态机把
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-4-19 23:59 , Processed in 0.064919 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表