91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 14KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-08
  • 語言: 其他
  • 標簽: 單片機??TC9012芯片??

資源簡介

單片機對TC9012芯片進行解碼,并在數(shù)碼管上顯示出鍵值;程序的思路清晰易懂,很容易經(jīng)過修改移植到其他的芯片上;超值

資源截圖

代碼片段和文件信息

/*copyright?2007ShangHai??HaoTun?Electronic?Technology?co.Ltd
?*
?*This?sample?is?used?for?control?light?by?infrared?.
?*
?*write?by?Shifang
?*
?*V1.1
?*/
?//使用12M晶振?適用于TC9012芯片,其他芯片請自行更改解碼時序
#include
#include
#include

////////////////////////////////////////////////
#define?TURE?1
#define?FALSE?0

////////////////////////////////////////////////

sbit?IR=P3^2;//紅外接口標志


////////////////////////////////////////////

unsigned?char??irtime;//紅外用全局變量

bit?irpro_okirok;
unsigned?char?IRcord[4];
unsigned?char???irdata[33];

//////////////////////////////////////////////

void?Delay(unsigned?char?mS);
void?Ir_work(void);
void?Ircordpro(void);

//////////////////////////////////////////////////////////////////??

void?tim0_isr?(void)?interrupt?1?using?1//定時器0中斷服務函數(shù)
{
??irtime++;
}

///////////////////////////////////////////////////////////////////////
void?ex0_isr?(void)?interrupt?0?using?0//外部中斷0服務函數(shù)
{
??static?unsigned?char??i;
??static?bit?startflag;

?if(startflag)
?{
???
????if(irtime<42&&irtime>=33)//引導碼?TC9012的頭碼
????????????i=0;
?????
???? irdata[i]=irtime;//一次存儲32位電平寬度
???? irtime=0;
???? i++;
??? ?if(i==33)
?????? {
?? ?irok=1;
?i=0;
?? }
??????????}
?
?? ?else
{irtime=0;startflag=1;}

}

////////////////////////////////////////////////////////////////////
void?TIM0init(void)//定時器0初始化
{

??TMOD=0x02;//定時器0工作方式2,TH0是重裝值,TL0是初值
??TH0=0x00;//reload?value
??TL0=0x00;//initial?value
??ET0=1;//開中斷
??TR0=1;
}
///////////////////////////////////////////////////////////////////
void?EX0init(void)
{
?IT0?=?1;???//?Configure?interrupt?0?for?falling?edge?on?/INT0?(P3.2)
?EX0?=?1;???//?Enable?EX0?Interrupt
?EA?=?1;??
}
/****************************************************************/

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

??void?Ir_work(void)//紅外鍵值散轉程序
??{
???????switch(IRcord[2])//判斷第三個數(shù)碼值
?????????{
?case?0:P0=0xf9;break;//1?顯示相應的按鍵值
?case?1:P0=0xa4;break;//2
?case?2:P0=0xb0;break;//3
?case?3:P0=0x99;break;//4
?case?4:P0=0x92;break;//5
?case?5:P0=0x82;break;//6
?case?6:P0=0xf8;break;//7
?case?7:P0=0x80;break;//8
?case?8:P0=0x90;break;//9

?}

???

??irpro_ok=0;//處理完成標志

??}

/*****************************************************************/
void?Ircordpro(void)//紅外碼值處理函數(shù)
{?
??unsigned?char?i?j?k;
??unsigned?char?cordvalue;

??k=1;
??for(i=0;i<4;i++)//處理4個字節(jié)
?????{
??????for(j=1;j<=8;j++)?//處理1個字節(jié)8位
?????????{
??????????cord=irdata[k];
??????????if(cord>7)//大于某值為1
????{
?????????????value=value|0x80;
}
??????????else?
????{
?????????????value=value;
}
??????????if(j<8)
????{
?value=value>>1;
}
???????????k++;
?????????}
?????IRcord[i]=value;
?????value=0;?????
?????}?irpro_ok=1;//處理完畢標志位置1
????
}




/////////////////////////////////////////////////////////////////

vo

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????887??2008-08-18?07:13??18-紅外解碼數(shù)碼管顯示\紅外解碼.hex

?????文件???????8271??2008-08-18?07:13??18-紅外解碼數(shù)碼管顯示\紅外解碼.M51

????.......??????1188??2008-08-18?07:13??18-紅外解碼數(shù)碼管顯示\紅外解碼_Opt.Bak

?????文件??????????0??2008-12-05?15:08??18-紅外解碼數(shù)碼管顯示\紅外解碼.plg

????.......??????1994??2008-08-18?07:13??18-紅外解碼數(shù)碼管顯示\紅外解碼_Uv2.Bak

?????文件???????5338??2008-08-18?07:13??18-紅外解碼數(shù)碼管顯示\紅外解碼

?????文件???????3468??2008-08-18?07:13??18-紅外解碼數(shù)碼管顯示\解碼.c

?????文件???????7537??2008-08-18?07:13??18-紅外解碼數(shù)碼管顯示\解碼.LST

?????文件???????6205??2008-08-18?07:13??18-紅外解碼數(shù)碼管顯示\解碼.OBJ

?????文件???????1664??2008-12-05?15:09??18-紅外解碼數(shù)碼管顯示\紅外解碼.Uv2

?????文件????????979??2008-12-05?15:09??18-紅外解碼數(shù)碼管顯示\紅外解碼.Opt

?????目錄??????????0??2008-12-05?14:59??18-紅外解碼數(shù)碼管顯示

-----------?---------??----------?-----??----

????????????????37531????????????????????12


評論

共有 條評論