急的话提交到21ic项目平台,有专业人才承接项目
project.21ic.com/member
② 如何用51单片机做呼吸灯的程序
LED使用三极管驱动,NPN或者PNP的都可以。
使用定时器,输出PWM波形,逐渐改变输出PWM的占空比的值。
③ 51单片机为什么下面的这个程序能呈现呼吸灯的现象,解释一下
程序解释的挺清楚的了。
先要想明白呼吸灯原理是什么,怎么实现,再看程序。
呼吸灯开的时候,以非常快的速度开-关-开-关,并逐渐加大开的时间比率,减小关的时间比率。
呼吸灯关的时候,以非常快的速度开-关-开-关,并逐渐加大关的时间比率,减小开的时间比率。
④ 51单片机,定时器,呼吸灯问题:
中断子函数有问题
这样改
void timer0() interrupt 1
{
TH0=(65536-100)/256; //原定时太短了吧
TL0=(65536-100)%256; //原定时太短了吧
t0++;
if(t0<=dc)
{
P1=0;
}
else
{
P1=0xff;
}
if(t0==200)
{
t0=0;
if(flag==0)
{
dc++;
if(dc==200)flag=1; //这是赋值语言,一个等号
}
else if(flag==1) //这应该是else if
{
dc--;
if(dc==0) flag=0;//这是赋值语言,一个等号
}
}
}
⑤ 求助,51单片机用PWM的RGB呼吸灯程序怎么写
#include<reg52.h>
sbitLED0=P2^0;//译码器控制端,低有效
voidDelay(unsignedintt);//函数声明
voidmain(void)
{
unsignedintset=400,pwm=0;//定义周期并赋值
while(1)//主循环
{
LED0=0;
Delay(60000);//延时,可以看到熄灭的过程
for(pwm=1;pwm<set;pwm++){
LED0=1;//熄灭LED
Delay(pwm);//延时长度,600次循环中从1加至599
LED0=1;//点亮LED
Delay(set-pwm);//延时长度,600次循环中从599减至1
}
LED0=1;
for(pwm=set-1;pwm>0;pwm--){//与逐渐变亮相反的过程
LED0=1;
Delay(pwm);
LED0=0;
Delay(set-pwm);
}
//主循环中添加其他需要一直工作的程序
}
}
voidDelay(unsignedintt)
{
while(--t);
}
⑥ 51单片机设计呼吸灯是什么
#include "reg51.h" //包含头文件
#define uchar unsigned char
#define uint unsigned int
//**************************************************************************************************
//延时函数
//**************************************************************************************************
delay(uint time) //int型数据为16位,所以最大值为65535
{
uint i,j; //定义变量i,j,用于循环语句
for(i=0;i<time;i++) //for循环,循环50*time次
for(j=0;j<50;j++); //for循环,循环50次
}
//**************************************************************************************************
//主函数
//**************************************************************************************************
void main() //主函数
{
uint i; //定义变亮i
while(1) //进入while死循环
{
for(i=0;i<200;i++) //for循环,实现LED由亮逐渐变暗
{
P0=0xff; //熄灭8位发光二极管
delay(i); //延时保持熄灭状态i个时间单位
P0=0x00; //点亮8位发光二极管
delay(200-i); //延时保持点亮状态200-i个时间单位
}
P0=0xff; //熄灭8位发光二极管
delay(5000); //延时保持熄灭状态5000个时间单位,使现象更明显
for(i=0;i<200;i++) //for循环,实现LED由暗逐渐变亮
{
P0=0x00; //点亮8位发光二极管
delay(i); //延时保持熄灭状态i个时间单位
P0=0xff; //熄灭8位发光二极管
delay(200-i); //延时保持点亮状态200-i个时间单位
}
}
}
⑦ 用51单片机做呼吸灯
这个就是点亮LED嘛,入门51都有的的程序,随便一本51书上或网上都有哦 亲,要是让等强弱变化只需要用个AD哟,亲
⑧ 51单片机led呼吸灯代码
这位朋友你好,51单片机,如果他的呼吸灯代码,你可以参考他的使用说明书,也就是说他技术指导说明书上会有表达。
⑨ 51单片机设计呼吸灯
原发布者:呦_
小屁孩
基于单片机与PWM的
呼吸灯
设计实训指导教师:班级:设计人姓名:设计日期:设计地点:完成时间:摘要本设计是基于单片机的原理与接口设计,采用单片机I/O口,加以
C语言编程
实现LED渐亮再渐暗类似人的呼吸一样的效果。关键词
AT89C51
,PWM(
脉宽调制
)一、设计要求:呼吸灯就是让
LED灯
的闪烁像呼吸一样,时呼时吸,时亮时暗,利用LED的余辉和人眼的暂留效应,看上去和人的呼吸一样。二、
设计原理
:用C语言编程实现PWM(脉宽调制)输出驱动LED,逐渐增加PWM的
占空比
从而实现LED模拟
呼吸的过程
,即渐亮再渐暗再渐亮再渐暗……如此往复,再利用LED的余辉和人眼的暂留效应,看上去就和人的呼吸一样。三、整体方案设计8个LED按照顺序逐个实现呼吸效果。加以其他闪烁花样增加更炫彩的效果。四、实验元件及器材(1)元件:LED(
发光二极管
)8个1KΩ电阻8个
1nf
电容2个
晶振
1个
AT89C51芯片
1个(2)器件:
Atmega128
开发板
1块计算机1台5、硬件原理(1)
主电路
:8个LED分别连接AT89C51的P1口,使用共阳方式,并加以1kΩ的电阻接入电源。
⑩ 51单片机中呼吸灯的程序我有点不懂
连续调整《发光的时间》、《不发光的时间》,
LED 的亮度,就逐渐的变了。