微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 求助:程序中当a=10000000时,为什么cp拉不低?

求助:程序中当a=10000000时,为什么cp拉不低?

时间:10-02 整理:3721RD 点击:
程序如下:
module kongzhibujin(clk,cp,reset);
        input clk,reset;
        output cp;
        reg [25:0]cnt;
        reg a ;
        reg [1:0]cp1;
        reg cp;
always @(posedge clk )
        if (!reset)
                begin
                        if (a!=10000000)   
                                begin
                                        if(cnt==50000)
                                                begin
                                                                                                                                                                                                         
                                                        cnt<=0;
                                                        cp<=~cp;
                                                end
                                        else
                                                cnt<=cnt + 1'b1;
                         end
                        else
                                        begin
                                        cp <= cp1;
                                        end
                         end
                         
always @(posedge clk)
        if(!reset)
                begin
                        if(a==100000000)
                                begin
                                        cp1<=0;
                                end
                        else
                           a<=a+1'b1;
                end
endmodule
请问为什么cp拉不低?

a的位数够不够表示10000000?
确实加到了吗?
加到的时候是持续拉低,还是只是一个脉冲拉低?

那现在想反射脉冲,当发射到500个时,然后让它停止。这样该怎么做?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top