打印

程序求解释

[复制链接]
877|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pkat|  楼主 | 2013-8-31 21:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
go, RS, ST, ge, TE
下面的代码谁给我大概描述一下
reg clk_12m,clk_6m,clk_3m,clk_2m,clk_1m,
    clk_512k,clk_256k,clk_128k,clk_64k,clk_32k,
    clk_16k,clk_8k,clk_4k,clk_2k,clk_1k;       
reg rst_count1,rst_count2,rst_count3,rst_count4;
reg[3:0] counter;
reg timer_flag=1'b0;
reg[3:0] pwr48v_good_count1,pwr48v_good_count2,pwr48v_good_count3,pwr48v_good_count4;

//generate clk
always @ (posedge CPLD_CLK_25M) clk_12m  <= ~clk_12m;
always @ (posedge clk_12m)          clk_6m   <= ~clk_6m;
always @ (posedge clk_6m)          clk_3m   <= ~clk_3m;
always @ (posedge clk_3m)          clk_2m   <= ~clk_2m;
always @ (posedge clk_2m)          clk_1m   <= ~clk_1m;
always @ (posedge clk_1m)          clk_512k <= ~clk_512k;
always @ (posedge clk_512k)         clk_256k <= ~clk_256k;
always @ (posedge clk_256k)     clk_128k <= ~clk_128k;
always @ (posedge clk_128k)         clk_64k  <= ~clk_64k;
always @ (posedge clk_64k)          clk_32k  <= ~clk_32k;
always @ (posedge clk_32k)          clk_16k  <= ~clk_16k;
always @ (posedge clk_16k)          clk_8k   <= ~clk_8k;
always @ (posedge clk_8k)          clk_4k   <= ~clk_4k;
always @ (posedge clk_4k)          clk_2k   <= ~clk_2k;
always @ (posedge clk_2k)          clk_1k   <= ~clk_1k;

always@(posedge clk_1k)
begin
if(!EN_VCC12V)
begin
          counter<=4'b0000;
          timer_flag<=1'b0;
end
else begin
        if(counter!=4'b1111)
begin
          counter<=counter+1'b1;
          timer_flag<=1'b0;
        end
        else begin
          timer_flag<=1'b1;
          counter<=4'b1111;
  end
end
end

相关帖子

沙发
hsbjb| | 2013-8-31 21:49 | 只看该作者
就是个4位的计数器(0~15)。
(1)EN_VCC12V低电平同步reset,计数器清0,标志清0。
(2)把25MHZ的时钟源分频到1KHZ,上升沿驱动一个计数器。当计满到15的时候,计数器保持不变,标志置1

使用特权

评论回复
板凳
无冕之王| | 2013-8-31 22:19 | 只看该作者
计数器分频 然后时钟使能

使用特权

评论回复
地板
yybj| | 2013-8-31 22:26 | 只看该作者
verilog啊,想当年做课设的时候,还写了好多呢。看一楼说的就可以了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

196

主题

2726

帖子

0

粉丝