IR-Signal

IR-LCD

Universeller Infrarot Decoder und Sender mit LCD Anzeige

Das ist ein kleines Projekt das auf der IRMP und IRSND Software von Frank Mayer basiert und  bietet eine Hardwareplattform für Analyse und experimente zum Thema universelle IR Fernbedienung. Die Beschreibung zu IRMP findet Ihr hier: http://www.mikrocontroller.net/articles/IRMP


Diaplsy

Hardware:

Der Aufbau erfolgt auf einer einseitigen Platine und benötigt nur 5 Brücken. Die Platine ist also für Selberätzer gut zu verwenden. Aufgrund der teilweise engen Leiterbahnführung ist etwas Umsicht beim löten angesagt.

Schaltplan:

Schaltplan

Zu Beachten sind hier aus Platzgründen die Subminiator Elkos (Reichelt, siehe Stückliste) und die Hohlsteckerbuchse von CSD-Electronics. Alle anderen Bauteile sind eher unkritisch.

Der Jumper (+5V) dient dazu die Schaltung mit 5V über den SUB-D Stecker zu versorgen. Natürlich muß an den Stecker dann ein 5V Netzteil angeschlossen werden.

Software:

Basis ist die IRMP und IRSND Software von Frank Mayer, bei der ich nur den Teil zur Anzeige der Daten auf dem LCD und dem seriellen Port dazu gebaut habe. Einzige und wichtigste Anpassung ist der Empfangsport. In der irmp.c muß daher angepasst werden:

/*---------------------------------------------------------------------------------------------------------------------------------------------------
 * Change hardware pin here:
 *---------------------------------------------------------------------------------------------------------------------------------------------------
 */
#define IRMP_PORT                            PORTD
#define IRMP_DDR                              DDRD
#define IRMP_PIN                                PIND
#define IRMP_BIT                                2                

Die Erweiterungen für den IR-LCD sind die Ansteuerung des Displays und die Ausgabe der empfangenen Codes über die serielle Schnittstelle.
Die LCD Library für den GCC stammt von Peter Fleury. Vielen Dank an dieser Stelle. Originaldateien siehe in den Links.

Das Beispielprogramm basiert auf der IRMP Version vom 17.03.2010 und nutzt derzeit nur die Empfangsroutinen zur Anzeige des Empfangenen IR Signales auf dem LCD sowie Ausgabe über die serielle Schnittstelle (Achtung hier 38400 Baud, 8N1)

Hterm

Eine Erweiterung zum senden kommt noch...

Zum compilieren der Software benötigt man den gcc, für Windows winavr.
Für die Nutzer von Codevision sind die entsprechenden #defines eingebaut. Wegen der Codegröße wird allerdings eine Vollversion von Codevision benötigt.

Bootloader:

Um die Software bei eventuellen Änderungen bequem auf den Mega168 laden zu können habe ich ihm einen Bootloader spendiert. Um den Bootloader zu aktivieren muß der Taster während des Powerup gedrückt gehalten werden. Die Parameter des Bootloaders sind: 38400 Baud, Protokoll avr109.
Die Bootloadersoftware ist die von der Application Note 109 von Atmel: AVR109: Using Self Programming on tinyAVR and megaAVR devices
und die Software dazu: AVR109.zip
Im Download die an den Mega168 angepasste Version.

Am einfachsten geht das programmieren der jeweils neuen Software über den Bootloader  mit avrdude:

avrdude -c avr109 -p m168 -P com1 -b 38400 -U f:w:ir-lcd-m168.hex:i

Fusebits einstellen:

Wenn der Bootloader benutzt wird, müssen die Fusebits entsprechend  eingestellt sein:

Fuse mit bootloader

Ohne Bootloader sieht es so aus:

Fusebits ohne Bootloader

Bei anderen Programmern dementsprechend... anders.

Die Werte der Efuse, Hfuse und Lfuse für avrdude kann man ebenfalls den Bildern entnehmen.
Auch hier passt wieder der Fusebitrechner von Mark Hämmerling.

Aufbau:

Bestückungsplan der Platine:

Best

Gedacht ist die Platine für das Gehäuse 521981 von Conrad, das natütrlich mit den erforderlichen Ausschnitten versehen werden muß.
Bilder hiervon gibt es demnächst auch...

Stückliste:

