找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4940|回复: 19
打印 上一主题 下一主题
收起左侧

51单片机用软件的方法实现pwm源码

  [复制链接]
跳转到指定楼层
楼主
ID:55874 发表于 2013-10-16 01:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PWM演示.zip (37.74 KB, 下载次数: 218)
  1. ///////////////////////////////////////////////////////////
  2. //呼吸灯演示程序(PWM脉宽调制模型)
  3. ///////////////////////////////////////////////////////////
  4. #include<reg52.h>

  5. #define uint unsigned int
  6. #define uchar unsigned char

  7. uint cycle=500;  //PWM周期
  8. uint pwm=0;      //高电平持续时间

  9. sbit led=P1^0;   //LED端口
  10. sbit sw=P2^5;    //74HC573锁存端口

  11. void delay(uint t)
  12. {
  13.         unsigned int i;
  14.         for(i=0;i<t;i++);  //之前演示时灯闪烁的原因是此处延时太大
  15. }

  16. void pwm_demo(void)
  17. {
  18.         sw=1;  //数据不锁存       
  19.        
  20.         led=1;
  21.         delay(60000);
  22.         for(pwm=1;pwm<cycle;pwm++)//在这个循环里pwm的值逐渐升高(pwm的值代表高电平持续时间),占空比增大,灯由暗变亮。
  23.         {
  24.                 led=0;
  25.                 delay(pwm);
  26.                 led=1;
  27.                 delay(cycle-pwm);
  28.         }
  29.        
  30.         led=0;
  31.         delay(60000);
  32.         for(pwm=cycle-1;pwm>0;pwm--)//在这个循环里pwm的值逐渐减小(pwm的值代表高电平持续时间),占空比减小,灯由亮变暗。
  33.         {
  34.                 led=0;               
  35.                 delay(pwm);
  36.                 led=1;
  37.                 delay(cycle-pwm);
  38.         }       
  39. }
复制代码


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:43383 发表于 2013-10-23 20:20 | 只看该作者
最需要这个,楼主谢谢你
回复

使用道具 举报

板凳
ID:55815 发表于 2013-10-23 22:33 | 只看该作者
很好 学习 谢谢
回复

使用道具 举报

地板
ID:51142 发表于 2013-10-31 20:24 | 只看该作者
学习下,,,,,,,,,,,,
回复

使用道具 举报

5#
ID:56563 发表于 2013-11-7 13:48 来自手机 | 只看该作者
谢谢楼主奉献!!!
回复

使用道具 举报

6#
ID:57094 发表于 2013-11-20 21:25 | 只看该作者
不错  很实用
回复

使用道具 举报

7#
ID:61644 发表于 2014-5-10 19:34 | 只看该作者
感谢楼主分享
回复

使用道具 举报

8#
ID:61644 发表于 2014-5-10 19:46 | 只看该作者
还要?74HC573锁存端口?
回复

使用道具 举报

9#
ID:62033 发表于 2014-5-19 12:33 | 只看该作者
看上去占空比是线性调节的。用三角函数进行调节会更像呼吸灯的效果。
回复

使用道具 举报

10#
ID:44441 发表于 2014-6-1 17:17 | 只看该作者

感谢楼主分享
回复

使用道具 举报

11#
ID:63977 发表于 2014-7-14 18:03 | 只看该作者
这是个好东东。谢谢。
回复

使用道具 举报

12#
ID:66641 发表于 2014-9-26 18:53 | 只看该作者
很有用
回复

使用道具 举报

13#
ID:62929 发表于 2014-9-30 13:58 | 只看该作者
谢谢拉!!!!
回复

使用道具 举报

14#
ID:64575 发表于 2014-10-2 08:41 | 只看该作者
谢啦,挺好滴
回复

使用道具 举报

15#
ID:76408 发表于 2015-4-8 10:43 | 只看该作者
很好 学习 谢谢
回复

使用道具 举报

16#
ID:84498 发表于 2015-12-9 18:04 | 只看该作者
单片机学习中,谢谢!!
回复

使用道具 举报

17#
ID:74145 发表于 2016-2-19 13:12 | 只看该作者
谢谢楼主
回复

使用道具 举报

18#
ID:191816 发表于 2017-8-10 12:06 | 只看该作者
我的效果出来怎么是闪烁的
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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