亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? irx.c

?? 51F單片機實現紅外遙控器HT6221發射的紅外編碼解碼程序
?? C
字號:
//-------------------------------------------------------------------------
//IR RX DECODE ROUTINE
//AUTHER : Xu Sen
//CREATE DATE : May 28. 2007
//Modified :	May 30. 2007
//Version :		V1.0
//THE RECEIVE CODE IS THE INVERSION OF THE TRANSMITTE CODE
//-------------------------------------------------------------------------
#include	"c8051F310.h"
#define     uchar	unsigned char
#define 	uint	unsigned int
#define	    ulong	unsigned long

//----------------------------------------------------------------------------
//DEFINE THE BIT "0 " AND BIT "1" FOR DECODE 
#define     ST_UP   0xBB8
#define		ST_DW   0x792
#define		RST_UP	0x792
#define		RST_DW  0x540
#define		BIT1_UP 0x540
#define		BIT1_DW 0x300
#define		BIT0_UP 0x300
#define		BIT0_DW 0x8C

//---------------------------------------------------------------------------
//DEFINE THE USER COMPOSITE CODE AND KEY VALUE
#define     USER_CODE	0xEB31
#define		K1		0x0
#define		K2		0x1
#define		K3		0x2
#define		K4		0x3



sbit    LED = P3^4;
//--------------------------------------------------------------------------
//GOBAL VARIABLES
//--------------------------------------------------------------------------
bit     flag = 0;
bit     note = 0;
bit     STB;				//start bit 
uint	ADR;				//adress code
//uint    adr_temp;
uchar   i = 0;				//indicate the bit position
uchar   DATA;				//key value
//uchar   data_temp;
//uchar   indata_temp;
uchar   INDATA;				//inversion of key value
//uint    timer0_temp;
uint    code  constant[16] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80,
  							  0x100,0x200,0x400,0x800,0x1000,0x2000,
							  0x4000,0x8000 };


//--------------------------------------------------------------------------
//delay function
//---------------------------------------------------------------------------
void	delay(uint j)
{  
      uint t;
      for(t=0;t<j;t++);
}
//------------------------------------------------------------------------------
uint    temp(uchar a, uchar b)
{
	  uint t;
	  t = (uint)a;
	  t <<= 8;
	  t = t | (uint)b;
	  return t;
}


//---------------------------------------------------------------------------
void	key1_process(void)
{
	 LED = 0;
	 delay(10000);
}

//----------------------------------------------------------------------------
void    key2_process(void)
{
	
     delay(10000);
	 LED = 1;
	 
}
//-----------------------------------------------------------------------------
void	key3_process(void)
{
	 LED = 0;
	 delay(10000);
}
//-------------------------------------------------------------------------------
void    key4_process(void)
{
	 
	 delay(10000);
	 LED = 1;
	 

}


//-------------------------------------------------------------------------------
//CONFIG THE OSC TO 24.5MHZ
//-------------------------------------------------------------------------------
void 	osc_ini(void)
{
    OSCICN    = 0x83;
}

//--------------------------------------------------------------------------------
//TIMER0 INITIALISE FOR PULSE WIDTH MEASURE
//16BIT MODE, EXTERNAL INT0 ENABLE FOR CONTROL THE TIMER0
//-------------------------------------------------------------------------------
void	timer0_ini(void)
{
    TCON      = 0x11;
    TMOD      = 0x41;
    CKCON     = 0x02;
}

//---------------------------------------------------------------------------------
//INTERRUPT INITIAL
//INT0 IS CFG AT P0.1, HIGH LEVEL ENABLE, EDGE TRIGERRED
//-----------------------------------------------------------------------------------
void	int0_ini(void)
{
	IT01CF    = 0x09;
    IE        = 0x81;
	flag = 1;

}
//------------------------------------------------------------------------------------
//PORT IO INITIAL
//CFG THE LED AND IR DATA IO AS PUSH-PULL MODE
//------------------------------------------------------------------------------------	
void	port_ini(void)
{
	XBR1      = 0x40;
	P0MDOUT   = 0x04;
	P3MDOUT   = 0x10;
	P0SKIP    = 0x02;                                                                                                                                                                                             ;
    


}
//------------------------------------------------------------------------------------
//DISABLE WDT
//-----------------------------------------------------------------------------------
void	disable_WDT(void)
{
    PCA0MD &= ~0x40;
}



//------------------------------------------------------------------------------------
//the main routine
//------------------------------------------------------------------------------------

