国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)及其使用方法

      文檔序號:6726555閱讀:438來源:國知局
      專利名稱:單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)及其使用方法
      技術(shù)領(lǐng)域
      本發(fā)明屬于單片機(jī)設(shè)計技術(shù)領(lǐng)域,尤其涉及一種單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)及其使用方法。
      背景技術(shù)
      使用單片機(jī)設(shè)計產(chǎn)品時,設(shè)計師往往被要求產(chǎn)品必須有紅外遙控功能,他們要從市場上選一種遙控器,用面膜貼掉一些按鍵,根據(jù)方案設(shè)計,在適當(dāng)位置上保留足夠數(shù)量的按鍵,然后規(guī)定每個按鍵的功能。作為產(chǎn)品軟件的一部分,必須編制紅外遙控器按鍵代碼識別程序,以便轉(zhuǎn)到各按鍵所規(guī)定的功能程序去實現(xiàn)相應(yīng)的功能?,F(xiàn)狀是市場上各種型號的紅外遙控器五花八門,它們的編碼格式也不同,設(shè)計師往往被卡在這里,不會編制按鍵代碼識別程序,無法進(jìn)行下一步設(shè)計。目前已發(fā)表的基于單片機(jī)的紅外遙控代碼識別方法有1、已知遙控器編碼芯片的型號(比如UPD6121),而且從資料中查到其編碼格式32位編碼,一個前導(dǎo)碼(9MS高電平,4. 5MS低電平),邏輯O是O. 56MS高電平O. 56MS低電平,邏輯I是1. 68MS高電平O. 56MS低電平,8位用戶碼,8位用戶反碼,8位數(shù)據(jù)碼,8位數(shù)據(jù)反碼。超過108MS后是連發(fā)碼(9MS高電平2. 5MS低電平)。按照如此詳盡的編碼格式信息,用延時等待方法或者用定時器加外中斷方法加以識別,找到各按鍵的32位二進(jìn)制代碼,然后把它們分別編到產(chǎn)品程序中,以便轉(zhuǎn)到同按鍵功能相對應(yīng)的程序段,完成相應(yīng)的功倉泛。這種方法的缺點是必須在編制產(chǎn)品程序之前先確定遙控器內(nèi)編碼芯片的型號,查找資料,確定編碼格式,才能編制該遙控器代碼識別程序。但往往無法確定芯片型號,或找不到相關(guān)資料,對初次使用紅外遙控器設(shè)計產(chǎn)品者,自己編按鍵識別程序是一道難題。按鍵的物理位置和其功能被程序固定,要想改變其功能,必須改寫程序。如果最初所選的遙控器停產(chǎn),買不到了,或有更便宜的,更好看的,想更換遙控器,則必須改寫程序,等于重新設(shè)計軟件。2、近來,出現(xiàn)了被稱為“智能紅外遙控系統(tǒng)的解碼方法”(濰坊學(xué)院學(xué)報第10卷第6期),該法不考慮紅外編碼格式,直接計算同一種邏輯持續(xù)的時間,并根據(jù)持續(xù)時間的比例判斷出兩種不同的邏輯,用“O”或“ I”表示,經(jīng)解碼后得到紅外遙控器上各按鍵的發(fā)射編碼,并將這些發(fā)射編碼存儲起來,需要時,再將相應(yīng)的編碼經(jīng)調(diào)制后發(fā)射出去。該文中(該方法的目的是)將家中所有的遙控器整合在一起,即實現(xiàn)一個遙控器或一機(jī)控制所有能接收紅外遙控的電器設(shè)備。為此,作者在制作紅外接收/解碼模塊的同時,也設(shè)計制作了紅外發(fā)射模塊。顯然,這樣的方法只是復(fù)制其它遙控器的編碼發(fā)射功能,不能為單片機(jī)設(shè)計者提供按鍵識別。不能用于設(shè)計各種控制功能的產(chǎn)品上。而且紅外線發(fā)射器和接收器之間不能有遮擋物,并且應(yīng)相互對準(zhǔn)。家內(nèi)的電器是分散放置的,該裝置若不能手持,怎么用?把各種遙控器的功能集成在一個裝置上,其按鍵功能各不相同,而且數(shù)量很多,如何方便直觀快捷地選定某個遙控器的某個功能?這些問題都沒解決。3,2011年8月15日在“現(xiàn)代電子技術(shù)”雜志上發(fā)表的“通用紅外遙控解碼器的設(shè)計” ¢3999部隊余東鋒,國防科技大學(xué)劉強(qiáng)),所用數(shù)學(xué)手段,用矢量量化和聚類法,來解決相同邏輯電平的脈沖寬度有一些分散的問題,用迭代法解決代碼重復(fù)發(fā)送的問題。該方法的缺點在于:其功能同方法2,也不能用于設(shè)計各種控制功能的產(chǎn)品上,只是復(fù)制某個遙控器的功能而已。其實,只要選擇合適的記數(shù)脈沖周期來測量邏輯電平的脈沖寬度,其分散度是有限的(同脈沖寬度相比),用簡單的邏輯判斷(幾條指令)就能解決問題;一般,在一個信息發(fā)送完畢后,都有一個終結(jié)碼,其脈沖寬度遠(yuǎn)大于其它脈沖的寬度,通過邏輯判斷就可簡單判定信息的結(jié)束位置,不存在重復(fù)信息占用存儲資源問題,不必用那么些數(shù)學(xué)手段。4、2011年在〈〈微機(jī)與應(yīng)用 >> 雜志第30卷第21期上發(fā)表了山東科技大學(xué)劉萬斌的論文〈〈紅外遙控器解碼軟件設(shè)計及應(yīng)用>>。其功能是:在不掌握遙控器的編碼格式的情況下破譯每個鍵的紅外編碼。其方法是:用外中斷加定時計數(shù)的方法記錄每個脈沖的寬度,判斷識別代碼。然后同已編在程序中的代碼比較,相同時,即轉(zhuǎn)向相應(yīng)程序段,執(zhí)行相應(yīng)的功能。該方法的缺點是:`
      要求設(shè)計師先確定遙控器,編寫它的代碼識別程序,確定好每個按鍵的代碼,將其編入程序比較語句中(并不存儲所有按鍵的代碼)。有按鍵按下時,把它的代碼同編入程序語句中的代碼相比較,再轉(zhuǎn)到各程序段.
      該方法的缺點是:只是代碼識別,不是按鍵序號識別,每個按鍵的功能就被程序固定死了,想改變按鍵的物理位置,想更換遙控器,就必須重新編寫程序,有一定的難度,不是人人都能輕松完成的.即費時又費力。綜上所述,到目前為止的任何方法都必須由設(shè)計師自行編寫遙控器代碼識別程序,而且程序編定后,就同遙控器及其上的按鍵固定在一起了,要更換遙控器,或更動其上按鍵功能的位置,都必須重寫程序。

      發(fā)明內(nèi)容
      本發(fā)明的目的在于:給單片機(jī)設(shè)計人員提供一個工具,不必自己設(shè)計同紅外遙控器相關(guān)的程序,利用此工具可直接識別在紅外遙控器上按的是哪個按鍵,從而轉(zhuǎn)向同此按鍵相應(yīng)的程序,完成相應(yīng)的功能;各功能鍵在遙控器上的物理位置可任意設(shè)定或改變,遙控器也可隨時更換,不必重寫程序。完全把設(shè)計者從紅外遙控器代碼識別中解放出來。為了實現(xiàn)上述目的,本發(fā)明提出的技術(shù)方案是,一種單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng),其特征是所述系統(tǒng)包括計算機(jī)、單片機(jī)在線調(diào)試器、按鍵識別開發(fā)器、交流電源適配器和直流穩(wěn)壓電源;其中,所述計算機(jī)與單片機(jī)在線調(diào)試器相連;
      所述單片機(jī)在線調(diào)試器與按鍵識別開發(fā)器相連;所述直流穩(wěn)壓電源與按鍵識別開發(fā)器相連,用于為按鍵識別開發(fā)器提供電能;所述交流電源適配器的一端與單片機(jī)在線調(diào)試器相連,另一端與交流電源相連,用于將交流電壓轉(zhuǎn)換為直流電壓后提供給單片機(jī)在線調(diào)試器;所述按鍵識別開發(fā)器包括可編程芯片、管座、光接收頭、模式切換開關(guān)電路、運行切換開關(guān)電路、按鍵序號顯電路和晶振電路;所述可編程芯片夾到管座上,可編程芯片中包括程序存儲器、EEPROM存儲器和寄存器;其中,程序存儲器用于存儲程序、EEPROM存儲器用于存儲按鍵代碼、寄存器用于存儲被按動按鍵的序號;所述光接收頭與可編程芯片相連,用于接收遙控器的紅外信號;所述模式切換開關(guān)電路和運行切換開關(guān)電路分別與可編程芯片相連;所述模式切換開關(guān)電路用于選擇按鍵識別開發(fā)器的工作模式,所述工作模式包括按鍵學(xué)習(xí)模式和按鍵識別模式;所述運行切換開關(guān)電路用于選擇所述系統(tǒng)的運行模式,所述運行模式包括在線運行模式和脫機(jī)運行模式;所述晶振電路用于產(chǎn)生可編程芯片運行所需的振蕩脈沖。所述按鍵識別開發(fā)器包括顯示電路,所述顯示電路與可編程芯片相連,用于顯示被按動按鍵的序號。一種單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)的使用方法,其特征是所述使用方法包括步驟1:設(shè)定紅外遙控器上需要使用的按鍵個數(shù)N ;步驟2 :為紅外遙控器上的按鍵分配序號,序號從I至N,每個按鍵只能分配I個序號;步驟3 :將模式切換開關(guān)電路切換至按鍵學(xué)習(xí)模式,將運行切換開關(guān)電路切換至在線運行模式;步驟4 :利用單片機(jī)在線調(diào)試器將本發(fā)明所提供的按鍵代碼識別源程序編譯成機(jī)器碼程序,并將此機(jī)器碼程序?qū)懭肟删幊绦酒某绦虼鎯ζ髦?;步驟5 :利用單片機(jī)在線調(diào)試器在按鍵識別開發(fā)器上運行上述的按鍵代碼識別機(jī)器碼程序;或者,將運行切換開關(guān)電路切換至脫機(jī)運行模式,將按鍵識別開發(fā)器同單片機(jī)在線調(diào)試器斷開,直接在按鍵識別開發(fā)器上運行上述的按鍵代碼識別機(jī)器碼程序;步驟6 :將紅外遙控器對準(zhǔn)光接收頭,每隔至少2秒依次按動序號為I至N的按鍵;每次按動按鍵,按鍵代碼識別程序會自動識別所按按鍵的代碼,并將所述按鍵代碼按順序存儲到EEPROM存儲器的存儲單元中;步驟7 :將運行切換開關(guān)電路切換至在線運行模式,將本發(fā)明提供的按鍵序號識別程序和用戶程序連結(jié),得到最終用戶源程序,利用單片機(jī)在線調(diào)試器將其編譯成最終用戶機(jī)器碼程序并寫入可編程芯片中;所述按鍵序號識別程序在紅外遙控器的按鍵未被按動時處于等待狀態(tài),連序不斷地查詢紅外遙控器上是否有按鍵按動,當(dāng)查詢到紅外遙控器上有按鍵被按動時,識別所按按鍵的代碼,并將所述代碼與EEPROM存儲器的每個存儲單元中的按鍵代碼比較,當(dāng)被按動按鍵的代碼與儲存單元中的按鍵代碼相同時,根據(jù)該存儲單元所在的位置確定被按動按鍵的序號,并將該序號存入寄存器;所述用戶程序在按鍵序號識別程序執(zhí)行后,查詢寄存器,獲得被按動按鍵的序號,根據(jù)被按動按鍵的序號調(diào)用相應(yīng)地子程序,執(zhí)行相應(yīng)的控制功能;步驟8 :從按鍵識別開發(fā)器上將可編程芯片取下,插入用戶板。所述步驟6中,當(dāng)每次按動按鍵時,顯示電路顯示被按動按鍵的序號。所述步驟6之后與步驟7之前還包括識別按鍵的步驟,具體為將模式切換開關(guān)電路切換至按鍵識別模式,按動紅外遙控器上的任意按鍵,顯示電路顯示所按按鍵的序號。本發(fā)明擺脫了紅外遙控器按鍵代碼識別的困擾,設(shè)計者不必再自己設(shè)計同紅外遙控器相關(guān)的程序,只需用本發(fā)明就可簡捷而靈活地設(shè)計出單片機(jī)紅外遙控系統(tǒng),從而減少了設(shè)計難度和工作量,縮短了設(shè)計周期,提高了工作效率。


      圖1是單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)結(jié)構(gòu)圖;圖2是單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)的使用方法流程圖。
      具體實施例方式下面結(jié)合附圖,對優(yōu)選實施例作詳細(xì)說明。應(yīng)該強(qiáng)調(diào)的是,下述說明僅僅是示例性的,而不是為了限制本發(fā)明的范圍及其應(yīng)用。圖1是單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)結(jié)構(gòu)圖。如圖1所示,單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)包括計算機(jī)、單片機(jī)在線調(diào)試器、按鍵識別開發(fā)器、交流電源適配器和直流穩(wěn)壓電源。其中,計算機(jī)與單片機(jī)在線調(diào)試器相連,單片機(jī)在線調(diào)試器與按鍵識別開發(fā)器相連。在本實施例中,計算機(jī)采用普通PC機(jī),單片機(jī)在線調(diào)試器的型號為MPLAB-1⑶2。普通PC機(jī)與MPLAB-1⑶2通過USB連接。MPLAB-1⑶2通過水晶頭連線連接按鍵識別開發(fā)器(圖1中 DMSB. DDB) ο直流穩(wěn)壓電源與按鍵識別開發(fā)器相連,用于為按鍵識別開發(fā)器提供電能。交流電源適配器的一端與單片機(jī)在線調(diào)試器相連,另一端與交流電源相連,用于將交流電壓轉(zhuǎn)換為直流電壓后提供給單片機(jī)在線調(diào)試器。按鍵識別開發(fā)器包括可編程芯片、管座、光接收頭、模式切換開關(guān)電路和運行切換開關(guān)電路、晶振電路和按鍵序號顯不電路。本實施例中,可編程芯片的型號為PIC16F876A,可編程芯片夾到管座上,進(jìn)而可以方便地從按鍵識別開發(fā)器上取下??删幊绦酒邪绦騼ζ鳌EPROM存儲器和寄存器;其中,程序存儲器用于存儲程序,EEPROM存儲器用于存儲按鍵代碼;寄存器用于存儲被按動按鍵的序號。光接收頭(圖1中TL538)與可編程芯片相連,用于接收遙控器的紅外信號。模式切換開關(guān)電路(圖1中S)和運行切換開關(guān)電路(圖1中SI)分別與可編程芯片相連。模式切換開關(guān)電路用于選擇按鍵識別開發(fā)器的工作模式,所述工作模式包括按鍵學(xué)習(xí)模式和按鍵識別模式。運行切換開關(guān)電路用于選擇所述系統(tǒng)的運行模式,所述運行模式包括在線運行模式和脫機(jī)運行模式。按鍵識別開發(fā)器還包括顯示電路,在本實施例中,顯示電路為LED燈(圖1中L5,L4,L3,L2,LI,L0)。該LED燈會以二進(jìn)制數(shù)(L5是最高位,LO是最低位)顯示每次所按按鍵的序號。圖2是單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)的使用方法流程圖。本發(fā)明提供的單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)首先要進(jìn)行按鍵學(xué)習(xí)過程。由于PIC單片機(jī)系統(tǒng)設(shè)計師都熟悉MPLAB-1⑶2的用法,因此,本發(fā)明對MPLAB-1⑶2的通用操作不作贅述。按鍵學(xué)習(xí)過程可以在兩種模式下進(jìn)行模式1、在線運行模式步驟1:按圖1所示接好線(先不加220伏電源)。圖中虛線框中的“按鍵識別開發(fā)器DMSB. DDB”是本發(fā)明提供的硬件(PIC16F876A的管座是帶夾緊的活動管座);PC是個人計算機(jī);ICD2是PIC單片機(jī)在線調(diào)試器(市場上有售,包括9伏電源適配器);5伏直流穩(wěn)壓電源市場上有售。將型號為PIC16F876A的空白芯片夾到DMSB.DDB活動管座上;接通220伏電源,給系統(tǒng)加電。設(shè)定紅外遙控器上需要使用的按鍵個數(shù)N。步驟2 :為紅外遙控器上的按鍵分配序號,序號從I至N,每個按鍵只能分配I個序號,按鍵在紅外遙控器上的物理位置可由設(shè)計者任意定。步驟3 :將模式切換開關(guān)電路切換至按鍵學(xué)習(xí)模式,將運行切換開關(guān)電路切換至在線運行模式。步驟4 :用I⑶2單片機(jī)在線調(diào)試器,在Debugger模式下,將本發(fā)明提供的按鍵代碼識別源程序DMSB1. ASM編譯成機(jī)器碼程序DMSB1. HEX,并寫入PIC16F876A。步驟5 :再用ICD2在硬件DMSB. DDB上運行DMSB1. HEX程序。步驟6 :然后將紅外遙控器對準(zhǔn)DMSB. DDB上的光接收頭TL538,至少隔2秒,依次從I到N按動遙控器上的按鍵;每按一個按鍵,DMSB. DDB上的LED燈(L5,L4,L3,L2,LI,L0)會以二進(jìn)制數(shù)(L5是最高位,LO是最低位)顯示本次所按按鍵的序號。請注意觀察所按按鍵的序號是否同顯示的一樣;一定要按順序依次按動按鍵,否則就錯位了。本實施例提供的6個LED燈總共可顯示63個鍵,基本夠用了,多于63時只不過高位不顯示,按鍵學(xué)習(xí)過程仍能正常進(jìn)行。以上操作后,學(xué)習(xí)過程結(jié)束。模式2、脫機(jī)運行模式步驟1:按圖1所示接好線(先不加220伏電源)。將型號為PIC16F876A的空白芯片夾到DMSB. DDB活動管座上;接通220伏電源,給系統(tǒng)加電。設(shè)定紅外遙控器上需要使用的按鍵個數(shù)N。步驟2 :為紅外遙控器上的按鍵分配序號,序號從I至N,每個按鍵只能分配I個序號,按鍵在紅外遙控器上的物理位置可由設(shè)計者任意定。步驟3 :將模式切換開關(guān)電路切換至按鍵學(xué)習(xí)模式,將運行切換開關(guān)電路切換至在線運行模式。(即圖1中DMSB. DDB上的開關(guān)S和SI都打開)。步驟4 :用I⑶2單片機(jī)在線調(diào)試器,在Progra_er模式下,將本發(fā)明提供的按鍵代碼識別源程序DMSB1. ASM編譯成DMSB1. HEX程序,并寫入PIC16F876A。步驟5 :斷開220伏電源,將水晶頭從DMSB. DDB上取下;將運行切換開關(guān)電路切換至脫機(jī)運行模式(即將圖1中DMSB.DDB上的SI閉合),模式切換開關(guān)電路仍在按鍵學(xué)習(xí)模式。將5伏直流穩(wěn)壓電源接到220伏電源上,給DMSB.BBD加電。此時便開始在硬件DMSB.DDB上運行DMSB1.HEX程序了。步驟6:將紅外遙控器對準(zhǔn)DMSB.DDB上的光接收頭TL538,至少隔2秒,依次從I到N按動遙控器上的按鍵;每按一個按鍵,DMSB.DDB上的LED燈(L5,L4,L3,L2,LI,L0)會以二進(jìn)制數(shù)(L5是最高位,LO是最低位)顯示本次所按按鍵的序號。請注意觀察所按按鍵的序號是否同顯示的一樣;一定要按順序依次按動按鍵,否則就錯位了。以上操作后,學(xué)習(xí)過程結(jié)束。上述按鍵學(xué)習(xí)過程結(jié)束后,為了重新確認(rèn)按鍵的序號是否正確儲存,可以執(zhí)行一次按鍵識別過程,即步驟7:將模式切換開關(guān)電路切換至按鍵識別模式(即將圖1中的S鍵閉合),使系統(tǒng)處于“按鍵識別”模式,隨意按動任何鍵,檢查LED燈顯示值是否同所按按鍵序號相同。致此,按鍵學(xué)習(xí)過程完成,按鍵的代碼識別也自動完成,并已經(jīng)按先后次序存入PIC16F876A 的 EEPROM 中了。接下來,是將本發(fā)明提供的按鍵序號識別程序(DMSB2.ASM)同用戶程序連結(jié)起來形成最終用戶程序DMSB.ASM,將其編譯并寫入芯片。步驟8:將運行切換開關(guān)電路切換至在線運行模式(即將圖1中的DMSB.DDB上的Si打開)。設(shè)計者按自己的設(shè)計方案,規(guī)定未來使用的紅外遙控器總共有多少個按鍵(假定是N個),并依次規(guī)定它們的序號為:1,2,…,N。規(guī)定這N個按鍵各自要完成的功能,并根據(jù)所要完成的功能編寫自己的應(yīng)用程序(DMSB3.ASM)。按鍵序號識 別程序(DMSB2.HEX)在沒按按鍵時,處于等待狀態(tài),不停地查詢遙控器上是否有按鍵按動,一旦有,就識別出所按動的按鍵代碼,然后將此代碼同PIC16F876A中EEPROM儲存的代碼比較,相同時,就找出此代碼在EEPROM中的位置,因為代碼是按順序存儲的,程序也就計算出此按鍵的序號了,序號同按鍵的對應(yīng)關(guān)系是在“按鍵學(xué)習(xí)”階段確定的;按鍵序號識別程序把此序號寫入單片機(jī)芯片PIC16F876A的一個RAM單元中,此單元就是程序DMSB2.ASM中使用的寄存器K。在本發(fā)明的DMSB2.ASM程序結(jié)尾,設(shè)計者應(yīng)填加查詢指令,查詢K中數(shù)值,根據(jù)查詢結(jié)果,自動轉(zhuǎn)到相應(yīng)程序段,完成相應(yīng)的控制功能。如此就完成了(把DMSB2.ASM同用戶自己的程序DMSB3.ASM)軟件連結(jié)。連結(jié)后的程序即為最終用戶程序(DMSB.ASM)。用ICD2在Programmer模式下,把程序DMSB.ASM編譯成DMSB.HEX,然后把它寫入PIC16F876A的程序存儲器(注意:只寫程序,不要破壞EEPROM中的數(shù)據(jù))。在這之前(在“按鍵學(xué)習(xí)”階段)已經(jīng)將N個按鍵的代碼寫入PIC16F876A的EEPROM里了。步驟9:最后,將PIC16F876A芯片從DMSB.DDB上取下,插入設(shè)計者自己的單片機(jī)控制系統(tǒng)上,即可運行其設(shè)計的產(chǎn)品了。若要成批燒寫芯片,則可以把在上步中寫好的PIC16F876A芯片(作為母片),夾在按鍵識別開發(fā)器DMSB.DDB的活動插座上,分別點擊PIC單片機(jī)在線調(diào)試器MPLAB I⑶2上的Read target device 和 Reads device EEPROM,把母片上的 DMSB.HEX 和 EEPROM 中的按鍵代碼讀出,之后取下母片,夾上空白PIC16F876A芯片。在Programmer模式下,把DMSB.HEX和EEPROM中的數(shù)據(jù)寫入空白芯片,就完成了燒寫過程。如此返復(fù)操作,可寫多個芯片。長久以來,工程技術(shù)人員在設(shè)計使用紅外遙控器的單片機(jī)控制系統(tǒng)時,苦于不知道怎樣把紅外遙控器用于自己的設(shè)計中,而現(xiàn)有的已發(fā)表的方法,,存在許多缺點,不易使用,不易掌握,不夠靈便。使用本發(fā)明提供的系統(tǒng)和方法,設(shè)計者可以到市場購買自己喜歡的紅外遙控器,設(shè)置按鍵數(shù)N,在合適的位置留下N個按鍵,遙控器上多余的按鍵用面膜蓋住。把這N個按鍵分別付于序號1,2,…N。按鍵的序號和應(yīng)用程序中的控制功能必須一一對應(yīng),按鍵的物理位置可自己選定。不同序號的按鍵完成不同的控制功能。某個序號可以分配給遙控器上任何物理位置上的按鍵,唯獨要注意的是:不同物理位置上的按鍵不可分配相同的序號.一個按鍵只能有一個序號。之后,要先完成上述的按鍵學(xué)習(xí)過程,在學(xué)習(xí)過程完成后,程序已把N個按鍵的代碼都存入PIC16F876A的EEPROM中了。最后,將按鍵序號識別程序和用戶程序連接并寫入芯片,即可解決設(shè)計人員設(shè)計單片機(jī)系統(tǒng)時遇到的不知如何用紅外遙控器進(jìn)行設(shè)計的難題。本發(fā)明給予廣大此領(lǐng)域的技術(shù)人員一個有力工具:擺脫了紅外遙控器按鍵代碼識別的困擾,不必自己設(shè)計同紅外遙控器相關(guān)的程序,只需用本發(fā)明提供的硬件和軟件,就可簡捷而靈活的設(shè)計出單片機(jī)紅外遙控系統(tǒng)了。減少了設(shè)計難度和工作量,縮短了設(shè)計周期,提高了效率。利用本系統(tǒng),還可以成批燒寫芯片,省去了燒寫器,降低了成本。以上所述,僅為本發(fā)明較佳的具體實施方式
      ,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范 圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
      權(quán)利要求
      1.一種單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng),其特征是所述系統(tǒng)包括計算機(jī)、單片機(jī)在線調(diào)試器、按鍵識別開發(fā)器、交流電源適配器和直流穩(wěn)壓電源; 其中,所述計算機(jī)與單片機(jī)在線調(diào)試器相連; 所述單片機(jī)在線調(diào)試器與按鍵識別開發(fā)器相連; 所述直流穩(wěn)壓電源與按鍵識別開發(fā)器相連,用于為按鍵識別開發(fā)器提供電能; 所述交流電源適配器的一端與單片機(jī)在線調(diào)試器相連,另一端與交流電源相連,用于將交流電壓轉(zhuǎn)換為直流電壓后提供給單片機(jī)在線調(diào)試器; 所述按鍵識別開發(fā)器包括可編程芯片、管座、光接收頭、模式切換開關(guān)電路、運行切換開關(guān)電路、按鍵序號顯電路和晶振電路; 所述可編程芯片夾到管座上,可編程芯片中包括程序存儲器、EEPROM存儲器和寄存器;其中,程序存儲器用于存儲程序、EEPROM存儲器用于存儲按鍵代碼;寄存器用于存儲被按動按鍵的序號; 所述光接收頭與可編程芯片相連,用于接收遙控器的紅外信號; 所述模式切換開關(guān)電路和運行切換開關(guān)電路分別與可編程芯片相連; 所述模式切換開關(guān)電路用于選擇按鍵識別開發(fā)器的工作模式,所述工作模式包括按鍵學(xué)習(xí)模式和按鍵識別模式; 所述運行切換開關(guān)電路用于選擇所述系統(tǒng)的運行模式,所述運行模式包括在線運行模式和脫機(jī)運行模式; 所述晶振電路用于產(chǎn)生可編程芯片運行所需的振蕩脈沖。
      2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征是所述按鍵識別開發(fā)器包括顯示電路,所述顯示電路與可編程芯片相連,用于顯示被按動按鍵的序號。
      3.一種單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)的使用方法,其特征是所述使用方法包括: 步驟1:設(shè)定紅外遙控器上需要使用的按鍵個數(shù)N ; 步驟2:為紅外遙控器上的按鍵分配序號,序號從I至N,每個按鍵只能分配I個序號;步驟3:將模式切換開關(guān)電路切換至按鍵學(xué)習(xí)模式,將運行切換開關(guān)電路切換至在線運行模式; 步驟4:利用單片機(jī)在線調(diào)試器將按鍵代碼識別源程序編譯成機(jī)器碼程序,并將此機(jī)器碼程序?qū)懭肟删幊绦酒某绦虼鎯ζ髦校? 步驟5:利用單片機(jī)在線調(diào)試器在按鍵識別開發(fā)器上運行步驟4中已寫入可編程芯片的機(jī)器碼程序; 或者,將運行切換開關(guān)電路切換至脫機(jī)運行模式,將單片機(jī)在線調(diào)試器同按鍵識別開發(fā)器斷開,直接在按鍵識別開發(fā)器上運行編譯后的按鍵代碼識別程序; 步驟6:將紅外遙控器對準(zhǔn)光接收頭,每隔至少2秒依次按動序號為I至N的按鍵; 每次按動按鍵,按鍵代碼識別程序會自動識別所按按鍵的代碼,并將所述按鍵代碼按順序存儲到EEPROM存儲器的存儲單元中; 步驟7:將運行切換開關(guān)電路切換至在線運行模式,將按鍵序號識別程序和用戶程序連結(jié),得到最終用戶程序,利用單片機(jī)在線調(diào)試器編譯最終用戶程序并寫入可編程芯片中;所述按鍵序號識別程序在紅外遙控器的按鍵未被按動時處于等待狀態(tài),連序不斷地查詢紅外遙控器上是否有按鍵按動,當(dāng)查詢到紅外遙控器上有按鍵被按動時,識別該按鍵的代碼,并將所按按鍵的代碼與EEPROM存儲器的每個存儲單元中的按鍵代碼比較,當(dāng)被按動按鍵的代碼與儲存單元中的按鍵代碼相同時,根據(jù)該存儲單元所在的位置確定該按鍵的序號,而后存入寄存器; 所述用戶程序在按鍵序號識別程序執(zhí)行后,查詢寄存器,獲得被按動按鍵的序號,根據(jù)該序號調(diào)用相應(yīng)的子程序,執(zhí)行相應(yīng)的控制功能; 步驟8:從按鍵識別開發(fā)器上將可編程芯片取下,插入用戶板。
      4.根據(jù)權(quán)利要求3所述的使用方法,其特征是所述步驟6中,當(dāng)每次按動按鍵時,顯示電路顯不被按動按鍵的序號。
      5.根據(jù)權(quán)利要求4所述的使用方法,其特征是所述步驟6之后與步驟7之前還包括識別按鍵的步驟,具體為:將模式切換開關(guān)電路切換至按鍵識別模式,按動紅外遙控器上的任意按鍵,顯示電路顯示該被按動按鍵的序號。
      全文摘要
      本發(fā)明公開了單片機(jī)設(shè)計技術(shù)領(lǐng)域中的一種單片機(jī)控制系統(tǒng)的紅外遙控器按鍵識別系統(tǒng)及其使用方法。系統(tǒng)包括計算機(jī)、單片機(jī)在線調(diào)試器、按鍵識別開發(fā)器、交流電源適配器和直流穩(wěn)壓電源,按鍵識別開發(fā)器包括可編程芯片、管座、光接收頭、模式切換開關(guān)電路、運行切換開關(guān)電路、晶振電路和按鍵序號顯示電路;使用方法是用本發(fā)明提供的按鍵代碼識別程序在按鍵學(xué)習(xí)步驟,自動將按鍵代碼順序地存入EEPROM存儲單元;在按鍵識別步驟,可自動驗證按鍵序號與實際按鍵是否對應(yīng);然后將本發(fā)明提供的按鍵序號識別程序和用戶程序連結(jié),一起寫入可編程芯片;最后將可編程芯片插入用戶板卡。本發(fā)明使單片機(jī)設(shè)計人員擺脫了紅外遙控器按鍵代碼識別的困擾,減少了設(shè)計難度和工作量。
      文檔編號G08C23/04GK103078649SQ201210563720
      公開日2013年5月1日 申請日期2012年12月21日 優(yōu)先權(quán)日2012年12月21日
      發(fā)明者賈靜平 申請人:華北電力大學(xué)
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1