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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 11536|回復(fù): 6
收起左側(cè)

[求助]呼吸燈的編程思路(C語言)

[復(fù)制鏈接]
ID:43384 發(fā)表于 2012-7-29 00:59 | 顯示全部樓層 |閱讀模式
 呼吸燈的代碼怎么寫呀,燈的狀態(tài)不是只有亮和滅兩種么?難道還可以設(shè)置不同的亮度?
回復(fù)

使用道具 舉報

ID:1 發(fā)表于 2012-7-29 01:00 | 顯示全部樓層

用pwm啊   脈寬調(diào)制

回復(fù)

使用道具 舉報

ID:27916 發(fā)表于 2012-7-29 12:46 | 顯示全部樓層

忽明忽暗

 

 

 

 

回復(fù)

使用道具 舉報

ID:134288 發(fā)表于 2016-7-30 21:55 | 顯示全部樓層
admin 發(fā)表于 2012-7-29 01:00
用pwm啊   脈寬調(diào)制

雖說可以用pwm,但就是不理解原理,脈寬調(diào)制他的輸出也只有高電平和低電平啊,是不是還得加da轉(zhuǎn)換
回復(fù)

使用道具 舉報

ID:94554 發(fā)表于 2016-7-31 08:18 | 顯示全部樓層
/***************************************************************  
* 程序說明:使用P3.2和P3.4來控制P0端口的LED燈,達到手動調(diào)節(jié)漸亮或漸滅(也可一直按著),  
            到最亮或最暗時蜂鳴器發(fā)出提示聲音;  
////////////////////////////////////////////////////////////////
晶振 11.0592M
* 利用定時器控制產(chǎn)生占空比可變的 PWM 波  
* 按int0鍵,PWM值增加,則占空比減小,LED 燈漸暗。  
* 按t0鍵,PWM值減小,則占空比增加,LED 燈漸亮。  


什么是PWM技術(shù)?簡而言之,PWM是一種對模擬信號電平進行數(shù)字編碼的方法。通過計
數(shù)器的使用,方波的占空比被調(diào)制用來對一個具體模擬信號的電平進行編碼。PWM信號仍然
是數(shù)字的,因為在給定的任何時刻,滿幅值的直流供電要么完全有(ON),要么完全無(OFF)。
電壓或電流源是以一種通(ON)或斷(OFF)的重復(fù)脈沖序列被加到模擬負載上去的。通的時候即
是直流供電被加到負載上的時候,斷的時候即是供電被斷開的時候。只要帶寬足夠,任何模擬
值都可以使用PWM進行編碼。
MCS-51系列單片機本身無PWM輸出功能, 但可以采用定時器配合軟件的方法對輸出脈沖進行調(diào)
寬來模擬實現(xiàn),對精度要求不是太高的場合是非常實用的。
****************************************************************/   
   
#include  <reg52.h >   
#include  <intrins.h >   
sbit S1 =P3^2;  //定義P3.2為增加鍵   
sbit S2 =P3^4;  //定義P3.3為減少鍵   
sbit leds =P1^4;  //定義P3.3為減少鍵
sbit  BELL =P2^2;   //定義蜂鳴器   
unsigned char PWM=0x7f; //PWM賦初值   
void Bee();   
void delayms(unsigned char ms);   
void delay(unsigned char t);   
   
/*--------------------------------------------------*/   
void main() //主程序   
{     
    leds =0;
    P0=0xff;   
    TMOD=0x21;   
    TH0=0xfc;   //1ms延時常數(shù)   
    TL0=0x66;   //頻率調(diào)節(jié)   
   
    TH1=PWM ;   //脈寬調(diào)節(jié)   
    TL1=0 ;   
   
     EA=1;   
     ET0=1;   
     ET1=1;   
      
     TR0=1 ;   
   
   while(1)   
   {   
     do{   
            if(PWM!=0xff)   
           {PWM++ ;delayms(10);}   
           else Bee();   
         }   
     while(S1==0);   
   
     do{   
           if(PWM!=0x02)   
          {PWM-- ;delayms(10);}   
           else Bee() ;   
          }   
     while(S2==0);   
   }   
}   
   
// ---------------------------定時器0中斷服務(wù)程序   
void timer0() interrupt 1   
{     
    TR1=0;   
    TH0=0xfc;   
    TL0=0x66;   
    TH1=PWM;   
    TR1=1;   
    P0=0x7f ;   //啟動輸出   
}   
   
//---------------------------- 定時器1中斷服務(wù)程序   
void timer1() interrupt 3   
{   
    TR1=0 ;   
    P0=0xff ;   //結(jié)束輸出   
}   
   
//-------------------------------蜂鳴器子程序   
void Bee()        
  {   
      unsigned char i  ;   
      for (i=0  ;i<100  ;i++)   
        {   
          delay(100)  ;   
          BELL=!BELL  ;//BeLL取反   
        }   
     BELL=1  ;                            //關(guān)閉蜂鳴器   
     delayms(100);   
  }   
   
//-------------------------------- 延時子程序1   
void delay(unsigned char t)   
{   
    while(t--);   
}   
   
//--------------------------------- 延時子程序2   
void delayms(unsigned char ms)   
   
{   
    unsigned char i;   
    while(ms--)   
     {   
        for(i=0;i<120;i++);   
     }   
}  
回復(fù)

使用道具 舉報

ID:180018 發(fā)表于 2017-3-24 21:47 | 顯示全部樓層
沒用呀
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕av一区二区三区 | 91精品国产一区二区三区香蕉 | 亚洲国产成人精品女人久久久 | 久久精品小视频 | 亚洲精品日韩精品 | 国产欧美在线视频 | 色婷婷综合久久久中文字幕 | 91精品国产综合久久婷婷香蕉 | 日本国产一区二区 | 国产精品久久a | 精品欧美一区免费观看α√ | 欧美日韩亚洲在线 | 久久久精品网 | 久久日韩粉嫩一区二区三区 | 天天操综合网 | 日韩av电影在线观看 | 成人老司机 | 欧美精品久久 | 激情三区| 国产日韩一区二区 | 天天看天天干 | 一区二区三区四区av | 人人九九 | 国产精品九九视频 | 欧美视频区| 麻豆一区二区三区精品视频 | 国产亚洲精品综合一区 | 欧美激情在线播放 | 狠狠操操| 久久久一区二区三区 | 亚洲欧洲日本国产 | 涩涩视频大全 | 一级一片在线观看 | 亚洲 成人 在线 | 亚洲精品国产电影 | 黄a网| 精品毛片 | 97视频在线观看网站 | 欧美性成人 | 欧美精品一区二区三区在线 | av国产精品毛片一区二区小说 |