IR Signal Senden JvC

Hallo allerseits,

Ich bin ziemlich neu hier und habe anfangs problem. Bitte nicht direkt auslachen :D! Ich habe mir die ,,IRLib-maste" Libary heruntergeladen um dannt mit dem Beipiel IRsendJVC eine JVC Verbedienung zu erstellen.

Ich will eigentlich nur einen einfachen code schreiben der

z.B. wenn pin 6 HIGH ist, dass er dann signal 0Xxyxyxyxy über die IR Led sendet jedoch habe ich folgendes Problem.

Sobald ich versuche nur das Beispiel auf meinen Arduio Nano zu laden kommt der fehler:

C:\Users\Jaguar\Documents\Arduino\libraries\IRLib-master\IRLib.cpp: In function 'unsigned char Pin_from_Intr(unsigned char)':

C:\Users\Jaguar\Documents\Arduino\libraries\IRLib-master\IRLib.cpp:927:45: warning: 'progmem' attribute ignored [-Wattributes]

const unsigned char PROGMEM attach_to_pin[]= {

^

Der Sketch verwendet 6.030 Bytes (19%) des Programmspeicherplatzes. Das Maximum sind 30.720 Bytes. Globale Variablen verwenden 564 Bytes (27%) des dynamischen Speichers, 1.484 Bytes für lokale Variablen verbleiben. Das Maximum sind 2.048 Bytes.

Ich komme einfach nicht weiter bitte um eure Hilfe.

Benenne deinen LibraryOrdner so, wie auch die Library heißt. Und um weitere Fehler zu finden, brauchen wir deinen Sketch. Poste den bitte in Code-Tags.

Sehr schön. Jetzt sollen wir anhand der Fehlermeldungen den Sketch erraten? Grüße Uwe

warning Heisst Warnung und kann bedeuten, dass einer beim Erstellen der Library geschlampt hat, und /oder dass das bei früheren Versionen gar nicht angemeckert wurde. Kann sein dass du es ignorieren kannst.

Kannst auch am Datum deiner Library raten, mit welcher Arduino Version das evtl. mal lief und diese nehmen.

Und richtig, tradiditionell wird der Name “IRLib-master” in IRLib geändert beim Installieren. Schau mal, ob du Installationshinweise findest …

Du solltest auch prüfen, ob deine Library geeignet ist, den JVC-Code zu erzeugen. Solltedas nicht der Fall sein, nimm diese hier: https://github.com/z3t0/Arduino-IRremote Die kann den Code def. erzeugen.

hier erstmal der sketch

http://www.file-upload.net/download-11462906/NeueBitmap.bmp.html

@HotSystems

den ordner bei dokumenten ?

da wo die libary drin gespeichert ist ?

perser:
hier erstmal der sketch

http://www.file-upload.net/download-11462906/NeueBitmap.bmp.html

Poste den Sketch bitte direkt hier im Forum, ich kann im Tablet nicht downloaden.
Und verwende Code-Tags (Schaltfläche </>) links im Forumdialog.

@HotSystems

den ordner bei dokumenten ?

da wo die libary drin gespeichert ist ?

Ja, den Ordner wo die Library abgelegt ist.

/* Example program for from IRLib – an Arduino library for infrared encoding and decoding
* Version 1.3   January 2014
* Copyright 2014 by Chris Young http://cyborg5.com
* Based on original example sketch for IRremote library 
* Version 0.11 September, 2009
* Copyright 2009 Ken Shirriff
* http://www.righto.com/
*/
/*
* JVC sends repeat codes that are identical to the regular JVC codes
* however they have no header. Therefore there is an additional parameter
* that tells you whether or not to send as an original code or as a repeat.
*
* The only device I had to test this protocol was an old JVC VCR. It would only work if at least
* 2 frames are sent separated by 45us of "space". All JVC is the same bit length so we use
* the third parameter as a flag to tell it whether or not to send the header.
* Send once with the third parameter "1" then delay about 50 microseconds and send again
* with the third parameter "0".
*/

#include <IRLib.h>

IRsend My_Sender;

void setup()
{
 Serial.begin(9600);
}

//send a code every time a character is received from the serial port
void loop() {
 if (Serial.read() != -1) {
   My_Sender.send(JVC,0xc2d0,1);   delayMicroseconds (50);
   My_Sender.send(JVC,0xc2d0,0);   delayMicroseconds (50);
 }
}

hi,

C:\Users\Jaguar\Documents\Arduino\libraries\IRLib-master\IRLib.cpp: In function 'unsigned char

die library und der ordner, in dem sie ist, müssen den gleichen namen haben. also den ordner umbenennen in IRLib.

warum da meistens master- drangehängt ist, wußte nur der alte, weißhaarige mann, der auch die bluescreens von windows lesen konnte.

willkommen und grüße, stefan

@perser Mich würde noch interessieren, mit welcher IDE-Version du arbeitest.

Ich habe den Beispielsketch bei mir kompiliert und dem war doch egal, wie der Ordner heißt.

Ich vermute deine IDE ist älter oder die Version 1.6.6.

HotSystems: @perser Mich würde noch interessieren, mit welcher IDE-Version du arbeitest.

Ich habe den Beispielsketch bei mir kompiliert und dem war doch egal, wie der Ordner heißt.

Ich vermute deine IDE ist älter oder die Version 1.6.6.

sorrry bin wirklich ein neuling was ist die IDE und woher finde ich die raus ?

IDE steht für Integrated Development Environment und das ist wirklich ein seltsamer Name für die Arduino Software, die du auf deinem PC hast um damit Arduino Sketche zu erzeugen.

Danke, dass du uns drauf aufmerksam machst. ;)

