标题:
51单片机用软件的方法实现pwm源码
[打印本页]
作者:
hul
时间:
2013-10-16 01:36
标题:
51单片机用软件的方法实现pwm源码
PWM演示.zip
(37.74 KB, 下载次数: 218)
2013-10-16 01:36 上传
点击文件名下载附件
下载积分: 黑币 -5
///////////////////////////////////////////////////////////
//呼吸灯演示程序(PWM脉宽调制模型)
///////////////////////////////////////////////////////////
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uint cycle=500; //PWM周期
uint pwm=0; //高电平持续时间
sbit led=P1^0; //LED端口
sbit sw=P2^5; //74HC573锁存端口
void delay(uint t)
{
unsigned int i;
for(i=0;i<t;i++); //之前演示时灯闪烁的原因是此处延时太大
}
void pwm_demo(void)
{
sw=1; //数据不锁存
led=1;
delay(60000);
for(pwm=1;pwm<cycle;pwm++)//在这个循环里pwm的值逐渐升高(pwm的值代表高电平持续时间),占空比增大,灯由暗变亮。
{
led=0;
delay(pwm);
led=1;
delay(cycle-pwm);
}
led=0;
delay(60000);
for(pwm=cycle-1;pwm>0;pwm--)//在这个循环里pwm的值逐渐减小(pwm的值代表高电平持续时间),占空比减小,灯由亮变暗。
{
led=0;
delay(pwm);
led=1;
delay(cycle-pwm);
}
}
复制代码
作者:
钱情锦绣
时间:
2013-10-23 20:20
最需要这个,楼主谢谢你
作者:
游侠(单片机开
时间:
2013-10-23 22:33
很好 学习 谢谢
作者:
▓逍〓遥◆
时间:
2013-10-31 20:24
学习下,,,,,,,,,,,,
作者:
黄效忠
时间:
2013-11-7 13:48
谢谢楼主奉献!!!
作者:
宏凯凯
时间:
2013-11-20 21:25
不错 很实用
作者:
追寻的记忆
时间:
2014-5-10 19:34
感谢楼主分享
作者:
追寻的记忆
时间:
2014-5-10 19:46
还要?74HC573锁存端口?
作者:
jjbboox
时间:
2014-5-19 12:33
看上去占空比是线性调节的。用三角函数进行调节会更像呼吸灯的效果。
作者:
zlo007
时间:
2014-6-1 17:17
感谢楼主分享
作者:
radiance
时间:
2014-7-14 18:03
这是个好东东。谢谢。
作者:
hcwl991
时间:
2014-9-26 18:53
很有用
作者:
286458071
时间:
2014-9-30 13:58
谢谢拉!!!!
作者:
zycheng
时间:
2014-10-2 08:41
谢啦,挺好滴
作者:
成森林
时间:
2015-4-8 10:43
很好 学习 谢谢
作者:
runlin1
时间:
2015-12-9 18:04
单片机学习中,谢谢!!
作者:
迷恋520冬天
时间:
2016-2-19 13:12
谢谢楼主
作者:
qwh7349080
时间:
2017-8-10 12:06
我的效果出来怎么是闪烁的
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1