




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——紅外解碼數(shù)碼管顯示
紅外線解碼數(shù)碼管顯示對(duì)應(yīng)值
/*
名稱:遙控器紅外解碼數(shù)碼管顯示
內(nèi)容:按配套遙控器上1-9會(huì)在數(shù)碼管上對(duì)應(yīng)顯示
*/
#includereg52.h//包含頭文件,一般狀況不需要改動(dòng),頭文件包含特別功能寄放器的定義
sbitIR=P3^2;
#defineDataPortP0
sbitLATCH1=P2^6;
sbitLATCH2=P2^7;//紅外接口標(biāo)志//定義數(shù)據(jù)端口程序中遇到DataPort則用P0替換//定義鎖存使能端口段鎖存//位鎖存
unsignedcharcodedofly_DuanMa[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//顯示段碼值0~9unsignedcharirtime;//紅外用全局變量
bitirpro_ok,irok;
unsignedcharIRcord[4];
unsignedcharirdata[33];
voidIr_work(void);
voidIrcordpro(void);
voidtim0_isr(void)interrupt1using1
{
irtime++;//用于計(jì)數(shù)2個(gè)下降沿之間的時(shí)間
}
voidEX0_ISR(void)interrupt0//外部中斷0服務(wù)函數(shù)
{
staticunsignedchari;//接收紅外信號(hào)處理staticbitstartflag;//是否開始處理標(biāo)志位if(startflag){if(irtime63irtime=33)//引導(dǎo)碼TC9012的頭碼,9ms+4.5ms
i=0;
irdata[i]=irtime;//存儲(chǔ)每個(gè)電平的持續(xù)時(shí)間,用于以后判斷是0還是1
irtime=0;i++;
if(i==33)
{
irok=1;
紅外線解碼數(shù)碼管顯示對(duì)應(yīng)值
}}}else{}irtime=0;startflag=1;
voidTIM0init(void)//定時(shí)器0初始化
{
TMOD=0x02;//定時(shí)器0工作方式2,TH0是重裝值,TL0是初值TH0=0x00;//重載值TL0=0x00;//初始化值ET0=1;//開中斷
TR0=1;
}
voidEX0init(void)
{
IT0=1;//指定外部中斷0下降沿觸發(fā),INT0(P3.2)
EX0=1;//使能外部中斷
EA=1;//開總中斷
}
voidIr_work(void)//紅外鍵值散轉(zhuǎn)程序
{
switch(IRcord[2])//判斷第三個(gè)數(shù)碼值
{case0x0c:DataPort=dofly_DuanMa[1];break;//1顯示相應(yīng)的按鍵值case0x18:DataPort=dofly_DuanMa[2];break;//2case0x5e:DataPort=dofly_DuanMa[3];break;//3case0x08:DataPort=dofly_DuanMa[4];break;//4case0x1c:DataPort=dofly_DuanMa[5];break;//5case0x5a:DataPort=dofly_DuanMa[6];break;//6case0x42:DataPort=dofly_DuanMa[7];break;//7case0x52:DataPort=dofly_DuanMa[8];break;//8case0x4a:DataPort=dofly_DuanMa[9];break;//9
default:break;
}
irpro_ok=0;//處理完成標(biāo)志
}
voidIrcordpro(void)//紅外碼值處理函數(shù)
紅外線解碼數(shù)碼管顯示對(duì)應(yīng)值
unsignedchari,j,k,cord,value;k=1;for(i=0;i4;i++)//處理4個(gè)字節(jié){for(j=1;j=8;j++)//處理1個(gè)字節(jié)8位{cord=irdata[k];if(cord7)//大于某值為1,這個(gè)和晶振有絕對(duì)關(guān)系,這里使用12M計(jì)算,此值value=value|0x80;if(j8){value=1;可以有一定誤差}k++;}IRcord[i]=value;value=0;}irpro_ok=1;//處理完畢標(biāo)志位置1
}
voidmain(void)
{
EX0init();//初始化外部中斷
TIM0init();//初始化定時(shí)器
LATCH1=0;//位鎖存DataPort=0xfe;//取位碼第一位數(shù)碼管選通,即二進(jìn)制11111110LATCH2=1;//位鎖存LATCH2=0;DataPort=0x3f;//取位碼第一位數(shù)碼管選通,即二進(jìn)制11111110LATCH1=1;//位鎖存while(1)//主循環(huán){if(irok)//假使接收好了進(jìn)行紅外處理{Ircordpro();irok=0;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 合同兩人合伙協(xié)議書
- 2025年眼科藥物項(xiàng)目可行性研究報(bào)告及運(yùn)營(yíng)方案
- 牛衣原體病及其綜合防控技術(shù)
- 【課件】總體取值規(guī)律的估計(jì)(第1課時(shí)+頻率分布直方圖)課件-高一下學(xué)期數(shù)學(xué)人教A版(2019)必修第二冊(cè)
- 2022賣車合同協(xié)議書
- 2025年純電動(dòng)汽車項(xiàng)目投資分析及可行性報(bào)告
- 前臺(tái)收銀合同協(xié)議書模板
- 2025秋五年級(jí)語(yǔ)文上冊(cè)統(tǒng)編版-【9 獵人海力布】交互課件
- 飯店解除合作合同協(xié)議書
- 模具開發(fā)合同協(xié)議書范本
- 聯(lián)大學(xué)堂《人力資源管理薪酬管理(河南理工大學(xué))》題庫(kù)附答案
- 【KAWO科握】2025年中國(guó)社交媒體平臺(tái)指南報(bào)告
- 云南2025年云南省社會(huì)科學(xué)院中國(guó)(昆明)南亞東南亞研究院招聘筆試歷年參考題庫(kù)附帶答案詳解
- 【語(yǔ)文】第23課《“蛟龍”探?!氛n件 2024-2025學(xué)年統(tǒng)編版語(yǔ)文七年級(jí)下冊(cè)
- iso220002024食品安全管理體系標(biāo)準(zhǔn)
- 2024年上海市中考數(shù)學(xué)真題試卷及答案解析
- 23秋國(guó)家開放大學(xué)《小學(xué)語(yǔ)文教學(xué)研究》形考任務(wù)1-5參考答案
- 生命哲學(xué):愛、美與死亡智慧樹知到答案章節(jié)測(cè)試2023年四川大學(xué)
- 4例先天性高胰島素血癥患兒的護(hù)理
- 民辦學(xué)校籌設(shè)批準(zhǔn)書
- 上學(xué)期拓?fù)鋵W(xué)考試試卷及答案
評(píng)論
0/150
提交評(píng)論