急的話提交到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 的亮度,就逐漸的變了。