阅读:1470回复:6
20分求助!!
下面的一个计数器,只进行第一次累加,以后保持,不知为何原因?请教高手!谢谢!!PROCESS (CLKIN)
VARIABLE cnt,CCEN : INTEGER RANGE 0 TO 4; BEGIN cnt :=0; IF (HBG=\'1\')THEN PCI_ADS<=\'Z\'; ELSE PCI_ADS<=\'1\'; END IF; IF (CLKIN\'EVENT AND CLKIN = \'1\') THEN IF (MSH= \'0\') THEN CCEN :=1; PCI_ADS<=\'0\'; ELSE PCI_ADS<=PCI_ADS; END IF; IF (CCEN=1) THEN cnt := cnt + 1; END IF; END IF; IF( cnt=3)THEN PCI_ADS<=\'1\'; cnt :=0; CCEN :=0; END IF; ADS<=PCI_ADS; BAO<=cnt;BAOS<=CCEN; END PROCESS; :( |
|
沙发#
发布于:2003-08-22 15:27
下面的一个计数器,只进行第一次累加,以后保持,不知为何原因?请教高手!谢谢!!PROCESS (CLKIN) 执行一次进程,cnt先清零,然后累加到1。 |
|
|
板凳#
发布于:2003-08-23 15:55
把cnt:=\'0\' 放到进程外面就不会了。
|
|
地板#
发布于:2003-08-23 15:56
加个reset也行呀
|
|
地下室#
发布于:2003-08-23 16:15
最好加reset信号
|
|
|
5楼#
发布于:2003-08-24 16:05
把cnt:=\'0\' 放到进程外面就不会了。同意,每次都把cnt置零了 |
|
6楼#
发布于:2003-08-24 22:30
谢谢大家我已经搞清了但是输出的ADS信号有非常多的毛刺,该如何处理???????????
:D |
|