



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、讀取遙控器每個按鍵編碼的程序,tc9012 50462通過測試(89c52+keil c)-原子團He2011-02-01 09:36讀取遙控器編碼的程序,按下按鍵后,通過單片機與電腦的連接,串口調(diào)試助手中可以顯示出按鍵編碼的后8位/原子團He#includereg52.h#define uchar unsigned char#define uint unsigned int /tc9012uchar flag=0;/是否接到起始位標(biāo)志 未接到為0 接到為1uchar traflag=0;/翻譯是否完成標(biāo)記 完成為1uchar rec33;/接收遙控器發(fā)送的所有數(shù)據(jù) 用來記錄兩個下降沿之間的時
2、間uchar recok=0;/是否接收完一幀數(shù)據(jù)標(biāo)記 接收完為1uchar sendok=0;/是否發(fā)送完畢標(biāo)記 發(fā)送完成為1uchar num=0;/變相記錄時間 uchar n=0;/rec中的數(shù)組定位void timerinit();/定時器0初始化 void ruptinit();/外部中斷0初始化 void tradata();/一幀數(shù)據(jù)的翻譯 即把時間記錄轉(zhuǎn)換成0/1void send();/把收到的數(shù)據(jù)發(fā)給上位機 void delay();/定時器 中斷初始化/void timerinit()/定時器0 TMOD=0x02;/定時器0使用方式2 TH0=0x00; TL0=0x
3、00; EA=1; ET0=1;/定時器中斷開 TR0=1;/計時開 void ruptinit()/外部中斷0 EA=1; EX0=1;/外部中斷開 IT0=1;/下降沿觸發(fā) 0是電平觸發(fā) /定時器 中斷函數(shù)/void timer() interrupt 1 /系統(tǒng)從0x00記到0xff 每記一次時間大概為1us 記256次 即256us中斷一次 num+;/num記錄的是256us的個數(shù) 總時間=num*256usvoid rupt() interrupt 0 /外部中斷0 當(dāng)遇到下降沿時觸發(fā) if(flag=1)/flag為1 說明收到了起始位 接下來要開始進行記錄了 if(num32)
4、/時間為32*256us=8.2ms是整個起始位的時間 n=0; recn=num;/記錄兩個下降沿之間的num值 這樣也就相當(dāng)于記錄了其間的時間 num=0; n+; if(n=33)/因為前面是n+ 所以當(dāng)n=33時 數(shù)組已經(jīng)從0記到了32 已經(jīng)記滿了 recok=1;/標(biāo)記 接收一幀數(shù)據(jù)完成 n=0; else/首次得到下降沿到達這里 使flag變1 用來說明收到了起始位 flag=1; /時間翻譯函數(shù)/void tradata()/一幀數(shù)據(jù)的翻譯 即把時間記錄轉(zhuǎn)換成0/1 uchar i; for(i=1;i6)/使用6做中間值 小于則為0 大于為1 用0/1替換rec中的數(shù)據(jù) 這樣就
5、進行了翻譯 reci=1; /因為要以字符串發(fā)送 所以這里用字符形式 else reci=0; traflag=1;/翻譯完成標(biāo)記 /發(fā)送數(shù)據(jù)函數(shù)/void send()/把收到的數(shù)據(jù)發(fā)送給上位機 具體細節(jié)不懂看串口通信 mcu to pc uchar i; TMOD=0x20; TH1=0xfd; TL1=0xfd; TR1=1; SM0=0; SM1=1; REN=1; for(i=25;i0;c-) for(b=142;b0;b-) for(a=2;a0;a-);void main() timerinit();/定時器0初始化 ruptinit();/外部中斷0初始化 while(1) if(recok=1)/接收一幀數(shù)據(jù)完成 P1=0xfe;/燈亮一下 為了指示是否收到了數(shù)據(jù) tradata();/翻譯數(shù)據(jù) delay(); if(traflag=1)/翻譯完成 send();/發(fā)送 delay(); if(sendok=1)/
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)新素養(yǎng)視角下高中數(shù)學(xué)高效課堂的構(gòu)建
- 中學(xué)教育基礎(chǔ)知到課后答案智慧樹章節(jié)測試答案2025年春白城師范學(xué)院
- 三級人力資源管理師-《企業(yè)人力資源管理師(理論知識)》考前強化模擬卷1
- 高考物理課標(biāo)版一輪復(fù)習(xí)考點規(guī)范練19動量動量定理動量守恒定律的理解
- 重慶市復(fù)旦中學(xué)2024-2025學(xué)年高一下學(xué)期開學(xué)考試生物試題(原卷版)
- 揭陽中式花園施工方案
- 湖南省衡陽縣三中2017-2018學(xué)年高二上學(xué)期期中考試歷史試卷
- 廣東省惠州市惠東中學(xué)2017-2018學(xué)年高三5月熱身綜合練習(xí)生物(二)答案
- 浙江省寧波市2024-2025學(xué)年高三上學(xué)期期末模擬檢測語文試題(原卷版+解析版)
- 河南省南陽市鎮(zhèn)平縣2024-2025學(xué)年七年級上學(xué)期期末語文試題(原卷版+解析版)
- 《煤礦職業(yè)病危害防治》培訓(xùn)課件2025
- 2024年網(wǎng)絡(luò)建設(shè)與運維選擇題理論試題題庫
- 四年級下冊勞動《小小快遞站》課件
- 終止供應(yīng)商協(xié)議書
- 2024年菠菜種子項目可行性研究報告
- 專題12 職業(yè)夢想 -2023年中考英語作文熱點話題終極預(yù)測
- 食品抽檢核查處置重點安全性指標(biāo)不合格原因分析排查手冊
- 暑托班合同范例
- GB/T 44904-2024售后服務(wù)無理由退貨服務(wù)規(guī)范
- 《導(dǎo)管室的無菌原則》課件
- DBJ52T 088-2018 貴州省建筑樁基設(shè)計與施工技術(shù)規(guī)程
評論
0/150
提交評論