首先明确一点,求解器的仿真步长和仿真图里的模块的采样时间间隔不是一回事。
对于求解器来说,仿真步长越小,求解越精确,但是越耗时。一般我们会设置成自动步长,让matlab根据运算状态自动实时调整步长。当然我们也可以强制设置仿真步长为固定值。对于在单片上运行的程序,用simulink做固定步长仿真很有意义。
设置求解器为固定步长。
如下图设置仿真步长为固定2.5ms
![](https://i-blog.csdnimg.cn/blog_migrate/a5d95bb2793afbb097bde3d52565d16e.png)
matlab function模块的采样时间间隔
也即matlab function多长时间会被执行一次。
右击选择:block parameter。,然后填上sample time为2.5ms
类似的模块还有:constant常数模块、inport输入模块等
![](https://i-blog.csdnimg.cn/blog_migrate/cb48b464807712f7b15cdc3a7f23c0f4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/df42d4223f8677a892028e70ab8762cd.png)
示波器的时间间隔
![](https://i-blog.csdnimg.cn/blog_migrate/f26947135f1f7b798bff5b92c9e07f05.png)