void	main(void)
{
//--------SYSTEM INITIALISATION-----------------------------------------------------

	osc_ini();
	disable_WDT();
	timer0_ini();
	port_ini();
	int0_ini();
	
//--------------------------------------------------------------------------------------
	
	while(1)
  {
  	   if(ADR == USER_CODE)
	      {
		     if(K1==DATA & K1==~INDATA)
			    key1_process();
             else if(K2==DATA & K2==~INDATA)
			    key2_process();
             else if(K3==DATA & K3==~INDATA)
			    key3_process();
             else if(K4==DATA & K4==~INDATA)
			    key4_process();
             else;
		   }
     



  }
  


}

//------------------------------------------------------------------------------------------
//INTERRUPT ROUTINE,CHECK THE TX DATA IS LOW OR HIGH
//JUDGE THE TX BIT IS "1" OR "0" AND GET THE USER CODE AND KEY VALUE
//USER VALUE IS SAVED IN ADR REG; KEY VALUE AND IT'S INVERSION IS SAVE
//IN DATA AND INDATA REGS
//------------------------------------------------------------------------------------------
void	int0_isr(void)	interrupt 0
{
        if(flag)
    {    
	     flag = 0;
		 note = 1;
		 TH0 = 0;
		 TL0 = 0;
		 return;
    }
	    if(note)
   {
        note = 0;
		TH0 = 0;            //A NEW DATA TRANSFER BEGIN SHOULD CLEAR THE TH0 AND THL0 
		TL0 = 0;			//FIRST IN ORDER TO GET THE CORECT PULSE WDITH TIME
		return;
   }
	    if(~STB)
    {
	    
		if(temp(TH0,TL0)<ST_UP & temp(TH0,TL0)>ST_DW)            //START TIMING 4.3mS<T<4.7mS
		    {
			   STB = 1;
			   TL0 = 0;
			   TH0 = 0;	
			   DATA = 0;	//CLEAR THE DATA REGS FOR THE NEW RECEICED DATA BITS	
			   INDATA = 0;
			   ADR = 0;
            }
        
        else
		   {
		      TH0 = 0;
			  TL0 = 0;
		   }

    }
	  else
    {
	            
        if(temp(TH0,TL0)<BIT0_UP & temp(TH0,TL0)>BIT0_DW)				//RECEIVE BIT "0"
		   {
				i++;
				TH0 = 0;
				TL0 = 0;
				if(i==32)												//DATA TRANSFER IS FINISHED
               {
			      i = 0;												//CLEAR COUNTER i and START BIT
				  STB = 0;												//FOR ANOTHER TRANSMISSION
				  
               }

		   }
        else if(temp(TH0,TL0)<BIT1_UP & temp(TH0,TL0)>BIT1_DW)			//RECEIVE BIT "1"
		   {
		        i++;
				TH0 = 0;
				TL0 = 0;
				if(i<17)
                  ADR = ADR | constant[i-1];
                else if (i>16 & i<25)
                  DATA = DATA  | (uchar)constant[i-17];
                else if (i>24 & i<33)
			   {
				   INDATA  = INDATA  | (uchar)constant[i-25];
                   if(i==32)											 //TOTAL 4 BYTE ARE RECEIVED
				  {
				      i = 0;											 //CLEAR COUNTER i and START BIT
					  STB = 0;											 //FOR ANOTHER TRANSMISSION
					  
 				  }
                }
				else;


		   }
		else;

    }

}








