Ich hab ein riesen problem, ich habe einen Sketch der vor IDE 1.0 geschrieben und erstellt wurde :include
#include
#include
LiquidCrystal_I2C lcd(0x27,16,2); //set the LCD address to 0x27 for a 16 chars and 2 line display
void setup()
{
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("b2cqshop");
lcd.setCursor(0, 1);
lcd.print("Voltage: ");
lcd.setCursor(13, 1);
lcd.print("V");
}
void loop()
{
int val;
float temp;
val=analogRead(0);
temp=val/4.092;
val=(int)temp;//
lcd.setCursor(9, 1);
lcd.print(0x30+val/100,BYTE);
lcd.print(0x30+(val%100)/10,BYTE);
lcd.print('.');
lcd.print(0x30+val%10,BYTE);
delay(100);
}
aber ich habe (und möchte) mit IDE 1.0.2 angefangen und das soll auch darauf laufen.
Folgende fehlermeldung kommt dabei heraus wenn ich den sketch testweise compiliere:
sketch_dec07a.ino:1:10: error: #include expects "FILENAME" or
sketch_dec07a.ino:2:10: error: #include expects "FILENAME" or
sketch_dec07a:4: error: 'LiquidCrystal_I2C' does not name a type
sketch_dec07a.ino: In function 'void setup()':
sketch_dec07a:8: error: 'lcd' was not declared in this scope
sketch_dec07a.ino: In function 'void loop()':
sketch_dec07a:24: error: 'lcd' was not declared in this scope
sketch_dec07a:25: error: 'BYTE' was not declared in this scope
Seit Arduino 1.0 wird das Keyword 'BYTE' nicht mehr unterstützt.
Bitte verwenden Sie stattdessen Serial.write().
wie kann ich das umschreiben????? Wie schon in meinem ersten post erwähnt ich bin einsteiger und habe kaum erfahrung mit programmieren.
Hm okay, hab mir jetzt von hier http://arduino-info.wikispaces.com/LCD-Blue-I2C die libraries besorgt, sind etwas neuer wie es scheint.
hab im libraries Ordner (da wo die sketches sind) einen neuen ordner erstellt und da alles hinkopiert/verschoben.
bekomme trotz einbinden (Sketch-> import libraries) nix auf die reihe.
hab grad mal gesehen das der obige sketch nur für ein 16x2 lcd ist, ich habe allerdings ein 4x20 lcd von daher ist das schon tierisch falsch.
also nun hab ich wenigstens schon mal hintergrundbeleuchtung und in der 1ten und 3 zeile weisse kästchen (lcd ist blau weiss).
mit folgendem sketch:
/* YourDuino.com Example Software Sketch
20 character 4 line I2C Display
NEW TYPE Marked "Arduino-IIC-LCD GY-LCD-V1"
/*-----( Import needed libraries )-----*/
#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h> // F Malpartida's NewLiquidCrystal library
//Download: https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads
// Move original LiquidCrystal library elsewhere, copy this in it's place (okay unter mac muss man das nicht auch wenn ich das testweise probiert habe)
/*-----( Declare Constants )-----*/
#define I2C_ADDR 0x20 // Define I2C Address for the PCF8574A
//---(Following are the PCF8574 pin assignments to LCD connections )----
// This are different than earlier/different I2C LCD displays
#define BACKLIGHT_PIN 7
#define En_pin 4
#define Rw_pin 5
#define Rs_pin 6
#define D4_pin 0
#define D5_pin 1
#define D6_pin 2
#define D7_pin 3
#define LED_OFF 0
#define LED_ON 1
/*-----( Declare objects )-----*/
LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin,D4_pin,D5_pin,D6_pin,D7_pin);
void setup() /*----( SETUP: RUNS ONCE )----*/
{
lcd.begin (20,4); // initialize the lcd
// Switch on the backlight
lcd.setBacklightPin(BACKLIGHT_PIN,NEGATIVE);
lcd.setBacklight(LED_ON);
}// END Setup
void loop() /*----( LOOP: RUNS OVER AND OVER AGAIN )----*/
{
// Reset the display
lcd.clear();
delay(1000);
lcd.home();
// Print our characters on the LCD
lcd.backlight(); //Backlight ON if under program control
lcd.setCursor(1,0); //Start at character 3 on line 0
lcd.print("Hello, world!");
delay(1000);
lcd.setCursor(2,1);
lcd.print("From Arduino with Sainsmart");
delay(1000);
lcd.setCursor(0,2);
lcd.print("20 by 4 Line Display");
lcd.setCursor(0,3);
delay(2000);
lcd.print("http://arduino.cc");
delay(8000);
} // END Loop
Hm okay, hab mir jetzt von hier http://arduino-info.wikispaces.com/LCD-Blue-I2C die libraries besorgt, sind etwas neuer wie es scheint.
hab im libraries Ordner (da wo die sketches sind) einen neuen ordner erstellt und da alles hinkopiert/verschoben.
bekomme trotz einbinden (Sketch-> import libraries) nix auf die reihe.
Welches Betriebsystem benutzt Du?
Hast Du den IDE beendet und neu gestartet? Änderungen treten erst beim Starten in kraft.
uwefed:
Als Window-ler kann ich Dir nicht antworten.
Da muß Dir jemand anders weiterhelfen.
Grüße Uwe
nicht ganz richtig, was die software betrifft ist das 1:1 Uwe.
Liegen die Verzeichnisse der Sketche nicht an verschiedenen Orten je nach Betriebssystem?
Geilduino schreibt:
hab im libraries Ordner (da wo die sketches sind) einen neuen ordner erstellt und da alles hinkopiert/verschoben.
Bei Windows sind standartmäßig die Sketche und das libraries-Verzeichnis an 2 verschiedenen Orten;
das libraries-Verzeichnis in C:\Programme\arduino xx\ und die Sketche in C:\Dokumente und Einstellungen\user\Eigene Dateien\Arduino\
na unter windows halt zwei varianten unter mac gibts nur unter /Users/xxx/Dokumente/Arduino/libraries/ <-- da rein.
mehr geht nicht man kann zwar auch in der app mit paketinhalt zeigen rumfummeln aber sollte man tunlichst unterlassen…
es handelt sich ja auch nur um das shield in verbindung mit dem i2c (J204A) LCD (4x20 chars).
ich bekomm da nix auf die reihe selbst mit der neuesten LiquidCrystal_I2C library nicht.
also nun hab ich wenigstens schon mal hintergrundbeleuchtung und in der 1ten und 3 zeile weisse kästchen (lcd ist blau weiss).
mit folgendem sketch:
Das legt ja nahe, das es kein Problem mehr ist, die Lib einzubinden, sondern eher sie zu richtig zu benutzen.
würde ich als anfänger mal nicht verneinen XD. Nur wo zur hölle fang ich da an ich finde ja nicht mal Datasheets für die beiden sachen (Sensorshield V4 sowie für das Display)
Also der I2C Scanner ist der Hammer…
Hab danach 0x3F benutzt und hatte erst das gleiche ergebnis…
dann hab ich mir mal die beiden platinen vorgenommen: et voila… Kalte lötstellen… geflickt… LÄUFT!!!
yihaaa Danke