中国自动化学会专家咨询工作委员会指定宣传媒体
免费注册 登录 广告服务 | 客服中心
您现在所在的是:

单片机论坛

抖音 德嘉 泓格论坛 FLIR红外热像论坛
工控论坛首页 单片机论坛 → 浏览主题: 51单片机呼吸灯
发表新帖 回复该主题
回帖:7个,阅读:692 [上一页] [1] [下一页]
* 帖子主题:

51单片机呼吸灯

分享到
65
刘永宏
文章数:151
年度积分:65
历史总积分:65
注册时间:2020/2/5
发站内信
发表于:2022/12/17 10:35:19
#0楼
师傅们,我刚学单片机,想做个呼吸灯,搞了几天都没搞好,我的是stc89c52,有这个程序的师傅们,传一个上来,谢谢你们
此帖发自论坛APP
7639
hnhyczj
文章数:3759
年度积分:75
历史总积分:7639
注册时间:2011/8/27
发站内信
发表于:2022/12/19 14:47:12
#1楼
//******************************
//   51单片机模拟呼吸灯
//     2012.9.23
//       //     p0.0接一个LED灯,状态0为亮
//******************************


#include<reg52.h>
#define N 2 //亮暗的速率
#define T 800 //PWM的周期


//sbit led0=P0^0;
//======================
void pwm(int x)
{
 while(x--);
}
//======================

void flash1(void){
    int t = 0;
    char f = 0;
    int count = 5;//5次,每个函数执行的次数
    while(1){
  P0 = 0x00;
  pwm(t);   //Toff,亮的时间
  //led0=1;
  P0 = 0xff;
  pwm(T-t+100);//Ton,暗的时间
  if(!f) t+=N+1;//亮速率较快,模拟呼吸
  else t-=N;//暗速率较慢
  if(t>T) {f=1;t=T;}//超过最大值时,返回最大值,标志为暗
  if(t<0) {f=0;t=0;}//超过最小值时,返回最小值,标志为亮
 // count--;
  }
 }

void main()
{

 while(1)
 {
    flash1();

 }
}
7639
hnhyczj
文章数:3759
年度积分:75
历史总积分:7639
注册时间:2011/8/27
发站内信
发表于:2022/12/19 14:47:52
#2楼
这用C写好像写得有点多,用汇编就几句话
9484
Tivian
文章数:2153
年度积分:660
历史总积分:9484
注册时间:2006/5/21
发站内信
发表于:2022/12/19 17:51:26
#3楼
用PLC的PMW写一个吧
65
刘永宏
文章数:151
年度积分:65
历史总积分:65
注册时间:2020/2/5
发站内信
发表于:2022/12/19 18:24:00
#4楼
回复 #1楼 hnhyczj
谢谢你,我慢慢品尝,谢谢
此帖发自论坛APP
106
hu8877
文章数:91
年度积分:106
历史总积分:106
注册时间:2021/12/3
发站内信
发表于:2022/12/20 4:14:17
#5楼
现场编写,高手,很久不玩单片机了。
此帖发自手机工控论坛
14470
zwk34
文章数:1046
年度积分:408
历史总积分:14470
注册时间:2005/12/4
发站内信
发表于:2022/12/22 9:31:41
#6楼
回复 #1楼 hnhyczj
热心人表情
36773
知道一点
文章数:21904
年度积分:1192
历史总积分:36773
注册时间:2004/6/12
发站内信
工控人谈电商
2013国庆活动
2011国庆活动
发表于:2022/12/22 12:04:24
#7楼
呼吸灯是指灯光在微电脑的控制之下完成由亮到暗的逐渐变化,感觉好像是人在呼吸。
其广泛应用于手机之上,并成为各大品牌新款手机的卖点之一,起到一个通知提醒的作用。
有说用PLC,需要模拟量输出吧
快乐 幸福 自由 比什么都重要
工控学堂推荐视频:

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

62.4004