liudingding 发表于 2017-7-27 13:34:35

请看一下这段问题verilong HDL语言应怎么改

/* 请看一下这段问题verilong HDL语言应怎么改
提示                  hhh<=0;
                          hhh<= hhh   +   cin;
这两行object "hhh" on left-hand side of assignment must have a variable data type
刚开始学verilong HDL语言,还没开窍,请指导
附加问一下,计数器清零应怎么办?我的程序行吗?
*/
module CPLD(cs1,in,out,ck_out,load,hhh,cin);
    input in;
    output out,ck_out,cs1;                                                                                              assign out    =!in;
       output hhh;//
       input       load,cin;
       
       assign ck_out = in;
       assign cs1    = in;
             always @(posedge in)
                  begin
                           if(load)
                                  hhh<=0;
                           else
                                  hhh<= hhh   +   cin;
                       end
endmodule

aammoo 发表于 2017-7-27 13:46:10

reg hhh      

流氓马 发表于 2017-7-27 13:50:56

楼上说的对,output hhh;这句下面再加一句reg hhh;

你这个计数器,累加到最大后,会清零的

liudingding 发表于 2017-7-27 16:12:38

本帖最后由 liudingding 于 2017-7-27 16:13 编辑

如果我要1000个脉冲清零,用if(hhh=1000)load=1,需要reg Ioad,我理解load成为寄存器型数据,我想把它设置为普通的门型数据,应怎样设置?
页: [1]
查看完整版本: 请看一下这段问题verilong HDL语言应怎么改