標題: 全彩LED合集-4.大功率LED調(diào)光。PWM查詢法,非中斷。PT4115恒流IC。 [打印本頁]

作者: jialinx    時間: 2015-9-15 22:06
標題: 全彩LED合集-4.大功率LED調(diào)光。PWM查詢法,非中斷。PT4115恒流IC。
-實際項目:按鍵控制大功率燈珠實現(xiàn)調(diào)光】
項目實際電路圖:




               
程序:
/***********************************************************************/
/***名稱:按鍵控制PWM對大功率LED燈調(diào)光    ******************************/
/***功能:按動按鍵可以實現(xiàn)9級調(diào)光,初始亮度為50%                       */
/*** 按鍵KEY1實現(xiàn)9級亮度調(diào)節(jié),按動按鍵可以實現(xiàn)循環(huán)                     */
/***********************************************************************/
#include<reg51.h>
typedef unsigned char U8;
typedef unsigned int  U16;
/*---------------------------------------------------------------------*/
/*--   端口定義                 ---------------------------------------*/
/*---------------------------------------------------------------------*/
sbit LED  = P2^3;
sbit KEY1 = P2^0;
U8 j;
/*---------------------------------------------------------------------*/
/*--   顯示子程序               ---------------------------------------*/
/*---------------------------------------------------------------------*/
void display()
{
        U8 i;
        for(i=255;i>0;i--)
                        LED=(j<i)?0x00:0xff;

}       
/*---------------------------------------------------------------------*/
/*--   按鍵子程序               ---------------------------------------*/
/*---------------------------------------------------------------------*/
void  in_key()
{
        if(KEY1==0)
        {
                while(~KEY1)
                {
                        display();
                }
                if(j<251)
                        j+=31;
                else
                        j=3;
        }
}
/*---------------------------------------------------------------------*/
/*--   主程序                   ---------------------------------------*/
/*---------------------------------------------------------------------*/
void main()
{
        LED=0X00;
        IT0 = 0;                        //set INT0 int type (1:Falling 0:Low level)
        EX0 = 1;                        //enable INT0 interrupt
        EA = 1;                         //open global interrupt switch
        j=127;                                                          //改變j的值就改變了占空比,初值50%
        while(1)
        {
                display();
                in_key();
        }
}
/*---------------------------------------------------------------------*/
/*--   程序結(jié)束                 ---------------------------------------*/
/*---------------------------------------------------------------------*/

                                 我想問下,如果是用三個色的LED是不是要用三顆驅(qū)動芯片啊
回                         這個是驅(qū)動單色的3X1W(3顆1W串聯(lián))大功率LED燈珠調(diào)光的,有一個PT4115就是恒流IC,很多人在問我調(diào)光手電的原理,這就是調(diào)光手電的工作原理,和源程序!




作者: gemxie    時間: 2015-11-26 21:54
好的,可以用來控制RGB燈的嗎??
作者: lxa0    時間: 2015-11-27 01:30
真沒看懂是什么~~~~~~~~~~~~~~~




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1