wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

51單片機彩燈控制(包括功能說明、原理及C程序)

作者:佚名   來源:本站原創   點擊數:  更新時間:2012年07月17日   【字體:

/*一、功能說明:
此程序是一款普通的彩燈,它通過電源
開關控制四種模式即關掉電源然后打開電源就可以改變
一種模式,它的功能主要有四種模式分別如下:第一種模式
開機四種顏色以0.5秒速度循環1次,然后在白顏色上停止
循環,即顯示白光第二種模式:按下功能鍵后,它以1秒
速度四種顏色不停的循環第三種模式:當按鍵按下后它會
記住第二種模式的顏色,比如第二種模式現在亮得是綠色,
你按下按鍵時,它會先閃一下,然后在綠顏色上停下來
四模式:當你再按下開關時,它自動回到模式一下,在模式
三下,當它斷電時,可以記住模式三  些產品特點:利
電源開關
切換功能,斷電數據保存,起到減小EEPROM擦除
次數.程序部分轉自51單片機m.izizhuan.cn
已測試ok*/

/*二、電路原理圖:

/*三、完整的參考程序:點擊下載  */

#include<reg52.h>

#include <intrins.h>

#define uint unsigned int

#define uchar unsigned char

sfr          DATA=0xE2;//數據寄存器

sfr          ADDRH=0xE3;//地址寄存器高八位

sfr          ADDRL=0xE4;//地址寄存器低八位

sfr          CMD=0xE5;//命令模式寄存器

sfr          TRIG=0xE6;//命令觸發寄存器

sfr          CONTR=0xE7;//控制寄存器

sbit RJ=P2^5;//紅燈IO口

sbit GJ=P2^6;//綠燈IO口

sbit BJ=P2^7;//蘭燈IO口

uchar ding3,yin,x,m;//分別為定時器變量,標志位變量,以及顏色標志位變量

bit a=1,b,c;//分別為模式1.2.3標志位

/*******************************/

/***********延時子程序***********/

/*******************************/

void delay(uint z)

{

       uint x,y;

       for(x=100;x>0;x--)

       for(y=z;y>0;y--);

}

/*******************************/

/*********讀EEPROM子程序*********/

/*******************************/

uchar read(uint add)

{

 

       CONTR=0x81;//控制寄存器打開,12MHZ晶體,所以將時間設為01

       CMD=0x01;//設置EEPROM為讀的方式(1)

       ADDRH=(add>>=8);//給高位數

       ADDRL=add&(0x00ff);//給低位數

       TRIG=0x46;//激活

       TRIG=0xb9;//激活

        _nop_();//延時

       CONTR=0x00;//保護起來

       TRIG=0X00;//保護起來

       return DATA;//將讀出來的值返回

}

 

/*******************************/

/*********寫EEPROM子程序*********/

/*******************************/

void program(uint add,uchar vale)//add為寫數地址 vale為要存得數

{

 

       CONTR=0x81;//控制寄存器打開,12MHZ晶體,所以將時間設為01

       CMD=0X02;//設置EEPROM為寫的方式(2)

       ADDRH=(add>>=8);

       ADDRL=add&(0x00ff);

       DATA=vale;//將要存的數放到寄存器內

       TRIG=0x46;

       TRIG=0xb9;

        _nop_();

       CONTR=0x00;

       TRIG=0X00;

}

/*******************************/

/*****擦除EEPROM子程序*******/

/*******************************/

void sector(uint add)

{

       CONTR=0x81;//控制寄存器打開,12MHZ晶體,所以將時間設為01

       CMD=0x03;//設置EEPROM為擦除的方式(3)

       ADDRH=(add>>=8);//給高位數

       ADDRL=add&(0x00ff);//給低位數

       TRIG=0x46;

       TRIG=0xb9;

        _nop_();

       CONTR=0x00;

       TRIG=0X00;

}

/*******************************/

/*******三種模式顯示子程序******/

/*******************************/

void xian()

