声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1252|回复: 4

请教一个变频脉冲的输出问题

[复制链接]
发表于 2007-5-6 10:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
各位大哥大姐们,我想用s_function自定义一个输出脉冲模块,要求是根据我输入的可变频率输出相应的脉冲波形,那这个模块应该如何编程呢??请各位大侠帮个忙啊!这个关系到我的毕业设计啊!有人能够回答的话我会十分的感激的!:'(
回复
分享到:

使用道具 举报

发表于 2007-5-6 20:40 | 显示全部楼层

回复 #1 standdy 的帖子

用一个square函数,里面的周期设置为改变的就可以了

评分

1

查看全部评分

 楼主| 发表于 2007-5-8 16:26 | 显示全部楼层
:handshake ,多谢指教!
发表于 2007-5-10 11:30 | 显示全部楼层
做出来了么?最终是怎么来实现的呢?希望分享.
square函数是写在S函数里面的么?
还是直接是个模块
 楼主| 发表于 2007-5-10 11:38 | 显示全部楼层
square是写在s函数里面的啊,然后用s_function模块调用这个函数就可以了!
s函数如下:
function [sys,x0,str,ts] = maichong(t,x,u,flag) %u是输入的变脉冲频率%
switch flag
  case 0
    [sys,x0,str,ts]=mdlInitializeSizes;
    case 3
    sys=mdlOutputs(t,x,u);
    case {1,2,4,9}
     sys=[];
  otherwise
    error(['Unhandled flag = ',num2str(flag)]);
end
function [sys,x0,str,ts]=mdlInitializeSizes
sizes = simsizes;
sizes.NumContStates  = 0;
sizes.NumDiscStates  = 0;
sizes.NumOutputs     = 1;
sizes.NumInputs      = 1;
sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1;
sys = simsizes(sizes);
x0  = [];
str = [];
ts  = [-1 0];
function sys=mdlOutputs(t,x,u)
sys=square(u*t,1);

嘻嘻,是很简单的问题了。请各位看官指教!

[ 本帖最后由 standdy 于 2007-5-10 12:08 编辑 ]

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-11 05:52 , Processed in 0.082752 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表