2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、本文是對與以前發(fā)表的程序做個適當(dāng)更改,因為在使用的過程中出現(xiàn)了一個問題,也就是在外部中斷的處理函數(shù)里面處理欠妥。在執(zhí)行外部中斷函數(shù)的時候,本意以定時器中斷來代表解碼超時,可實際情況是,即使解碼超時,定時器產(chǎn)生溢出,但是程序卻不能按照正常程序跳進(jìn)定時器中斷,執(zhí)行定時中斷函數(shù),本以為是中斷優(yōu)先級的原因,但是在設(shè)置了定時器中斷優(yōu)先級為最高,也還是不能正常進(jìn)入。隨后本人想到了解決辦法,利用定時器0溢出標(biāo)志TF0作為判斷超時的依據(jù),因為當(dāng)TF0為

2、1時,定時器向CUP申請中斷,我們可以通過查詢的方式,當(dāng)TF0為1,則解碼超時,退出解碼。此時不需要定時器中斷函數(shù),也可判斷解碼是否超時。有人就說了,那我判斷超時是否我可以定義變量,當(dāng)變量超過一定數(shù)值時代表超時。我想說,何必呢,本身定時器0溢出標(biāo)志就是TF0,紅外解碼用到定時器,那不就剛好么,何必再去定義變量呢。按照了解,通用的紅外信號電平持續(xù)最長的時間是起始電平,一個9ms的低電平時間,定時器從0開始計時到溢出,如果是52單片機12M

3、晶振速度,按照12分頻,一個定時器脈沖時間是1us,溢出所需要的時間是65ms左右。所以當(dāng)定時器溢出,我們就不必等待,TF0作為停止解碼的標(biāo)志也只能用在這種速度比較低的單片機上,對于高速單片機,假如定時器溢出只需要2ms,那要是再使用TF0做判斷,也就無意義了。好了,廢話不多說了。注:主函數(shù)由讀者自己編寫,本程序只用于解碼,最終得出的按鍵碼存于變量Key_Temp中。本人習(xí)慣寫某個器件的程序的時候,習(xí)慣創(chuàng)建.c和.h文件,因為這樣方便移

4、植,在新建的程序中只需添加.C文件和include.h文件就行了,很方便。本人用芯片是STC15W4K32S4。自己用這塊芯片做有開發(fā)板,平時寫程序都用它。也可用一般的51單片機,但要注意定時器的時間和外部中斷的端口。本程序只適用NEC編碼的解碼,RC5編碼請繞道。以下是頭文件信息:#ifndef__IR_H__#define__IR_H__sbitIR=P3^6externunsignedLong_PressLong_Press1長按

5、計數(shù),用作長按判斷externunsignedKey_Temp保存按鍵變量voidInit_IR()初始化紅外有關(guān)參數(shù)#endif以下是.c文件:#include也可以用reg52.h一般的編譯器沒有這個頭文件,因為這是我個人添加進(jìn)編譯器里面的#include“IR.h“#include“IR.h“return返回:即結(jié)束整個中斷服務(wù),退出當(dāng)前中斷服務(wù)TR0=0關(guān)閉定時器L_Time=(TH08000)先右移一位TH0=0TL0=0TR

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論