{

       if(a!=0)//第一種模式以0.5秒速度循環閃爍一次,然后在白光處停下來

       {

              if(ding3>=10)//定時器到了0.5秒嗎?

              {

                     ding3=0;

                     x++;//將標志位加1,以便進入下一種顏色

                     switch(x)

                     {

                            case 1:RJ=1;GJ=0;BJ=0;//亮紅光      

                            break;

                            case 2:RJ=0;GJ=1;BJ=0;//亮綠光      

                            break;

                            case 3:RJ=0;GJ=0;BJ=1;//亮蘭光      

                            break;

                            case 4:RJ=1;GJ=1;BJ=1;a=0;//亮白光,//將標志位a清0,以便再次循環          

                            break;

                     }

              }

       }

       if(b!=0)//第二種模式以1秒速度一直循環閃爍。

       {

              if(ding3>=20)

              {

                     ding3=0;

                     x++;

                     switch(x)

                     {

                            case 1:RJ=1;GJ=0;BJ=0;m=x;//將x變量內給m保存起來,以便進入模式三時能準確的鎖定一種狀態

                            break;

                            case 2:RJ=0;GJ=1;BJ=0;m=x;

                            break;

                            case 3:RJ=0;GJ=0;BJ=1;m=x;

                            break;

                            case 4:RJ=1;GJ=1;BJ=1;m=x;x=0;

                            break;

                     }

 

              }

       }

       if(c!=0)//第三種模式記住模式二時按鍵按下的顏色,然后鎖定。

       {

              RJ=0;GJ=0;BJ=0;

              delay(550);

              switch(m)//判斷上一次模式三的狀態,然后確定顯示哪種顏色

              {

                     case 1:RJ=1;GJ=0;BJ=0;

                     break;

                     case 2:RJ=0;GJ=1;BJ=0;

                     break;

                     case 3:RJ=0;GJ=0;BJ=1;

                     break;

                     case 4:RJ=1;GJ=1;BJ=1;

                     break;

              }

 

              c=0;//將標志位清0,以便再次循環

       }

}

/*******************************/

/*************主程序************/

/*******************************/

void main()

{

       RJ=0;//將R LED關閉

       GJ=0;//將G LED關閉

       BJ=0;//將B LED關閉

       TMOD=0X01;//寄存器工作方式

       EA=1;//開總中斷

       TR0=1;//開定時器

       ET0=1;//開定時器中斷

       IT0=1;

       EX0=1;

       TH0=(65536-50000)/256;//賦值給高位

       TL0=(65536-50000)%256;//賦值給低位

       if(read(0x2200)==0x03)//開機檢測是否是在第三種模式下,如果下則讀出斷電時的數據(即顏色)

       {   

              m=read(0x2000);//讀出斷電時的顏色

              a=0;//將模式1關閉

              b=0;//將模式2關閉

              c=1;//將模式3打開

       }

       else

       {

              a=1;//將模式1打開

              b=0;//將模式2關閉

              c=0;//將模式3關閉

       }

       while(1)

       xian();//調用顯示子程序                  

}

void zhong() interrupt 1//T1中斷服務程序

{

       TH0=(65536-50000)/256;//賦值給高位

       TL0=(65536-50000)%256;//賦值給低位

       ding3++;//將按鍵計數器加1

}

void zhongk() interrupt 0

{

 

/*******************************/

/****按鍵處理及數據保存子程序***/

/*******************************/

       EX0=0;

       switch(yin)//執行一鍵多功能程序

       {

              case 0://如果0與yin比較相等,則執行break前的所有內容

              delay(100);

              sector(0x2200);//擦除

              program(0x2200,0x02);//在0x2200地址處寫入數0x02

              delay(100);

              yin++;//將變量加1,此句很重要,作用是以使下次按下時好執行下一開關語句

              a=0;//將a變為0

              c=0;

              b=1;//將b變為1,即打開按鍵程序中的第二段程序

              x=0;//清掉顏色計數變量,以便它從紅色開始循環

              break;//退出開關語句

              case 1:

              delay(100);

              sector(0x2200);//擦除

              program(0x2200,0x03);//在0x2200地址處寫入數0x03

              sector(0x2000);////擦除

              program(0x2000,m);//在0x2000地址處寫入變量m,以便在模式三下形成斷電保護

              delay(100);

              yin++;//將變量加1,此句很重要,作用是以使下次按下時好執行下一開關語句

              b=0;

              c=1;//打開第三種模式標志位,即鎖定狀態

              a=0;

              x=0;//清掉顏色計數變量,以便它從紅色開始循環

              break;//退出開關語句

              case 2:

              delay(100);

              sector(0x2200);//擦除

              program(0x2200,0x01);//在0x2200地址處寫入數0x01

              delay(100);

              b=0;//將b變為0,即關閉上一次功能

              c=0;//關閉上前面的功能

              a=1;//打開第1次功能,即0.5秒循環閃爍

              yin=0;

              x=0;//清掉顏色計數變量,以便它從紅色開始循環

              break;//退出開關語句

       }

       delay(255);

       EX0=1;

}

