機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
單片機(jī)過零檢測(cè)
單片機(jī)過零檢測(cè)
 更新時(shí)間:2008-7-26 16:12:49  點(diǎn)擊數(shù):3
【字體: 字體顏色

首先用PWM(脈寬調(diào)制)方法用于可控硅控制是有條件的,即調(diào)制頻率不能大于市電頻率(50Hz),也就是周期不能小于20mS,否則就不能達(dá)到調(diào)制作用,調(diào)制頻率超過市電頻率時(shí),可控硅即處于連續(xù)導(dǎo)通狀態(tài)而不能達(dá)到調(diào)壓目的。只有調(diào)制頻率低于市電頻率才能起到調(diào)壓目的,即限制市電的周波通過可控硅的數(shù)量而起到調(diào)壓的目的。因此用該種方法調(diào)制的電壓周波數(shù)一定是小于50HZ,超過了人眼視覺暫留效應(yīng),此就是用于調(diào)光產(chǎn)生閃爍的原因。該調(diào)壓方法用在調(diào)功或?qū)γ}動(dòng)電壓不敏感的用途上尚可。如果采用可控硅調(diào)壓用在調(diào)光上,須采用移相的調(diào)制方法,可使光連續(xù)可調(diào)。采用移相方法就需過零檢測(cè)作為移相基點(diǎn)。過零檢測(cè)其實(shí)并不難,如果要求調(diào)壓比不是很高采用簡(jiǎn)單的方法即可奏效;用一只三極管即可。用單片機(jī)進(jìn)行移相調(diào)壓控制可以做得很精。

字串5

/********************************************************************************/
#i nclude      <pic.h>
__CONFIG (CPD&PROTECT&BOREN&MCLRDIS&PWRTEN&WDTEN&INTIO);
/********************************************************************************/
//
void      init         (void);
/********************************************************************************/
//
                      bit   fg_pw,fg_vs,fg_zq;
volatile    unsigned  char  fg_count;
volatile    unsigned  int   time1_temp,buff;
/********************************************************************************/
#define      powon          GPIO|=0B00110000 字串9
#define      powoff         GPIO&=0B00001111
#define      vpp            GPIO2
#define      feedback       GPIO0
/********************************************************************************/
        void      init         (void)
    {   CLRWDT();
        TRISIO=0B11001111;
     WPU=1;
     IOCB=4;               //使能過零信號(hào)中斷
     VRCON=0;
     PIE1=1;
     OPTION=0;
     INTCON&=7;
     INTCON|=0B10001000; 字串7
     CMCON=7;
        T1CON&=1;
     T1CON|=0x10;
 }
/*********************************************************************************/
        void      interrupt  isr_power   (void)
    {   GPIO=GPIO;
           if     (TMR1IF&&TMR1ON)
         { TMR1IF=0;
              if      (fg_pw)
             { if  (!fg_vs)
               {powon;fg_vs=1;TMR1L=112;TMR1H=0xfe;}  //觸發(fā)寬度400US(256+144)
                else 字串2
               {fg_vs=0;
                powoff;       //關(guān)閉
                TMR1ON=0;
               }
             }
              else    {powoff;fg_count=0;}
         }
            if    (GPIF)
         {   GPIF=0;
             if (fg_pw)
             {fg_zq=1; 字串7
              TMR1H=(time1_temp>>8);
              TMR1L=(time1_temp&0xff);
//if    (vpp==0)   TMR1H-=3;     //上下沿檢測(cè),下沿時(shí)間補(bǔ)償(3*256)US
              TMR1ON=1;
             }
             else
           { if     (vpp)   {TMR1ON=1;TMR1L=TMR1H=0;}  //l-->h
              else
             {time1_temp=(TMR1H<<8|TMR1L);    //h-->l
              TMR1ON=0;
              TMR1L=TMR1H=0; 字串6
              time1_temp=~time1_temp;         //同步信號(hào)周期檢測(cè)(時(shí)間)
              time1_temp+=1000;               //一個(gè)半周時(shí)間中縮短1MS開始觸發(fā)
              buff=time1_temp;
              if   (++fg_count>=4)    fg_pw=1;//連續(xù)周期檢測(cè)4次
             }
           }
         }
     }
/************************************************************************************/
         void        main         (void) 
    {     unsigned int i;
          TMR0=0;
          init();
          while   (1)
       {    if     (fg_pw&&fg_zq)
           {  fg_zq=0;
              if     (feedback)  {if(time1_temp<0xffff-1000) time1_temp+=20;}//功率(電壓)上限
              else
              {if  (time1_temp>buff)time1_temp-=20;}  //功率(電壓)下限
             for  (i=1000;i!=0;i--) {;} 字串7
             init();
           }
       }
    }

  • 上一篇: PIC編程器自制
  • 下一篇: PIC控制步進(jìn)電機(jī)的完整資料
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1