久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 9177|回復: 1
打印 上一主題 下一主題
收起左側

一個PWM調光的LED電源-pic單片機控制

[復制鏈接]
跳轉到指定樓層
樓主
本帖最后由 liuz 于 2014-8-13 19:16 編輯

這是這邊做的一個設計,供大家參考。
一般PWM調光都是分兩級的,一級PFC部分(BOOST PFC或者Flybakc PFC),一級DC/DC調光部分。但明顯成本偏高,如果能用一級同時實現PFC和PWM調光就可以節省成本,基于這個想法,設計了一款次級用MCU控制的單級調光方案,經實驗效果良好,現與大家分享。此方案可接受0-10V電壓控制信號,然后轉化為PWM脈沖同時控制初次級通斷來實現PWM調光。





效率和PF。




EMI





調光特性,可根據需要軟件調整。



                              變壓器結構:





10%負載時的輸出電流和MOS開關波形

50%負載時的輸出電流和MOS開關波形

90%負載時的輸出電流和MOS開關波形




程序:
//PWM Dimming main program.
#include "pic.h"


__CONFIG(0x7fc4);

unsigned int g_ADTable[4]={0,0,0,0};    //定義一個四位的數組
char g_Count=0;                         //定義變量  
bit Overflag=0;                         //溢出標志位清零
interrupt ISR (void)                          //中斷服務子函數
{
  if (ADIE && ADIF)
    {  ADIF=0;
       g_ADTable[g_Count]=(((unsigned int)ADRESH)<<8) + ADRESL;
       g_Count++;
         if (g_Count==4)
           {
             g_Count=0;
             Overflag=1;
           }
         else
           {
             GODONE=1;
           }
    }  
}   

void initial (void)               // 單片機的初始化
{
  int i=0;
  TRISIO=0b00010000;             //初始化AD轉換

  ANSEL=0B00001000;              //GP4為模擬輸入
  GPIO=0b00000110;
  ADCON0=0B10001101;
  ADIE=1;                        //a/d中斷打開
  ADIF=0;
  PEIE=1;                        //中斷使能
  GIE=1;
  PR2=0xff;                //初始化PWM,全高電平輸出,使其先工作1s
  CCP1CON=0b00001100;
  CCPR1L=0xff;
  T2CON=0b00000001;        //最后兩位由10改為01,開關周期由500HZ變為2K
  TMR2ON=1;
  TMR2IF=0;                //PWM初始化設置完畢
  for (i=0; i<15000;i++)    //讓電源先工作起來
  {
  }
  GODONE=1;
}  

void PWM_Output(unsigned char PWM_Width)    //pwm輸出寬度
{
  unsigned char i=0,j=0;
  if (CCPR1L == PWM_Width)
    {
    }
  else
  {
     if (CCPR1L > PWM_Width)
       {
         i= CCPR1L - PWM_Width;
         for (j=1; j<i; j++)
           {
            CCPR1L=CCPR1L-1;
            TMR2IF=0;
            while (!TMR2IF)
              {
              }
           }
       }
     else
        {
           i=PWM_Width-CCPR1L;
           for (j=1; j<i; j++)
           {
            CCPR1L=CCPR1L+1;
            TMR2IF=0;
            while (!TMR2IF)
              {
              }
           }
        }
  }  
}

void main(void)
{
  int Tmp=0;
  unsigned char i=0, Adv=0xff;         //定義參變量及初始化
  initial ();                          //系統初始化
  while (1)                           
  {
     if (Overflag==1)
       {
          Tmp=0;
          for (i=0; i<4; i++)
            {
             Tmp=Tmp + g_ADTable[ i];
            }

          Tmp=Tmp>>4; //得到平均值,移2位得到平均值,再移2位得到8位的平均值,即最大255
          if (Tmp<=3)
            {
             Tmp=3;
            }
          Adv=Tmp;
          Overflag=0;
          GODONE=1;
       }

     else
         {
            GP1=1;
         }

     PWM_Output(Adv);   //調整PWM輸出
  }
}




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:263750 發表于 2018-4-26 12:37 | 只看該作者
厲害了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 夜夜干夜夜操 | 日韩手机在线视频 | 精品成人免费视频 | 精品国产一区二区三区久久 | 蜜月va乱码一区二区三区 | 99re在线播放 | 欧美在线视频一区二区 | 日韩成人免费在线视频 | 亚洲精品中文在线 | 97精品国产97久久久久久免费 | 免费精品| 天天草视频 | av在线免费观看网址 | 亚洲精品久久久久avwww潮水 | 亚洲欧美激情网 | 在线免费观看日本视频 | 丝袜美腿一区二区三区动态图 | 99免费在线观看视频 | 久草网址| 毛片视频网址 | 婷婷综合五月天 | 日韩中文在线视频 | 九色综合网| 国产精品色 | 成人黄色av网站 | 91精品国产综合久久久动漫日韩 | 国产专区在线 | 久草视频在线看 | 九色av| 日韩精品一区二区三区视频播放 | 精品久久香蕉国产线看观看亚洲 | 国产粉嫩尤物极品99综合精品 | 久草在线 | 欧美日韩国产精品一区 | 久久久久久国产精品免费 | 久久免费视频网 | 免费一级黄 | 亚洲日本免费 | 国产高清在线视频 | 新超碰97| 国产三级日本三级 |