perser: sorrry bin wirklich ein neuling was ist die IDE und woher finde ich die raus ?

Wenn du das Programm öffnest, mit dem du die Sketche schreibst, steht die Version in der obersten Zeile (Kopfzeile) des Programms.

ich bin momentan grade sehr stolz auf das forum...

Eisebaer: ich bin momentan grade sehr stolz auf das forum...

Das würde ich jetzt gern vom TO lesen. ;);)

ich habe jetzt den ordner libary in IRLib umbenannt und jetzt zeigt er mir garkeien beispiele mehr an

also irgendwie gehts damit nicht ich habe dann versucht über das arduino ui unter sketch oben in der leisten auf bibliothek einbinden mit zip eingebunden und dann hatte ich wieder die beispiele drin aber wieder der gleiche fehler :(

HotSystems:
Wenn du das Programm öffnest, mit dem du die Sketche schreibst, steht die Version in der obersten Zeile (Kopfzeile) des Programms.

ich habe die IDE 1,6,8

und Nutze einen Arduino Nano ATmega 328

Ist mein code sonst im Grund richtig hier der ,FERTIGE" code

#include <IRLib.h>

IRsend My_Sender;
const int LauterPin = 6; 
const int LeiserPin = 7; 
const int WeiterPin = 8; 
const int ZurueckPin = 9; 

int LauterState = 0; 
int LeiserState = 0; 
int WeiterState = 0; 
int ZurueckState = 0;

void setup()
{
 Serial.begin(9600);
 pinMode(LauterPin, INPUT);
 pinMode(LeiserPin, INPUT);
 pinMode(WeiterPin, INPUT);
 pinMode(ZurueckPin, INPUT);
}

//send a code every time a character is received from the serial port
void loop() {
  LauterState = digitalRead(LauterPin);
 if (LauterPin == HIGH) {
   My_Sender.send(JVC,0xc2d0,1);   delayMicroseconds (50);
   My_Sender.send(JVC,0xc2d0,0);   delayMicroseconds (50);
 }
  LeiserState = digitalRead(LeiserPin);
  if (LeiserPin == HIGH) {
   My_Sender.send(JVC,0xc2d0,1);   delayMicroseconds (50);
   My_Sender.send(JVC,0xc2d0,0);   delayMicroseconds (50);
 }
  WeiterState = digitalRead(WeiterPin);
  if (WeiterPin == HIGH) {
   My_Sender.send(JVC,0xc2d0,1);   delayMicroseconds (50);
   My_Sender.send(JVC,0xc2d0,0);   delayMicroseconds (50);
 }
 ZurueckState = digitalRead(ZurueckPin);
  if (ZurueckPin == HIGH) {
   My_Sender.send(JVC,0xc2d0,1);   delayMicroseconds (50);
   My_Sender.send(JVC,0xc2d0,0);   delayMicroseconds (50);
 }
 
}

perser: ich habe jetzt den ordner libary in IRLib umbenannt und jetzt zeigt er mir garkeien beispiele mehr an

Nicht den Hauptordner aller Libraries !

Sondern den Ordner, in dem die "IRLib"-Library drin liegt. Der Ordner muss heißen: IRLib.

Ich glaube du musst dich mal mit den Grundlagen der IDE und Arduino befassen.

Library einbinden Anleitung

Und es gibt noch tausend weitere Seiten die darüber berichten.

perser: Ist mein code sonst im Grund richtig hier der ,,FERTIGE" code

Nein, so funktioniert es nicht. Wenn du den Schaltzustand an eine Variable übergibst, musst du die Variable auch in der if-Anweisung abfragen.

LauterState = digitalRead(LauterPin);
   if (LauterState == HIGH) {

Und das bei allen if-Anweisungen. Die folgenden Anweisungen besser mit "else if" beginnen.