OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5299|回复: 14

PWM输出实验

[复制链接]

5

主题

11

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2018-6-25
在线时间
3 小时
发表于 2018-7-24 15:33:24 | 显示全部楼层 |阅读模式
1金钱
历程中小灯由暗变亮,然后由亮变暗。为什么这么变化?
以下是我的理解:
  TIM_OCInitStruct.TIM_OCMode=TIM_OCMode_PWM1;        TIM_OCInitStruct.TIM_OCPolarity=TIM_OCPolarity_Low;  这段是小于比较值时输出低电平
    所以整个程序应该是占空比由大变小,小灯应该先由亮变暗

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

82

主题

589

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1255
金钱
1255
注册时间
2017-11-18
在线时间
296 小时
发表于 2018-7-24 15:47:24 | 显示全部楼层
我对你的理解提出一个疑问吧,占空比由大变小,或者由小变大,这两种情况下也还是只有高低两种电平状态,对应的就是小灯的亮和灭,那么是怎么做到亮暗的变化呢?
回复

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
145
金钱
145
注册时间
2018-7-19
在线时间
25 小时
发表于 2018-7-24 16:59:26 | 显示全部楼层
这么理解?
led0pwmval的值是慢慢累加上去的,所以占空比也是一直在变化的,越大越亮,慢慢变亮,
直到累加到300,开始递减,占空比也减小,慢慢变暗

int main(void)
{  
        u16 led0pwmval=0;   
        u8 dir=1;
        Stm32_Clock_Init(336,8,2,7);//设置时钟,168Mhz
        delay_init(168);                        //延时初始化   
        TIM14_PWM_Init(500-1,84-1);        //1Mhz的计数频率,2Khz的PWM.  
           while(1)
        {
                delay_ms(10);         
                if(dir)led0pwmval++;
                else led0pwmval--;         
                if(led0pwmval>300)dir=0;
                if(led0pwmval==0)dir=1;                                                    
                LED0_PWM_VAL=led0pwmval;       
       
        }
}
回复

使用道具 举报

5

主题

11

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2018-6-25
在线时间
3 小时
 楼主| 发表于 2018-7-25 08:37:27 | 显示全部楼层
eastwin 发表于 2018-7-24 16:59
这么理解?
led0pwmval的值是慢慢累加上去的,所以占空比也是一直在变化的,越大越亮,慢慢变亮,
直到累 ...

占空比不是先有大变小吗
回复

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
145
金钱
145
注册时间
2018-7-19
在线时间
25 小时
发表于 2018-7-25 10:30:36 | 显示全部楼层
初夏的雨 发表于 2018-7-25 08:37
占空比不是先有大变小吗

嗯,对,先由大变小
回复

使用道具 举报

2

主题

686

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
10859
金钱
10859
注册时间
2014-6-12
在线时间
1038 小时
发表于 2018-7-25 10:47:56 | 显示全部楼层
小灯先亮后暗,还是 先暗后亮,除了跟程序有关,跟小灯硬件接法也有关系。
回复

使用道具 举报

5

主题

11

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2018-6-25
在线时间
3 小时
 楼主| 发表于 2018-7-25 15:38:47 | 显示全部楼层
eastwin 发表于 2018-7-25 10:30
嗯,对,先由大变小

我理解  100的占空比应该大于300的占空比   对吗
回复

使用道具 举报

5

主题

11

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2018-6-25
在线时间
3 小时
 楼主| 发表于 2018-7-25 15:39:19 | 显示全部楼层
xuyaqi 发表于 2018-7-25 10:47
小灯先亮后暗,还是 先暗后亮,除了跟程序有关,跟小灯硬件接法也有关系。

怎么说呢?
回复

使用道具 举报

5

主题

11

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2018-6-25
在线时间
3 小时
 楼主| 发表于 2018-7-25 15:41:27 | 显示全部楼层
美丽的时光机器 发表于 2018-7-24 15:47
我对你的理解提出一个疑问吧,占空比由大变小,或者由小变大,这两种情况下也还是只有高低两种电平状态,对 ...

占空比不同  导通时间不同  小灯的亮暗程度不同
回复

使用道具 举报

5

主题

11

帖子

0

精华

新手上路

积分
45
金钱
45
注册时间
2018-6-25
在线时间
3 小时
 楼主| 发表于 2018-7-25 15:53:40 | 显示全部楼层
eastwin 发表于 2018-7-25 10:30
嗯,对,先由大变小

占空比先由大变小  小灯不应该先亮后暗吗
回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
发表于 2018-7-25 16:26:19 | 显示全部楼层
美丽的时光机器 发表于 2018-7-24 15:47
我对你的理解提出一个疑问吧,占空比由大变小,或者由小变大,这两种情况下也还是只有高低两种电平状态,对 ...

占空比是IO口的输出脉冲的高电平时间宽度占整个脉冲周期的百分比。
回复

使用道具 举报

39

主题

535

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1065
金钱
1065
注册时间
2018-3-27
在线时间
378 小时
发表于 2018-7-25 16:35:32 | 显示全部楼层
初夏的雨 发表于 2018-7-25 15:53
占空比先由大变小  小灯不应该先亮后暗吗

f4手册上的
GVINOSUY8HWMCA$CXU)$%WL.jpg
回复

使用道具 举报

82

主题

589

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1255
金钱
1255
注册时间
2017-11-18
在线时间
296 小时
发表于 2018-7-25 18:08:20 | 显示全部楼层
qiuzhicheng 发表于 2018-7-25 16:26
占空比是IO口的输出脉冲的高电平时间宽度占整个脉冲周期的百分比。

好的  大概明白了  谢谢
没有脑袋
回复

使用道具 举报

82

主题

589

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1255
金钱
1255
注册时间
2017-11-18
在线时间
296 小时
发表于 2018-7-25 18:08:45 | 显示全部楼层
初夏的雨 发表于 2018-7-25 15:41
占空比不同  导通时间不同  小灯的亮暗程度不同

好的  谢谢了
没有脑袋
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2018-7-26 01:29:04 | 显示全部楼层
占空比是相对来说的,高比低,和低比高,完全就是反的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-1 02:38

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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