欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
鍵控LED臺燈制作和程序設計
[打印本頁]
作者:
dagu
時間:
2015-1-23 15:50
標題:
鍵控LED臺燈制作和程序設計
去年留下的一個LED燈,閑來無事,晚上用筆記本沒有光看不清鍵盤,所以,想制作一個LED臺燈,按鍵控制加亮度和減亮度,本想加紅外線遙控的,本人比較懶,暫時只能鍵控,紅外線以后再加。
LED臺燈電路圖,
程序設計流程圖:
LED燈工作頻率為400HZ, 20級調節亮度,使用的是STC15F104W單片機,4K程序存儲,128B數據存儲,
由于這個單片機沒有PWM,只能用定時器模擬PWM,
程序代碼如下:
/*******************************************************************************************************
名稱:臺燈
MCU:STC15F104W 12MHZ
日期:2014 /9/1
==荊棘鳥=======
*****************************************************
****************************************************/
#include <REG52.H>
#include "intrins.h"
#define Uint unsigned int//宏定義
#define Uchar unsigned char
sfr INT_CLKO = 0x8f;//外部中斷與時鐘輸出控制寄存器
sfr AUXR = 0x8e;
sfr P3M1=0xb1;
sfr P3M0=0xb2;
sbit KEY1=P3^0;//亮度減
sbit KEY2=P3^1;//開機/關機/待機
sbit KEY3=P3^2;//亮度加
sbit NPN=P3^3;//控制端
sbit IR=P3^5;//紅外線
sbit LED=P3^4;//指示燈
Uchar Gears;//20級檔位
Uchar PWM;
void KEY();
void Delay(Uchar a);
/****************************************************
********主函數:調用子函數**************************/
void main()
{
AUXR &= 0x7f;//定時器0為12T模式
//AUXR |= 0x80; //定時器0為1T模式
TMOD=0x02;//定時器0 模式2
TH0=TL0=131;//定時器0賦初值
ET0=1;//打開定時器0中斷
EA=1;//打開總中斷
TR0=1;//定時器0啟動
P3M1=0x00;
P3M0=0x08;
while(1)
{
KEY();
Delay(200);
LED=~LED;
}
}
/*****************************************************
********子函數:按鍵函數****************************/
void KEY()
{
//======================
if(KEY1==0)
{
Delay(20);
if(KEY1==0)
{
if(Gears==0)
{
Gears=0;
}
else
{
Gears--;
}
while(!KEY1);
}
}
else
if(KEY2==0)
{
Delay(20);
if(KEY2==0)
{
}
}
else
if(KEY3==0)
{
Delay(20);
if(KEY3==0)
{
Gears++;
if(Gears>20)
{
Gears=20;
}
while(!KEY3);
}
}
}
/****************************************************
********子函數:延時函數***************************/
void Delay(Uchar a)
{
Uint b,c;
for(b=a;b>0;b--)
for(c=1000;c>0;c--);
}
/****************************************************
********子函數:定時器中斷函數*********************/
void T0_time() interrupt 1
{
PWM++;
if(PWM>Gears)
{
NPN=1;
}
else
{
NPN=0;
}
if(PWM>20)
{
PWM=0;
}
}
視頻:
http://player.youku.com/player.php/sid/XNzc1ODc2MjAw/v.swf
此日記為實驗,屬于半成品,作品有點難看,勿笑。。。
作者:
小青春
時間:
2015-1-30 10:13
可以表示一下單片機引腳嗎
作者:
jameszhang2017
時間:
2017-12-5 22:13
問一下能在這個調光功能的基礎上,加上定時功能嗎?比如我想讓燈亮3分鐘自動關閉,然后再3分鐘有自動亮起。反復亮滅?梢詫崿F嗎
作者:
jameszhang2017
時間:
2017-12-5 22:14
能加入循環亮滅功能嗎?
作者:
GUOXUAN
時間:
2018-4-16 11:21
東西真不錯,就喜歡這種小規模作品來玩.
作者:
aing123
時間:
2018-4-16 15:15
這也太暗了吧?臺燈?
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1