“(SKU:RB-03T001)紅外無線遙控套件”的版本間的差異
(→?Arduino平臺下鍵值表) |
|||
第1行: | 第1行: | ||
<br/> | <br/> | ||
[[文件:sdfa1.jpg|500px|有框|右]] | [[文件:sdfa1.jpg|500px|有框|右]] | ||
? | == | + | ==產品概述== |
紅外線遙控接收傳感器模塊,它采用了 HS 0038 一體化紅外接收頭作為信號接收元件,確保了產品具有極高的可靠性與卓越的長期穩(wěn)定性。HS 0038 是一個集成度很高的元器件。紅外接收電路一體化的紅外接收裝置將遙控信號的接收、放大、檢波、整形集于一身,并且輸出可以讓單片機識別的 TTL 信號,這樣大大簡化了接收電路的復雜程度和電路的設計工作,方便使用。在產品中我們采用紅外一體化接收頭 HS0038,外觀如封面圖片所示。HS0038 黑色環(huán)氧樹脂封裝,不受日光、熒光燈等光源干擾。HS 0038 為直立側面收光型。它接收紅外信號頻率為 38 kHz,周期約 26 μs,能同時對信號進行放大、檢波、整形,得到 TTL 電平的編碼信號。因此該款產品具有品質卓越、超快響應、抗干擾能力強、性價比高等優(yōu)點。 應用領域:家電產品、人機互動平臺、教學儀器儀表、PC遙控器等。 | 紅外線遙控接收傳感器模塊,它采用了 HS 0038 一體化紅外接收頭作為信號接收元件,確保了產品具有極高的可靠性與卓越的長期穩(wěn)定性。HS 0038 是一個集成度很高的元器件。紅外接收電路一體化的紅外接收裝置將遙控信號的接收、放大、檢波、整形集于一身,并且輸出可以讓單片機識別的 TTL 信號,這樣大大簡化了接收電路的復雜程度和電路的設計工作,方便使用。在產品中我們采用紅外一體化接收頭 HS0038,外觀如封面圖片所示。HS0038 黑色環(huán)氧樹脂封裝,不受日光、熒光燈等光源干擾。HS 0038 為直立側面收光型。它接收紅外信號頻率為 38 kHz,周期約 26 μs,能同時對信號進行放大、檢波、整形,得到 TTL 電平的編碼信號。因此該款產品具有品質卓越、超快響應、抗干擾能力強、性價比高等優(yōu)點。 應用領域:家電產品、人機互動平臺、教學儀器儀表、PC遙控器等。 | ||
第10行: | 第10行: | ||
# 模塊尺寸:13.5mm×38.3mm | # 模塊尺寸:13.5mm×38.3mm | ||
# 模塊重量:2g | # 模塊重量:2g | ||
+ | |||
+ | ==產品清單== | ||
+ | 1.無線紅外遙控器*1個<br/> | ||
+ | 2.3P傳感器連接線*1個<br/> | ||
+ | 3.紅外接收傳感器*1個<br/> | ||
==使用方法== | ==使用方法== |
2015年6月23日 (二) 15:20的版本
目錄 |
產品概述
紅外線遙控接收傳感器模塊,它采用了 HS 0038 一體化紅外接收頭作為信號接收元件,確保了產品具有極高的可靠性與卓越的長期穩(wěn)定性。HS 0038 是一個集成度很高的元器件。紅外接收電路一體化的紅外接收裝置將遙控信號的接收、放大、檢波、整形集于一身,并且輸出可以讓單片機識別的 TTL 信號,這樣大大簡化了接收電路的復雜程度和電路的設計工作,方便使用。在產品中我們采用紅外一體化接收頭 HS0038,外觀如封面圖片所示。HS0038 黑色環(huán)氧樹脂封裝,不受日光、熒光燈等光源干擾。HS 0038 為直立側面收光型。它接收紅外信號頻率為 38 kHz,周期約 26 μs,能同時對信號進行放大、檢波、整形,得到 TTL 電平的編碼信號。因此該款產品具有品質卓越、超快響應、抗干擾能力強、性價比高等優(yōu)點。 應用領域:家電產品、人機互動平臺、教學儀器儀表、PC遙控器等。
規(guī)格參數
- 供電電壓:4.5-5.5V
- 輸出信號:TTL
- 接收信號距離半徑:不大于7m(根據遙控器發(fā)射功率而定,此參數為本套遙控器測試結果);
- 模塊尺寸:13.5mm×38.3mm
- 模塊重量:2g
產品清單
1.無線紅外遙控器*1個
2.3P傳感器連接線*1個
3.紅外接收傳感器*1個
使用方法
步驟一:接線 S端口連接到控制器的 I/O 口。+、- 分別接到電源的+5V 和 GND。
步驟二:安裝固定 根據需要通過直徑 φ3 的連接件(銅柱、螺釘、螺栓等)進行固定。
紅外遙控接收傳感器的測試
我們使用 Arduino 控制器來做個測試,要用到硬件設備如下:
- Arduino 控制器×1
- Arduino LCD1602 字符液晶擴展板×1
- 紅外遙控接收傳感器模塊×1
- 蜂鳴器發(fā)聲模塊×1
- 超薄紅外遙控器×1
- 通用 3P 傳感器連接線×2
- USB 數據通信線×1
- 如圖所示,使用傳感器連接線將紅外遙控接收傳感器連接到 LCD1602 字符液晶擴
展板的模擬口 1 上,如需聲音提示可把本公司的蜂鳴器發(fā)聲模塊連接到模擬口 2 上, 這里要說明下,我們是把模擬接口當做數字接口用,這樣比較方便,參見例子程序中 接口定義。連接好硬件后,再把測試源程序庫文件解壓縮到你的 Arduino 安裝目錄下的 hardware\ libraries 里面(如需紅外遙控接收傳感器庫文件請聯系我們的技術客服)。然 后將代碼編譯后下載到 Arduino 里,就可以進行鍵值讀取試驗了,同時在軟件里的串口 監(jiān)視窗口上可以看見同步的鍵值顯示(注:軟件串口波特率設置為 9600)。
- Arduino 實驗代碼如下:
#include <LCD4Bit_mod.h> LCD4Bit_mod lcd = LCD4Bit_mod(2); #define TIMER_RESET TCNT1 = 0 #define SAMP LE_S IZE 68 int BUZZER = 16;// 設置模擬口 2 為蜂鳴器信號輸出引腳 int IRpin = 15; //設置模擬口 1 為信號接收引腳 unsigned int TimerValue[SAMPLE_SIZE]; char direction[SAMPLE_SIZE]; byte change_count; long t ime1, t ime2; unsigned long data; char a,b,c,d,e; unsigned long irc; char tab[12]={"0123456789"}; void setup() { pinMode(IRpin, INPUT); pinMode(13, OUTPUT); pinMode(BUZZER,OUTPUT);// 設置與蜂鳴器連接的引腳為輸出模式 lcd.init(); lcd.clear( ); lcd.printIn("www.robotbase.cn"); lcd.cursorTo(2, 0); lcd.printIn("IR_CODE:"); TCCR1B = 0x03; TCCR1A = 0x00; a=0;b=0;c=0;d=0;e=0; Serial.begin(9600); bee(); void loop() { lcd.cursorTo(2, 9); lcd.print(tab[a]); lcd.cursorTo(2, 10); lcd.print(tab[b]); lcd.cursorTo(2, 11); lcd.print(tab[c]); lcd.cursorTo(2, 12); lcd.print(tab[d]); lcd.cursorTo(2, 13); lcd.print(tab[e]); ir_code(); Serial.println(irc); } void bee() { digitalWrite(BUZZER,LOW);//蜂鳴器響 delay(300); digitalWrite(BUZZER,HIGH);//蜂鳴器響 delay(300); } void ir_code() { change_count = 0; while(digitalRead(IRpin) == HIGH) {} // 等待起始位 TIMER_RES ET; TimerValue[change_count] = TCNT1; direct ion[change_count++] = '0'; while (change_count < S AMP LE_SIZE) { if (direction[change_count-1] == '0') { while(digitalRead(IRpin) == LOW) {} // 等待電平上升沿出現 TimerValue[change_count] = TCNT1; direct ion[change_count++] = '1'; // 保持信號狀態(tài) } else { while(d igit alRead(IRpin) == HIGH) {} // 等待電平信號的下降沿 TimerValue[change_count] = TCNT1; direct ion[change_count++] = '0'; // 保持信號狀態(tài) } } change_count = 0; data = 0; time1 = (long) TimerValue[change_count] * 4; change_count += 2; while (change_count < SAMPLE_SIZE) { time2 = (long) TimerValue[change_count] * 4; if ((t ime2 - time1) > 8000) { else if ((time2 - t ime1) > 1680) { data = data << 1; // 左移一位 data |= 1; else { data = data << 1; change_count += 2; time1 = time2; irc=data%100000; a=irc/10000; b=irc%10000/1000; c=irc%1000/100; d=irc%100/10; e=irc%10; bee(); }
Arduino平臺下鍵值表
產品相關推薦
購買地址:紅外無線遙控套件