羞羞小视频在线观看_羞羞视频免费入口网站_羞羞视频下载APP_男女羞羞视频软件

歡迎光臨東莞市飛江電子科技有限公司官網(wǎng)!
全國咨詢熱線

13926563901

18925580829

飛江淘寶店鋪

首頁>技術(shù)資料>51單片機(jī)

基于51單片機(jī)之兩鍵控制LED(調(diào)光臺(tái)燈)實(shí)驗(yàn)例程

發(fā)布時(shí)間:2018-03-26   瀏覽量:

**************************  Copyright(C) CaKe  ****************************************
========================================================================================
==============**版權(quán)信息   : CaKen工作室                            ==============
==============**文件名     : main.c              ==============
==============**作者       : CaKen             ==============
==============**版本號(hào)     : V1.0              ==============
==============**時(shí)間       : 2014.08.23               ==============
==============**功能描述   : 16鍵電子琴實(shí)驗(yàn)測試         ==============
========================================================================================
****************************************************************************************
 
#include"reg52.h"
 
#define  CaKen_LED  P1             //設(shè)置LED連接的I/O組
 
#define  CaKen_PWM 501       //設(shè)置明亮的總級(jí)數(shù)(級(jí)數(shù)過大會(huì)出現(xiàn)閃爍)(值域:0~65535)
#define  CaKen_MAX 500       //設(shè)置最大亮度(值域:小于明亮總級(jí)數(shù))
#define  CaKen_MIN 1       //設(shè)置最小亮度(值域:明亮大于等于1,小于最大亮度)
 
sbit     CaKen_KEY_ADD = P3^0;     //亮度加
sbit     CaKen_KEY_DEC = P3^1;        //亮度減
 
 
***************************************************************************************
函數(shù)名:延時(shí)程序
調(diào)  用:delay();
參  數(shù):
返回值:
結(jié)  果:
備  注: 0.1ms延時(shí)程序(12MHz 10倍于51單片機(jī)速度時(shí))
****************************************************************************************/
void delay (unsigned int a)
{
 unsigned char i;
   while( --a != 0)
   {
  for(i = 0; i < 12; i++);
   }         
}
 
 
***************************************************************************************
函數(shù)名:LED顯示程序
調(diào)  用:Display();
參  數(shù):CaKen
****************************************************************************************/
 
void Display(unsigned int CaKen) //顯示程序(50ms的PWM寬度)
{
   CaKen_LED=0x00;                 //LED小燈亮
 delay(CaKen);                 //延時(shí)a的長度
 CaKen_LED=0xff;                 //LED小燈滅
 delay(CaKen_PWM-CaKen);         //延時(shí)總PWM長度減a
}
 
 
***************************************************************************************
函數(shù)名:main
備  注:
****************************************************************************************/
void main()
{
  unsigned int k=1;     //初始化LED的亮度 
  while(1)
   {  
      Display(k);
      if(CaKen_KEY_ADD==0)      //如果按鍵按下則繼續(xù)
       {
         delay(20);        //消抖 延時(shí)20mS
         if(CaKen_KEY_ADD==0)     //如果按鍵按下則繼續(xù)
   {
     k++;
     if(k>CaKen_MAX)
      {
        k=CaKen_MAX;
      }
   }
       }
 
    if(CaKen_KEY_DEC==0)   //如果按鍵按下則繼續(xù)
        {       
         delay(20);     //消抖 延時(shí)20mS
         if(CaKen_KEY_DEC==0)  //如果按鍵按下則繼續(xù)
    {
       k--;
      if(k
       {
         k=CaKen_MIN;
     
       }
    }
       }
   }
}