久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
遙控器紅外解碼數(shù)碼管顯示
[打印本頁]
作者:
huge
時間:
2015-2-18 23:31
標(biāo)題:
遙控器紅外解碼數(shù)碼管顯示
/*-----------------------------------------------
名稱:遙控器紅外解碼數(shù)碼管顯示
內(nèi)容:按配套遙控器上1-9會在數(shù)碼管上對應(yīng)顯示
------------------------------------------------*/
#include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
#include<stdio.h>
#include<intrins.h>
#define TURE 1
#define FALSE 0
sbit IR=P3^2; //紅外接口標(biāo)志
unsigned char const dofly[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
/******************************************************************/
/* 變量聲明 */
/******************************************************************/
unsigned char irtime;//紅外用全局變量
bit irpro_ok,irok;
unsigned char IRcord[4];
unsigned char irdata[33];
/******************************************************************/
/* 函數(shù)聲明 */
/******************************************************************/
void Delay(unsigned char mS);
void Ir_work(void);
void Ircordpro(void);
/******************************************************************/
/* 定時器0中斷服務(wù)函數(shù) */
/******************************************************************/
void tim0_isr (void) interrupt 1 using 1//定時器0中斷服務(wù)函數(shù)
{
irtime++; //用于計數(shù)2個下降沿之間的時間
}
/******************************************************************/
/* 外部中斷0函數(shù) */
/******************************************************************/
void ex0_isr (void) interrupt 0 using 0//外部中斷0服務(wù)函數(shù)
{
static unsigned char i; //接收紅外信號處理
static bit startflag; //是否開始處理標(biāo)志位
if(startflag)
{
if(irtime<63&&irtime>=33)//引導(dǎo)碼 TC9012的頭碼,9ms+4.5ms
i=0;
irdata[i]=irtime;//存儲每個電平的持續(xù)時間,用于以后判斷是0還是1
irtime=0;
i++;
if(i==33)
{
irok=1;
i=0;
}
}
else
{irtime=0;startflag=1;}
}
/******************************************************************/
/* 定時器0初始化 */
/******************************************************************/
void TIM0init(void)//定時器0初始化
{
TMOD=0x02;//定時器0工作方式2,TH0是重裝值,TL0是初值
TH0=0x00; //重載值
TL0=0x00; //初始化值
ET0=1; //開中斷
TR0=1;
}
/******************************************************************/
/* 外部中斷初始化 */
/******************************************************************/
void EX0init(void)
{
IT0 = 1; //指定外部中斷0下降沿觸發(fā),INT0 (P3.2)
EX0 = 1; //使能外部中斷
EA = 1; //開總中斷
}
/******************************************************************/
/* 紅外鍵值處理 */
/******************************************************************/
void Ir_work(void)//紅外鍵值散轉(zhuǎn)程序
{
switch(IRcord[2])//判斷第三個數(shù)碼值
{
case 0:P0=dofly[1];break;//1 顯示相應(yīng)的按鍵值
case 1:P0=dofly[2];break;//2
case 2:P0=dofly[3];break;//3
case 3:P0=dofly[4];break;//4
case 4:P0=dofly[5];break;//5
case 5:P0=dofly[6];break;//6
case 6:P0=dofly[7];break;//7
case 7:P0=dofly[8];break;//8
case 8:P0=dofly[9];break;//9
}
irpro_ok=0;//處理完成標(biāo)志
}
/******************************************************************/
/* 紅外解碼函數(shù)處理 */
/******************************************************************/
void Ircordpro(void)//紅外碼值處理函數(shù)
{
unsigned char i, j, k;
unsigned char cord,value;
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,這個和晶振有絕對關(guān)系,這里使用12M計算,此值可以有一定誤差
{
value=value|0x80;
}
else
{
value=value;
}
if(j<8)
{
value=value>>1;
}
k++;
}
IRcord[i]=value;
value=0;
} irpro_ok=1;//處理完畢標(biāo)志位置1
}
/////////////////////////////////////////////////////////////////
void main(void)
{
EX0init(); //初始化外部中斷
TIM0init();//初始化定時器
P2=0x00;//1位數(shù)碼管全部顯示
while(1)//主循環(huán)
{
if(irok) //如果接收好了進(jìn)行紅外處理
{
Ircordpro();
irok=0;
}
if(irpro_ok) //如果處理好后進(jìn)行工作處理,如按對應(yīng)的按鍵后顯示對應(yīng)的數(shù)字等
{
Ir_work();
}
}
}
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
成人亚洲精品久久久久软件
|
亚洲一区二区av在线
|
亚洲精品二三区
|
欧美精品一二三
|
国内精品久久久久久久
|
欧美精品免费观看二区
|
91精品久久久久久久久
|
在线免费观看黄a
|
亚洲一区二区精品视频
|
国产视频久久久久
|
国产精品久久久久国产a级 欧美日本韩国一区二区
|
中文字幕亚洲视频
|
日韩视频一区
|
午夜影院在线观看版
|
欧美网址在线观看
|
99精品国产在热久久
|
精品三区
|
爱爱视频日本
|
久久久久9999亚洲精品
|
精品国产鲁一鲁一区二区张丽
|
亚洲 欧美 激情 另类 校园
|
一级免费在线视频
|
日韩欧美操
|
在线免费看黄
|
日韩av一区二区在线观看
|
日韩欧美在线观看
|
国产精品久久久久久久久久久免费看
|
性生活毛片
|
99视频免费播放
|
国产在线精品一区
|
欧美精品一区二区免费
|
成人在线精品视频
|
福利视频二区
|
国产农村妇女毛片精品久久麻豆
|
妞干网福利视频
|
www.99精品
|
日韩精品专区在线影院重磅
|
久久久久国产精品
|
天天看天天操
|
天天天操操操
|
亚洲精品一区在线观看
|