实战训练提高篇-IR-RECEIVE.doc_第1页
实战训练提高篇-IR-RECEIVE.doc_第2页
实战训练提高篇-IR-RECEIVE.doc_第3页
实战训练提高篇-IR-RECEIVE.doc_第4页
实战训练提高篇-IR-RECEIVE.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

紅外綫接收程序目標: 通過此範例的學習,要求學生掌握了解紅外接收管之性能HT6221電視搖控器的解碼方法了解HT6221校驗之方法一範例講解1. 程式設計說明.1.1 紅外接收管之特性說明 在前一章節介紹過,紅外綫在發射時需進行38khz載波調制,但在接收時,紅外接收管可以將38khz載波信號解碼為一个高電平信號,所以我們在解碼時,不再需要理會38khz載波信號之問題。直接解出HT6221邏輯編碼即可。1.2 解碼說明第一步:通常情況下,紅外接收口上拉在高電平,當接收到38KHZ信號時,則紅外接收管將38khz解為低電平,所以根据HT6221的發碼協議我們首先收到的是9ms的低電平信號,其實在此段我們只要解出4ms到8ms的一段低電平即可。第二步:當檢測到4ms到8ms的一段低電平后,則等待信號輸入口由低變高,在信號變高后,開始判斷高電平之寬度,若高電平寬度在3ms到4.5ms之間,則說明其后緊跟著的是地址和數据碼。若高電平寬度小于3ms,則說明其后緊跟著的是重復碼。第三步:若根据高電平寬度,判斷出接著來的是地址和數据碼,那麽現在來接收地址和數据碼,此處共32位,根据發碼中0或1的編碼協議,若高低電平寬度相同,則該位數据為0,若解碼后的低電平寬度大于高電平寬度,則該位數据為1。注意:接收到的第一个位是16位地址碼的低8位的BIT0,依次為BIT1直到BIT15,接收完地址碼以后,接著接收數据碼的BIT0,直到BIT7,數据碼接收完后,是數据碼的反碼,也是從BIT0到BIT7。 當32BIT數据接收完后,則可設置Rx_Ok_Fg標志,並保存接收到的地址碼到ADDR_BUFL, ADDR_BUFH,DATA_BUF,DATA_COMP_BUF中。第四步: 第四步實際上是跟第三步並列的一步,若根据高電平寬度,判斷出接著來的是重復碼,若為重復碼,再檢測一个0.56ms的低電平,當檢測到該低電平后則說明接收到一个重復碼,設置Rx_RepeatOk_Fg標志。以后根据此標志來來完成不同功能。特別說明:紅外信號在發射時經過三極管反相,因此接收到的波形和發射波形相反。1.3 對比地址碼接收到的地址碼與,與現在接收機的OPTION地址碼進行對比,若相同才進行后面的數据分析。1.4 校對數据碼將接收到的數据碼取反后與接收到的數据反碼相比較,若相同,才完成接收碼的鍵功能。否則按接收出錯對待。目前低8位地址碼為00H,高8位地址碼為0ffH。1.5 如何処理重復碼當接收到重復碼后,其數据還保留之前節收到的數据。繼續完成該數据的功能,例如連調頻道或連續加聲音等。2. DEMO綫路圖在綫路圖中,共有兩部分要自己動手連接,BUZZER部分,I.R接收部分。在接收到一組碼后會發bb聲。3 流程圖.4 Configuration OptionsSysVolt 5.0VSysFreq 4000.000KhzProduct 28SKDIP-AWake-Up PA0-7 NO-Wake-UpIputType PA CMOSPull-High PB Pull-High Pull-High PC Pull-High Pull-High PD Pull-High Pull-High PG Pull-High OSC CrystalWDT DisableCLRWDT One Clear InstructionPB01/Buzzer PB0/1LVR DisableLVR Voltage 3.0VBZ- Source Timer05 程式代碼及注釋. 參閲附錄 二實戰練習指導 1.範例程式運行 据上面的綫路圖進行連綫,對應関習如下 PC.0連到J2的REC。 PC.4連到J2的BUZZ。 運行HT-IDE3000集成開發環境 在DEMO/testIRreceive路徑下建立一個項目文件,名稱可以是testIRreceive或其它名稱 追加源文件testIRreceive.asm到項目中 根据上面Configuration Options設定該項目的Configuration Options Build 該項目 運行並覌看結果 在此範例程式中,每接收到一組紅外綫碼則發一聲bb聲。 2.練習指導 2.1 將接收到的碼值用LED顯示出來。2.2 現在定時器中斷為0.1ms中斷一次,若定時器中斷為0.2ms中斷一次,那麽在解碼過程中應修改那些時間參數?三問題思考和解答1問題 1.1問題1.假如要將紅外接收管改爲36khz的接收管,那麽解碼程序是否要修改? 1.2問題1.如何処理接收過程中的干擾信號?2.解答2.1 解答1假如紅外接收管爲36khz的接收管,那麽解碼程序不需改變,只需將發碼部分的38khz載波改為36khz即可。2.2解答2処理解碼過程中的干擾脈沖

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论