Bauteil Bezeichnung / Wert Bestellnummer
(Beispiel)
Lieferant (Beispiel)
B1 Brückengleichrichter rund B250C1500RUND Reichelt
BU1 DC Printbuchse 2,1mm liegend 015-5600 CSD-Elecreonics
BU2 SUBD-F9 D-SUB BU 09GW Reichelt
C1, C2, C10, C11 4,7µ (Submini) SM 4,7/50RAD Reichelt
C3 220y RAD 220/25 Reichelt
C4, C9 100µ (Submini) SM 100/16RAD Reichelt
C5-C8 100n X7R-2,5 100N Reichelt
C12 10n X7R-2,5 10N Reichelt
IC1 ATMEGA168-20 ATMEGA 168-20DIP Reichelt
CSD-Electronics
IC2 7805 TO220H Reichelt
CSD-Electronics
IC3 MAX232 MAX232 CPE Reichelt
CSD-Electronics
IR1 IR Empfänger TSOP1736* Conrad, Reichelt, Pollin, CSD
Siehe Beschreibung!
IR2 IR Sendediode  z.B.CQY 99
oder  SFH 409
Reichelt
P1 Trimmer 5K PT 6-S 5K Reichelt
R1 10k Widerstand Bastelkiste
R2 33 Widerstand Bastelkiste
R3 100 Widerstand Bastelkiste
R4 1k Widerstand Bastelkiste
R5 4,7k Widerstand Bastelkiste
S1 Kurzhubtaster liegend Taster 3305B Reichelt
ST1 LCD Modul 2x16 BEL
+ Buchsenleiste
+ Stiftleiste
LCD 162C LED
BL 1x20G8 2,54
SL 1x36G 2,54
Reichelt
TR1 Transistor-npn BC546B Reichelt
TR2 Transistor-npn (darlington) BC 517 Reichelt
Jumper +5VStiftleiste gewinkelt (optional)SL 1X36W 2,54Reichelt
JumperJumper (optional)Jumper 2,54 RTReichelt
GehäuseKunstoffgehäuse schwarz 85x50x29mm521981Conrad

* IR-Empfänger:
Der angegebene TSOP1736 ist schon seit einiger Zeit abgekündigt und mittlerweile nur noch schwer zu erhalten, eventuell bekommt man noch einen TSOP1738, der ideal für 38KHz IR Frequenzen abgestimmt ist und auch mit 36KHz funktionieren sollte. Besser gleich auf den Nachfolgetyp wechseln, der ist etwas kleiner in der Bauform und leider nicht pinkompatibel. Es gibt z.B. den Typ SFH5110-36, oder bei Pollin -38 Der ist sehr schmalbandig, was bedeutet, das Signale von 40KHz mit dem -36 bei mir schon nicht mehr sicher erkannt wurden.
Je nach bevorzugten Protokollen hat man hier also die Qual der Wahl... Kaseikyo mit 56KHz konnte ich noch nicht testen, Feedback hierzu ist erwünscht

Die beste Auswahl hierzu hat wohl www.darisus.de, dort findet man verschiedene TSOP Versionen für 33, 36, 38, 40 und auch 56KHz.
(für z.B. Kaseikyo). Außerdem gibt es dort auch noch (April 2010) den TSOP7000 für 455KHz (B&O Protokoll), der ist allerdings schon abgekündigt und ansonsten schwer zu beschaffen.

Da der TSOP leider etws größer ist als der SFH5110, musste ich den mit etwas "Gewalt" in den IR-LCD einbauen, damit das Gehäuse weiter nutzbar bleibt, aus diesem Grund ist die Platine so ausgeführt, das der Platz für den TSOP ausgesägt werden kann.


Download:

Hardware:
Eagle Dateien: ir-lcd-v1p-eagle.zip  
Schaltplan und Layout nur zur privaten Verwendung. Gewerbliche Nutzung nur mit meiner Zustimmung.

Software:
Bootloader passend für IR-LCD (38400 8N1): bootloaderm168.zip
IR-LCD Software V1.0 (38400 8N1): ir-lcd-v1.zip


Links:

Beschreibung IRMP (Frank Mayer) : http://www.mikrocontroller.net/articles/IRMP
Beschreibung IRSND (Frank Mayer) : http://www.mikrocontroller.net/articles/IRMP#Download_IRSND
Diskussionsforum zu IRMP/IRSND auf microcontroller.net :  http://www.mikrocontroller.net/topic/162119

Bootloader: AVR109: Using Self Programming on tinyAVR and megaAVR devices Software: AVR109.zip

LCD Library von Peter Fleury (original): http://homepage.hispeed.ch/peterfleury/avr-software.html

WinAVR Software (C-Compiler): http://sourceforge.net/projects/winavr/

aktuelle Eagle Layout Software: www.cadsoft.de

Letzte Änderung: 04.05.2010

Diese Seite ist Teil eines Framesets. Kein Inhalsverzeichnis? Mit Home gelangen Sie zum Index.

Hitmaster.de - 
Kostenlose Counter und Statistik