mickeyhao 发表于 2009-7-8 18:58

麻烦高手帮忙看看这段s函数的问题(对脉冲量计数)

功能就是对脉冲量计数
function = sfun_count_inpulse(t,x,u,flag)
//定义几个全局变量 记录前次状态和脉冲数
global num
global pre_state
num=0;
pre_state=0;

function sys=mdlUpdate(t,x,u)
global pre_state
global num
if (u == pre_state)   
    num=num;
else
    num=num+1;
end
pre_state=u;
sys = [];

function sys=mdlOutputs(t,x,u)
global num
sys = num;

主要是对上面几个函数做了修改

思路就是将上次状态(1还是0)与本次比较 不同则脉冲数num加一
组后输出num

多谢大家帮我看看   对s函数的理解肯定有问题 不起作用啊
先谢过了
页: [1]
查看完整版本: 麻烦高手帮忙看看这段s函数的问题(对脉冲量计数)