<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 新品快遞 > 從零開(kāi)始學(xué)GD32_紅外遙控實(shí)驗

從零開(kāi)始學(xué)GD32_紅外遙控實(shí)驗

作者: 時(shí)間:2015-04-09 來(lái)源:電子產(chǎn)品世界 收藏

      從零開(kāi)始學(xué)GD32

本文引用地址:http://dyxdggzs.com/article/272282.htm

  第一節 紅外遙控實(shí)驗

  遙控器是一種無(wú)線(xiàn)發(fā)射裝置,通過(guò)現代的數字編碼技術(shù),將按鍵信息進(jìn)行編碼,通過(guò)紅外線(xiàn)二極管發(fā)射光波,光波經(jīng)接收機的紅外線(xiàn)接收器將收到的紅外信號轉變成電信號,由處理器進(jìn)行解碼,解調出相應的指令來(lái)達到控制機頂盒等設備完成所需的操作要求。

  一、原理

  很多電器都采用紅外線(xiàn)遙控,那么紅外線(xiàn)遙控的工作原理是什么呢?首先我們來(lái)看看什么是紅外線(xiàn)。

  人的眼睛能看到的可見(jiàn)光按波長(cháng)從長(cháng)到短排列,依次為紅、橙、黃、綠、青、藍、紫。其中紅光的波長(cháng)范圍為0.62~0.76μm;紫光的波長(cháng)范圍為0.38~0.46μm。比紫光波長(cháng)還短的光叫紫外線(xiàn),比紅光波長(cháng)還長(cháng)的光叫紅外線(xiàn)。

  紅外線(xiàn)遙控就是利用波長(cháng)為0.76~1.5μm之間的近紅外線(xiàn)來(lái)傳送控制信號的。

  常用的紅外線(xiàn)遙控系統一般分發(fā)射和接收兩個(gè)部分。

  發(fā)射部分的主要元件為紅外發(fā)光二極管。它實(shí)際上是一只特殊的發(fā)光二極管,由于其內部材料不同于普通發(fā)光二極管,因而在其兩端施加一定電壓時(shí),它便發(fā)出的是紅外線(xiàn)而不是可見(jiàn)光。

  大量使用的紅外發(fā)光二極管發(fā)出的紅外線(xiàn)波長(cháng)為940nm左右,外形與普通發(fā)光二極管相同,只是顏色不同。

  紅外發(fā)光二極管一般有黑色、深藍、透明三種顏色。

  判斷紅外發(fā)光二極管好壞的辦法與判斷普通二極管一樣:用萬(wàn)用表電阻擋量一下紅外發(fā)光二極管的正、反向電阻即可。

  紅外發(fā)光二極管的發(fā)光效率要用專(zhuān)門(mén)的儀器才能精確測定,而業(yè)余條件下只能用拉距法來(lái)粗略判定。接收部分的紅外接收管是一種光敏二極管。

  在實(shí)際應用中要給紅外接收二極管加反向偏壓,它才能正常工作,亦即紅外接收二極管在電路中應用時(shí)是反向運用,這樣才能獲得較高的靈敏度。

  紅外接收二極管一般有圓形和方形兩種。

  由于紅外發(fā)光二極管的發(fā)射功率一般都較小(15mW左右),所以紅外接收二極管接收到的信號比較微弱,因此就要增加高增益放大電路。

  前些年常用μPC1373H、CX20106A等紅外接收專(zhuān)用放大電路。最近幾年不論是業(yè)余制作還是正式產(chǎn)品,大多都采用成品紅外接收頭。

  成品紅外接收頭的封裝大致有兩種:一種采用鐵皮屏蔽;一種是塑料封裝。均有三只引腳,即電源正(VDD)、電源負 (GND)和數據輸出(VO或OUT)。紅外接收頭的引腳排列因型號不同而不盡相同,可參考廠(chǎng)家的使用說(shuō)明。成品紅外接收頭的優(yōu)點(diǎn)是不需要復雜的調試和外 殼屏蔽,使用起來(lái)如同一只三極管,非常方便。但在使用時(shí)注意成品紅外接收頭的載波頻率。

  紅外遙控常用的載波頻率為38kHz,這是由發(fā)射端所使用的455kHz陶振來(lái)決定的。

  在發(fā)射端要對晶振進(jìn)行整數分頻,分頻系數一般取12,所以455kHz÷12≈37.9 kHz≈38kHz。也有一些遙控系統采用36kHz、40kHz、56kHz等,一般由發(fā)射端晶振的振蕩頻率來(lái)決定。

  二、紅外遙控編碼

  常用的有通過(guò)脈沖寬度來(lái)實(shí)現信號調制的脈寬調制(PWM)和通過(guò)脈沖串之間的時(shí)間間隔來(lái)實(shí)現信號調制的脈時(shí)調制(PPM)兩種方法。

  我的遙控器使用的是NEC協(xié)議,即PWM方法,其特點(diǎn)如下:

  1、8位地址和8位指令長(cháng)度;

  2、地址和命令2次傳輸(確??煽啃?

  3、PWM脈沖位置調制,以發(fā)射紅外載波的占空比代表“0”和“1”;

  4、載波頻率為38Khz;

  5、位時(shí)間為1.125ms或2.25ms;

  NEC碼的位定義:一個(gè)脈沖對應560us的連續載波,一個(gè)邏輯1傳輸需要2.25ms(560us脈沖+1680us低電平),一個(gè)邏輯0的傳輸需要1.125ms(560us脈沖+560us低電平)。而遙控接收頭在收到脈沖的時(shí)候為低電平,在沒(méi)有脈沖的時(shí)候為高電平,這樣,我們在接收頭端收到的信號為:邏輯1應該是560us低+1680us高,邏輯0應該是560us低+560us高。

  NEC遙控指令的數據格式為:同步碼頭、地址碼、地址反碼、控制碼、控制反碼。同步碼由一個(gè)9ms的低電平和一個(gè)4.5ms的高電平組成,地址碼、地址反碼、控制碼、控制反碼均是8位數據格式。按照低位在前,高位在后的順序發(fā)送。采用反碼是為了增加傳輸的可靠性(可用于校驗)。

  三、解碼過(guò)程

  

 

  

 

  從圖中可以看到,其地址碼為0,控制碼為168??梢钥吹皆?00ms之后,我們還受到了幾個(gè)脈沖,這是NEC碼規定的連發(fā)碼(由9ms低電平+2.5m高電平+0.56ms低電平+97.94ms高電平組成),如果在一幀數據發(fā)送完畢之后,按鍵仍然沒(méi)有放開(kāi),則發(fā)射重復碼,即連發(fā)碼,可以通過(guò)統計連發(fā)碼的次數來(lái)標記按鍵按下的長(cháng)短/次數。

  四、實(shí)驗操作

  基于GD32 實(shí)驗21 紅外遙控實(shí)驗基礎上,在remote.h文件中添加以下宏定義:

  #defineBUTTON_1 218

  #defineBUTTON_2 242

  #defineBUTTON_3 202

  #defineBUTTON_4 90

  #defineBUTTON_5 240

  #defineBUTTON_6 122

  #defineBUTTON_7 106

  #defineBUTTON_8 114

  #defineBUTTON_9 74

  #defineBUTTON_0 170

  #define BUTTON_POWER 234

  作為遙控器的新鍵值。

  main.c文件中的switch函數也進(jìn)行了如下修改:

  switch(key)

  {

  caseBUTTON_POWER:

  LCD_ShowString(86,150,"POWER");

  break;

  caseBUTTON_1:

  LCD_ShowString(86,150,"1 ");

  break;

  caseBUTTON_2:

  LCD_ShowString(86,150,"2 ");

  break;

  caseBUTTON_3:

  LCD_ShowString(86,150,"3 ");

  break;

  caseBUTTON_4:

  LCD_ShowString(86,150,"4 ");

  break;

  caseBUTTON_5:

  LCD_ShowString(86,150,"5 ");

  break;

  caseBUTTON_6:

  LCD_ShowString(86,150,"6 ");

  break;

  caseBUTTON_7:

  LCD_ShowString(86,150,"7 ");

  break;

  caseBUTTON_8:

  LCD_ShowString(86,150,"8 ");

  break;

  caseBUTTON_9:

  LCD_ShowString(86,150,"9 ");

  break;

  caseBUTTON_0:

  LCD_ShowString(86,150,"0 ");

  break;

  default:

  break;

  }

  最后,測試一切正常!

紅外遙控器相關(guān)文章:紅外遙控器原理

萬(wàn)能遙控器相關(guān)文章:萬(wàn)能遙控器代碼


萬(wàn)用表相關(guān)文章:萬(wàn)用表怎么用


手機電池相關(guān)文章:手機電池修復


晶振相關(guān)文章:晶振原理
脈沖點(diǎn)火器相關(guān)文章:脈沖點(diǎn)火器原理
脈寬調制相關(guān)文章:脈寬調制原理


關(guān)鍵詞: 紅外遙控器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>