Matlab/Simulink 自动代码生成 基于模型设计学习教程(8)---- PWM与输入捕获实验
我们先来看一下PWM功能模块以及输入捕获功能模块所在的位置
这里的输入捕获功能是高级输入捕获功能,捕获PWM波形,输出频率、周期、以及高电平或者低电平时间;
我们再来看一下如何配置两个模块的功能
Timer:选择你需要的定时器
PWM Period:PWM波形的周期
Polarity:Active High:定义的占空比为高定平
Active Low:定义的占空比为低定平
Channel:选对对应通道对应的引脚
Sample time:默认-1就可以了;
Enable custom port labels:自主命名输入端口的名字,方便辨识
本实验的配置如下图
因此我们就可以0--100进行控制PWM的占空比
Timer:选择对应的定时器
Capture Pin:选择对应的引脚
Capture Pin Type: Pull Up--上拉电阻,Pull Down:下拉电阻;
Capture Edge: Rising--输出的是高电平的脉宽宽度
Falling--输出的是低平的脉宽宽度
Output Data type:输出数据的数据类型;
Sample time:默认的-1就可以了
注意:输入捕获的捕获波形的周期不要超过1s,最大不能超过3s
下图即为本实验的配置
我们再通过ADC看看PWM输出的波形会是怎样,最后把所有数据通过串口发送出去,再利用Simulink的上位机进行查看数据
下面为本实验的整个模型
下面为Simulink上位机模型
下面我们来看看,模型运行的实际效果
ADC检测PWM方波,我们可以看到周期0.02s,占空比为50%
用Pwm Capture,检测高电平时间为0.01s,占空比50%,频率50
如需进一步获得Matlab/Simulink 自动代码生成 基于模型设计学习教程的源代码包,请加QQ群:710443158