智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2828|回复: 12
打印 上一主题 下一主题

[编程类] pwm改变led亮度的问题

[复制链接]

15

主题

64

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1529
威望
734
贡献
413
兑换币
382
注册时间
2012-11-27
在线时间
191 小时
毕业学校
跳转到指定楼层
1#
发表于 2013-2-27 16:36:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
可以慢慢变亮 但是不会变暗
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */

#define uchar unsigned char
#define uint unsigned int
void chushi() {
  PWME_PWME0=0;
  PWMPRCLK=0X04;
  PWMSCLA=100;
  PWMCLK_PCLK0=1;
  PWMPOL_PPOL0=0;
  PWMCAE_CAE0=0;
  PWMDTY0=0;
  PWMPER0=5000;
  PWME_PWME0 = 1;
}
void delay(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
  for(j=110;j>0;j--);
}


void main(void) {
  /* put your own code here */
uint i,j;
DisableInterrupts;
chushi();
  EnableInterrupts;
  while(1){
for(i=0;i<5000;i++) {
  PWMDTY0++;
  delay(5000); }         //pwm增加 二极管亮度增加
   
  
for(i=5000;i>0;i--)
  {
   PWMDTY0--;           //pwm减少  二极管亮度变暗  
   delay(5000);
  
  }

  }

}


42

主题

1054

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3034

优秀会员奖章活跃会员奖章

QQ
威望
1650
贡献
780
兑换币
625
注册时间
2012-7-6
在线时间
302 小时
2#
发表于 2013-2-27 18:37:30 | 只看该作者
程序应该没问题吧。你初始给脉宽一个值,主函数只调用变暗的部分试试
回复 支持 反对

使用道具 举报

11

主题

583

帖子

0

精华

常驻嘉宾

MISS Gao

Rank: 8Rank: 8

积分
5774

优秀会员奖章活跃会员奖章在线王奖章论坛元老奖章

威望
2282
贡献
1682
兑换币
935
注册时间
2012-2-12
在线时间
905 小时
3#
发表于 2013-2-27 21:54:36 | 只看该作者
配置锁相环呢?
回复 支持 反对

使用道具 举报

15

主题

64

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1529
威望
734
贡献
413
兑换币
382
注册时间
2012-11-27
在线时间
191 小时
毕业学校
4#
 楼主| 发表于 2013-2-28 16:26:19 | 只看该作者
subingkiun 发表于 2013-2-27 21:54
配置锁相环呢?

不是会有个默认的总线时钟吗
回复 支持 反对

使用道具 举报

15

主题

64

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1529
威望
734
贡献
413
兑换币
382
注册时间
2012-11-27
在线时间
191 小时
毕业学校
5#
 楼主| 发表于 2013-3-1 18:29:07 | 只看该作者
穆旦阿斗 发表于 2013-2-27 18:37
程序应该没问题吧。你初始给脉宽一个值,主函数只调用变暗的部分试试

我想问下 我那程序里PWM初始电平为低 PWM占空比=(1-占空比寄存器值/周期寄存器值)  那第一个for里不是高电平所占比例慢慢减少 应该是从亮慢慢变暗才是呀 为什么是从暗到亮的
回复 支持 反对

使用道具 举报

15

主题

64

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1529
威望
734
贡献
413
兑换币
382
注册时间
2012-11-27
在线时间
191 小时
毕业学校
6#
 楼主| 发表于 2013-3-1 18:30:24 | 只看该作者
subingkiun 发表于 2013-2-27 21:54
配置锁相环呢?

我想问下 我那程序里PWM初始电平为低   PWM占空比=(1-占空比寄存器值/周期寄存器值)  那第一个for里不是高电平所占比例慢慢减少 应该是从亮慢慢变暗才是呀 为什么是从暗到亮的
回复 支持 反对

使用道具 举报

42

主题

1054

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3034

优秀会员奖章活跃会员奖章

QQ
威望
1650
贡献
780
兑换币
625
注册时间
2012-7-6
在线时间
302 小时
7#
发表于 2013-3-1 18:42:02 | 只看该作者
13486662319 发表于 2013-3-1 18:29
我想问下 我那程序里PWM初始电平为低 PWM占空比=(1-占空比寄存器值/周期寄存器值)  那第一个for里不是高 ...

这是谁告诉你的啊!?PWMPOLx=1时 占空比为:占空比寄存器/周期寄存器
PWMPOLx=0时 占空比为:1-(周期-占空比)/周期   
回复 支持 反对

使用道具 举报

15

主题

64

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1529
威望
734
贡献
413
兑换币
382
注册时间
2012-11-27
在线时间
191 小时
毕业学校
8#
 楼主| 发表于 2013-3-1 18:52:12 | 只看该作者
穆旦阿斗 发表于 2013-3-1 18:42
这是谁告诉你的啊!?PWMPOLx=1时 占空比为:占空比寄存器/周期寄存器
PWMPOLx=0时 占空比为:1-(周期 ...

你第二个错了吧  把括号去掉 不是和第一个一样了啊
回复 支持 反对

使用道具 举报

42

主题

1054

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3034

优秀会员奖章活跃会员奖章

QQ
威望
1650
贡献
780
兑换币
625
注册时间
2012-7-6
在线时间
302 小时
9#
发表于 2013-3-1 20:15:46 | 只看该作者
13486662319 发表于 2013-3-1 18:52
你第二个错了吧  把括号去掉 不是和第一个一样了啊

噢  没有前面的“1-”
回复 支持 反对

使用道具 举报

15

主题

64

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1529
威望
734
贡献
413
兑换币
382
注册时间
2012-11-27
在线时间
191 小时
毕业学校
10#
 楼主| 发表于 2013-3-2 14:20:19 | 只看该作者
穆旦阿斗 发表于 2013-3-1 20:15
噢  没有前面的“1-”

PWMPOLx=0时 占空比为:(周期-占空比)/周期     第一个for的话是 高电平所占比率慢慢减少才是  应该是从亮到暗才是  为什么会是从暗到亮
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|亿加合和智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-5-18 20:33 , Processed in 0.049843 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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