關閉窗口

相關文章

欧美一区二区视频| 人人精品人人爱| 国产视频福利在线| 九九精品九九| 亚洲午夜无码久久久久| 国产伦精品一区二区三区88av| 鲁丝一区二区三区免费| 久久久在线视频| 日韩精品影音先锋| 亚洲欧美偷拍卡通变态| 久久aⅴ国产欧美74aaa| 欧美oldwomenvideos| 只有精品亚洲| 国内在线视频| 深夜福利视频在线免费观看| 蝌蚪91视频| 亚洲成人第一区| 久久精品国产亚洲AV无码男同| 91精品国产成人| 欧美精品色一区二区三区| 国产精品的网站| 精品一区二区三区视频在线观看| 日韩av在线播放网址| 日韩欧乱色一区二区三区在线| 超碰免费在线观看| 黄色资源在线看| 91免费版视频| 久草在线资源网| 国产又黄又粗又长| 国产在线拍揄自揄拍| 最近中文字幕无免费| 视频二区在线播放| 香港三级日本三级a视频| 久久久久资源| 91香蕉亚洲精品| 国产91在线播放| 久久av.com| 亚洲免费成人av电影| 欧美日韩成人在线一区| 午夜激情久久久| 国产欧美日韩卡一| 99视频免费在线观看| www.男人的天堂.com| 在线观看91| 亚洲精品乱码电影在线观看| 国产免费av电影| 久久久免费高清视频| 久久久久亚洲av片无码| av永久免费观看| 醉酒壮男gay强迫野外xx| 91性高潮久久久久久久| 亚洲老女人av| 黄色a级片免费| 无码 制服 丝袜 国产 另类| 手机看片日韩国产| 57pao精品| 欧美成人aa大片| 欧美色爱综合网| 一本久久a久久免费精品不卡| 玉米视频成人免费看| 日韩一区在线播放| 成人免费一区二区三区视频| 国产精品久久久久9999吃药| 欧美国产成人精品| 国产精品国产自产拍高清av| 中日韩av电影| 国产精品视频麻豆| 中文字幕字幕中文在线中不卡视频| 国产日韩欧美麻豆| 麻豆国产精品一区二区三区| 免费亚洲视频| 久久激情网站| 蜜桃在线一区二区三区| 久久97超碰色| 国产ts人妖一区二区| 国产精品亚洲第一区在线暖暖韩国| 国产呦精品一区二区三区网站| 老司机精品视频一区二区三区| 久久电影国产免费久久电影| 国产成人99久久亚洲综合精品| 北条麻妃国产九九精品视频| 国产欧美日韩综合| 亚洲精品伦理在线| 亚瑟在线精品视频| 欧美视频一二三区| 精品美女一区二区三区| 国产小视频91| 欧美激情手机在线视频| 欧美最近摘花xxxx摘花| 91久久精品美女| 蜜桃传媒一区二区| 人妻无码一区二区三区四区| 亚洲 欧美 日韩 国产综合 在线| 一级黄色特级片| 国产不卡一二三| 激情五月激情综合| 69视频免费在线观看| 丰满人妻熟女aⅴ一区| 国产在线视频自拍| 91人成在线| 国外av在线| cao在线视频| 成午夜精品一区二区三区软件| 成人精品亚洲| 日韩精品乱码免费| 91亚洲精华国产精华精华液| 亚洲激情六月丁香| 欧美一级淫片007| 俺去了亚洲欧美日韩| 国产国语刺激对白av不卡| 精品国产一区二区三区日日嗨| 成年人免费观看的视频| 天天爽人人爽夜夜爽| a天堂中文字幕| 欧产日产国产69| 天堂av在线免费| h文在线观看免费| 色大18成网站www在线观看| 日韩不卡免费高清视频| 视频福利一区| 老司机一区二区三区| 91麻豆精品秘密| 色域天天综合网| 一区二区在线免费视频| 国产精品久久久久一区二区| 日本中文不卡| 色婷婷一区二区三区在线观看| 很污很黄的网站| 国产黄色片网站| h在线观看免费| 91在线中文| 久久国产精品色av免费看| 国产精品久久久一区二区| 久久天堂av综合合色蜜桃网| 91黄视频在线| 欧美成人激情图片网| 国产美女精品在线观看| 妺妺窝人体色www在线小说| 国产精品成人无码免费| 国产不卡精品视频| 色成人亚洲网| 色戒汤唯在线观看| 日韩av久操| eeuss国产一区二区三区| 欧美亚洲国产一区二区三区| 欧美美女操人视频| 免费中文日韩| 日本人妻一区二区三区| 日韩黄色片网站| 成年人影院在线观看| 久久免费电影| 久久国产成人精品| 91小视频在线免费看| 欧美日韩三级视频| 欧美一区三区三区高中清蜜桃| 亚洲国产欧洲综合997久久| 秘密基地免费观看完整版中文| 99久久久久久久久| a天堂在线观看| 亚洲欧洲高清| 在线视频亚洲| 亚洲电影在线播放| 欧美性极品少妇精品网站| 神马国产精品影院av| 久99久在线| 在线精品视频播放| 国产综合视频在线| 在线看片你懂得| 噜噜噜狠狠夜夜躁精品仙踪林| 国产精品一二三四五| 欧美日韩国产电影| 成人性生交xxxxx网站| 国产又黄又猛又粗| 国产在线观看第一页| 又黄又爽又色视频| 人人精品久久| 国产乱子伦一区二区三区国色天香| 欧美日韩国产一级二级| 1024成人网| 欧美成人黄色小视频| 五月天av影院| 欧美另类视频在线观看| 黄色电影免费在线观看| www.国产精品| 黑人精品欧美一区二区蜜桃| 欧美日韩精品一区二区天天拍小说 | 麻豆国产欧美一区二区三区| 欧美影院午夜播放| 成人免费福利视频| 麻豆精品国产传媒| 天天射天天操天天干| 免费大片在线观看www| 欧美天堂亚洲电影院在线观看| 亚洲综合自拍偷拍| 国产精品电影网站| 国产黑丝一区二区| 国产高清视频网| 久久夜夜久久| 99re亚洲国产精品| 日韩一中文字幕| 国产二区视频在线| 亚洲熟女乱色一区二区三区久久久 | 日本午夜小视频| 黄色三级电影网站| 一区三区在线欧| 一区二区三区欧美| 国产精品亚洲网站| 免费无码一区二区三区| 国产激情网址| 亚洲精品国产九九九| 国产精品欧美一区喷水| 91国内精品久久| 97人人模人人爽人人澡| 丝袜理论片在线观看| 亚洲精品.com| 久久久久国产免费免费| 久久久噜久噜久久综合| 一本一道久久a久久综合蜜桃| 亚洲区小说区图片区| 久久青草伊人| av在线不卡网| 欧美黄色片免费观看| 亚洲网中文字幕| 另类国产精品一区二区| 国产999精品在线观看| 欧美国产精品一区| 国产精品高潮呻吟久久av黑人| 国产精品久久久久久久无码| 夜夜操夜夜操| 亚洲欧洲免费| 欧美日韩综合视频网址| 国产一区二区三区无遮挡 | 在线观看av片| 亚洲美女视频在线免费观看| 精品国产露脸精彩对白| 日韩a级黄色片| 国产日本精品视频| 91久久国产综合久久91猫猫| 久久精品夜夜夜夜久久| 国产精品999999| 亚洲色图27p| 国产在线免费观看| 久久国产精品72免费观看| 欧美xxxx18性欧美| 无码成人精品区在线观看| www操com| 亚洲一级电影| 国产一区二区三区久久精品| 欧美成年人视频在线观看| 国产一区二区三区四区尤物| 亚洲欧洲免费| 日韩免费电影一区| 人妻少妇被粗大爽9797pw| 欧美韩日国产| 加勒比久久综合| 日韩一区二区电影在线| 亚洲熟妇无码一区二区三区| 四虎影视最新网址| 亚洲都市激情| 日韩女优视频免费观看| 日本在线观看a| 天堂网在线.www天堂在线| 99热在线成人| 亚洲摸下面视频| 一二三区视频在线观看| 九色丨porny丨| 亚洲欧美日韩专区| 九九热99久久久国产盗摄| 久久精品国产亚洲av麻豆| 日韩精品系列| 粉嫩嫩av羞羞动漫久久久| 国产精品91视频| 影音先锋在线国产| 成人在线爆射| 狠狠躁夜夜躁人人爽天天天天97| 在线观看日本一区| 日韩欧美一区二区三区视频| 日韩成人激情| 日韩最新免费不卡| 老司机福利在线观看| 欧美成人禁片在线www| 亚洲图区在线| 日韩电影视频免费| 国模私拍在线观看| 精品资源在线看| 91美女福利视频| 欧美日韩亚洲一区二区三区四区| av小说天堂网| 欧美绝顶高潮抽搐喷水合集| 日韩视频国产视频| 91成人在线观看喷潮蘑菇| 在线免费视频你懂得| 成人毛片老司机大片| 国产精品一区二区三区精品| 亚洲卡一卡二卡三| 女人av一区| 日韩在线视频线视频免费网站| www.av天天| а√天堂8资源在线| 午夜精品福利一区二区蜜股av | 久久精品亚洲人成影院 | 国产精品偷伦视频免费观看了| 最近97中文超碰在线| av网站免费线看精品| 鲁鲁狠狠狠7777一区二区| 一区二区精品区| 国产精品成人一区二区网站软件| 色综合天天狠天天透天天伊人| 激情五月婷婷小说| 91综合国产| 日韩欧美中文字幕制服| 亚洲精品在线视频免费观看| 好操啊在线观看免费视频| 亚洲综合图片区| 欧美日韩亚洲第一| 在线免费国产视频| 中文字幕日韩精品一区| 男人添女人下部高潮视频在观看 | 国产美女裸体无遮挡免费视频| 六月丁香久久丫| 久久伊人精品天天| 天堂网av手机版| 精品国产影院| 久久手机免费视频| 人人草在线观看| 国产精品一区二区av日韩在线 | 欧美区视频在线观看| 亚洲一区二区三区黄色| 羞羞电影在线观看www| 欧美日韩一区二区电影| 中文字幕乱码一区| 超级碰碰久久| 亚洲精品美女免费| 99精品久久久久| 成人盗摄视频| 久久久精品视频在线观看| 老熟妇一区二区三区| 日韩三级在线| 国产精品成人一区二区| 在线亚洲不卡| 青青青爽久久午夜综合久久午夜| 国产视频一区二区不卡| 天海翼视频在线观看| 91尤物视频在线观看| 大胆欧美熟妇xx| 欧美香蕉爽爽人人爽| 欧美性极品少妇精品网站| 国产精品久久不卡| 国产亚洲精彩久久| 最近2019年中文视频免费在线观看| 女人十八岁毛片| 欧美国产一级| 91美女高潮出水| 三级黄色小视频| 久久久久国产精品麻豆ai换脸| 欧美日韩中文在线视频| www视频在线免费观看| 日韩欧美一二三四区| 乱色588欧美| 天天干夜夜艹| 亚洲色图一区二区| 无码人妻一区二区三区免费n鬼沢| 久久uomeier| 日韩色av导航| 成人免费公开视频| 精品亚洲免费视频| 国产黄色片免费在线观看| 中文日本在线观看| 欧美一区二区三区四区高清| 欧美黑人精品一区二区不卡| 不卡视频在线| 国产一区二区三区黄| 视频在线91| 欧美日韩一区二区在线观看 | 欧美色另类天堂2015| 天堂网av2018| 视频国产一区| 97久久人人超碰caoprom欧美| 免费黄色av网站| 亚洲午夜日本在线观看| 国产美女永久免费无遮挡| 国产伦理久久久久久妇女 | 国产成人精品a视频一区| 91精品一区二区三区综合| 国产精品一区二区av| 新的色悠悠久久久| 欧美吻胸吃奶大尺度电影 | 日本高清不卡视频| 我要看黄色一级片| 亚洲成人国产| 日本不卡二区高清三区| 日韩专区一区二区| 欧美精品一区二| 国产成人精品无码高潮| 国产成人精品一区二区三区网站观看| 国产v片免费观看| 免费成人直播| 91成人福利在线| jizz视频| 欧洲中文字幕精品|