?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产小视频| 精品少妇一区二区三区在线播放| 日韩黄色在线观看| 日本一区二区三区免费乱视频 | 男女男精品视频| 国产精品成人网| 精品国产污网站| 欧美自拍偷拍午夜视频| 国产风韵犹存在线视精品| 婷婷开心久久网| 伊人色综合久久天天人手人婷| 亚洲精品一区二区三区精华液| 在线观看亚洲一区| 92精品国产成人观看免费 | 亚洲国产精品视频| 国产精品麻豆网站| 26uuu色噜噜精品一区二区| 欧美丰满美乳xxx高潮www| 色婷婷精品久久二区二区蜜臀av| 国产福利精品一区| 精品综合久久久久久8888| 精品亚洲免费视频| 亚洲老司机在线| 国产精品福利一区二区| 国产亚洲午夜高清国产拍精品| 91精品久久久久久蜜臀| 在线一区二区三区四区五区| 成人av中文字幕| 国产成人免费网站| 国产成人a级片| 国产精品系列在线观看| 国产精品综合视频| 国产精品一品二品| 国产精品综合在线视频| 国产精品1区二区.| 国产毛片精品一区| 国产一区二区主播在线| 久久99精品国产麻豆不卡| 日韩成人午夜精品| 免费观看一级欧美片| 奇米色777欧美一区二区| 蜜桃精品视频在线| 久久不见久久见免费视频7| 精品中文av资源站在线观看| 理论电影国产精品| 国产一区二区久久| 高清免费成人av| 99视频精品在线| 91在线视频网址| 色999日韩国产欧美一区二区| 色综合久久综合中文综合网| 91黄色小视频| 欧美人成免费网站| 日韩三级精品电影久久久 | 69堂精品视频| 日韩区在线观看| 久久青草欧美一区二区三区| 国产免费观看久久| 1区2区3区精品视频| 亚洲三级免费观看| 午夜私人影院久久久久| 日本欧美一区二区| 国产69精品久久久久777| www.成人在线| 欧美日韩久久久久久| 日韩三级视频在线观看| 国产亚洲欧美一区在线观看| 一区精品在线播放| 婷婷六月综合亚洲| 国产乱人伦偷精品视频免下载| 成人免费观看av| 欧美在线影院一区二区| 日韩欧美第一区| 国产精品午夜在线观看| 亚洲一区在线观看免费观看电影高清 | 97久久超碰精品国产| 欧美三级电影一区| 久久免费电影网| 亚洲免费色视频| 美女久久久精品| jlzzjlzz亚洲女人18| 欧美二区在线观看| 国产欧美精品一区| 婷婷激情综合网| 懂色av一区二区夜夜嗨| 欧美三级午夜理伦三级中视频| 精品国产成人在线影院 | 另类小说视频一区二区| www.在线成人| 日韩一二三四区| 亚洲色图在线看| 国产一区二区电影| 欧美在线制服丝袜| 国产午夜精品一区二区三区视频 | 国内成人免费视频| 在线亚洲人成电影网站色www| 日韩免费视频一区二区| 亚洲精品五月天| 国产一区二区女| 欧美精品乱人伦久久久久久| 中日韩av电影| 国产真实乱对白精彩久久| 欧美午夜寂寞影院| 国产精品视频第一区| 日本va欧美va瓶| 欧美系列亚洲系列| 国产精品麻豆欧美日韩ww| 久久国产精品99久久久久久老狼 | 亚洲国产精品麻豆| 99久久综合国产精品| 久久综合国产精品| 另类人妖一区二区av| 欧美日韩精品专区| 亚洲乱码国产乱码精品精可以看 | 欧美日韩mp4| 亚洲精品水蜜桃| 成人动漫中文字幕| 国产亚洲精品资源在线26u| 蜜桃视频第一区免费观看| 欧美日韩精品专区| 一区二区三区在线观看欧美| 成人激情小说网站| 国产精品色一区二区三区| 国产一区二区电影| 久久夜色精品一区| 激情综合五月天| 日韩午夜三级在线| 麻豆久久一区二区| 日韩一区和二区| 日韩精品乱码av一区二区| 欧美日韩一卡二卡| 亚洲一线二线三线视频| 色综合久久中文综合久久牛| 中文字幕亚洲视频| 99视频精品在线| 亚洲精品写真福利| 91福利国产成人精品照片| 亚洲特黄一级片| 91色在线porny| 亚洲精品乱码久久久久久黑人| 成人h版在线观看| 中文字幕一区二区不卡| 一本久久a久久精品亚洲| 亚洲日本欧美天堂| 91视频一区二区| 亚洲国产毛片aaaaa无费看| 精品视频999| 免费在线观看一区| 欧美tk—视频vk| 国产福利91精品一区二区三区| 日本一区二区三区四区| 成人动漫一区二区| 亚洲在线免费播放| 9191国产精品| 韩国精品在线观看| 国产精品天美传媒| 色视频成人在线观看免| 婷婷丁香久久五月婷婷| 精品欧美久久久| 国产东北露脸精品视频| 亚洲另类在线视频| 51午夜精品国产| 国产乱人伦偷精品视频不卡| 中文字幕一区二区三区在线不卡| 在线精品视频一区二区| 欧美aaa在线| 中文字幕欧美日本乱码一线二线| 色综合欧美在线| 日本不卡123| 国产精品久久久久久久第一福利 | 精品视频在线看| 激情综合亚洲精品| 亚洲视频一区在线| 7777精品伊人久久久大香线蕉经典版下载 | 亚洲国产精品影院| 欧美xxxx在线观看| 99麻豆久久久国产精品免费| 亚洲va欧美va人人爽午夜 | 亚洲自拍偷拍欧美| 精品国产乱码久久久久久闺蜜| 91一区二区三区在线观看| 午夜激情久久久| 中文字幕av不卡| 欧美精品色综合| 高清av一区二区| 午夜精品久久久久久久久久久| 精品成a人在线观看| 91福利在线免费观看| 国产一区二区福利视频| 亚洲国产毛片aaaaa无费看| 国产日产欧美一区二区视频| 欧美日韩色一区| www.亚洲免费av| 开心九九激情九九欧美日韩精美视频电影| 亚洲国产成人午夜在线一区| 日韩亚洲欧美综合| 91婷婷韩国欧美一区二区| 国产精品自拍一区| 日韩高清国产一区在线| 亚洲免费伊人电影|