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

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

c51學習型紅外遙控器程序

作者:佚名   來源:劉洪   點擊數:  更新時間:2010年08月01日   【字體:
#include<AT89X51.H>   //裝入AT89X51頭文件
#include<ir.h>			//裝入紅外解碼程序
#include<24c02.H>		//裝入24c02讀寫程序
sbit key=P1^0;			//定義按鍵IO
sbit led=P0^0;       //定義指示led
sbit rel=P0^1;			//定義輸出控制腳

unsigned char kaver;  //定義kaver為輸出口狀態緩存
unsigned char iccdate,irdate;  //定義24c02數據和解碼數據

//延時10ms函數,用于開關消抖等
delay10ms()   
{ 
	unsigned char i,j; 	
	for(i=20;i>0;i--) 	
	for(j=248;j>0;j--); 	
}

//學習紅外解碼并寫入24c02的函數
study()
{
    IR_IN();
 	irdate=IRCOM[3];
    iccdate=ReadIIC(W_cmd,0x00,R_cmd);
	if(irdate!=iccdate)        //只在解碼結果與讀取結果不同時寫入24C02
	{
		if(irdate!=0)			//防止沒有接收到紅外信號,IRCOM[3]置零時,誤寫入0
		{
		WP=0;
		WriIIC(W_cmd,0x00,irdate);
		delay10ms();
		WP=1;
		led=0;
		while(key==0);		//學習成功等待按鍵釋放,led停止閃動作為指示
		}
	 }
}
//進入學習狀態時的led閃動函數
flash()
{
    unsigned char i;
	  while(key==0)
	  {
	     led=~led;
		  for(i=50;i>0;i--)
		  		study();		 
	  }
}
//按鍵模式識別函數
keymod()
{
	unsigned char m=0;
	while(key==0)          		//如果按鍵按下,開始對按鍵時間進行計數
	{		
			delay10ms();			//計數時間延時
			m++;
			delay10ms();			//計數時間延時
			if(m>=90)				//如果計數次數大于90次,等于按鍵按下時間大于約5秒后,進入led閃動學習模式
			{
				m=0;
				flash();
			} 
	}

	 if(m<90)              //如果計數次數小于90,則按鍵作為開關使用
	 {
	 	m=0; 
		kaver=~kaver;
	 }

}
////////////////////主函數////////////////////////////////////
main()
{
	WP=1;			//24c02寫保護
	while(1)
	{
		IRCOM[3]=0;
	    IR_IN();				// 讀4字節32位按鍵編碼 ,前16位用戶碼為IRCOM[1]+IRCOM[2],8位鍵值碼為IRCOM[3] 
		irdate=IRCOM[3];					//8位鍵值反碼為IRCOM[4] 這里只調用 IRCOM[3]鍵值碼作為數據碼
		iccdate=ReadIIC(W_cmd,0x00,R_cmd);
		if(irdate==iccdate)						//如果解碼結果與24C讀取碼相同,kaver翻轉一次
		{
			irdate=0;
			kaver=~kaver;
		}

      if(key==0) 	
			keymod();
		rel=~kaver;
		led=kaver;
	}
}
關閉窗口

相關文章

主站蜘蛛池模板: 国产精品一区二区在线 | 国产丝袜一区二区三区免费视频 | 日韩在线中文字幕 | 欧美日韩国产欧美 | 狠狠干av| 日韩一区二区在线视频 | 黄色网址免费在线观看 | 激情a| 精品综合久久 | 99久久精品一区二区毛片吞精 | 99久久精品视频免费 | 先锋资源网 | 青青草一区二区三区 | 一区二区蜜桃 | 一级黄色片网址 | 中日韩毛片 | 日韩一三区 | 久久精品性视频 | 中文成人在线 | 精品成人佐山爱一区二区 | 国产观看| 久久青青| 国产精品亚洲欧美日韩一区在线 | 成人精品一区亚洲午夜久久久 | www.日日操 | 亚洲精品视频在线 | 日韩激情一区 | 精精国产xxxx视频在线播放7 | 亚洲综合三区 | 日日碰碰 | 一级午夜aaa免费看三区 | 亚洲夜夜爽 | 最新高清无码专区 | 欧美色综合一区二区三区 | 91国内精精品久久久久久婷婷 | 免费观看一级毛片 | 亚洲精品视频一区二区三区 | av在线一区二区 | 欧美成人激情视频 | 欧美国产日本一区 | 日韩一区二区三区精品 |