yy19840806 发表于 2011-6-13 20:41:59

stateflow求助

这个是我照例子做的一个计时器的小模型 我选择的是switch由方波的上升沿触发,为啥当第二个上升沿来到时才开始计数呢

请高手给予技术支持

谢谢

ljelly 发表于 2011-6-14 09:47:05

把reset状态框中的output初值改为1, 就可以了,以后复位值也在1,不为0
方波的第一个周期进行复位,即在第一个上升沿进行了初始化输出,使得output为0
下一个上升沿开始切换状态,开始计数

yy19840806 发表于 2011-6-14 21:14:55

在第一个上升沿到来的时候,不是完成了对switch的触发吗,这时候的状态不是应该转到count吗?那不是应该输出1吗?还是output虽然在此时变成1了,但是输入的值还是上一个仿真周期的值,是不是与仿真周期和采样周期的设置有关系?

ljelly 发表于 2011-6-15 08:40:16

这是一种状态机制,当第一个上升沿来到时,才能触发第一个状态框,进行复位操作,使得output = 0,等到下一个上升沿来到时,才进行条件判断,状态转移和相应的动作

ljelly 发表于 2011-6-15 10:48:32

找到通过设置让初始状态激活的选项后,就可以在执行伊始,状态就被激话,保证在第一个上升沿进行相应的动作。因为你的状态运行是事件触发的,与仿真周期和采样周期无关
状态图初始状态为非活动状态,如果需要在模型运行伊始,状态就是活动的,则需要在Chart Properties对话框中选择Execute(enter) Chart At Initialization选项。

yy19840806 发表于 2011-6-17 22:10:41

不胜感谢,万分感谢
页: [1]
查看完整版本: stateflow求助