我正在尝试在SIMULINK中实现计数器逻辑
in1, in2 are inputs
out1 is the output
if in2 = 0, out1 = 0;
if in2 = 1, out1 = 1 after x high edges of in1
我尝试过使用“Detect Rise Positive”块但是失败了,因为我没有足够的经验在SIMULINK中正确实现时序图。有人可以指出我正确的方向吗?
更新
自从发布此问题以来,我采取的方法是“触发并启用子系统”。我正在尝试将其设置为:
in2 becomes the enable signal
in1 becomes the trigger
in2 becomes the intput to the subsystem
Out1 becomes the output of the subsystem
但我认为以上是垃圾。不幸的是,它不是VHDL,我可以使用4-5行硬件逻辑描述来实现它。
答案 0 :(得分:0)
使用Triggered和Enabled子系统是正确的方法,但您的输入(无疑是子系统内部的内容)需要修改。
子系统没有任何输入(触发和启用信号除外)。
在子系统内,
启用后,计数器应在输出变高之前计算所需的步数(触发时)。
答案 1 :(得分:0)
可以在simulink中非常容易地实现计数器逻辑。接一个开关,将控制输入作为int1。如果int1为1,则输出shuld为0否则取另一个开关将其控制输入作为int2。如果int2为1,则输出shuld为反馈功能延迟块中给出的1+先前值