I2C Display Library ?

Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
etstudent123
Junior Member
**

Beiträge: 25
Registriert seit: Jan 2016
Bewertung: 0
#1
17.01.2016, 18:45

Hallo Leute…

Ich wollte mal nachfragen ob irgendjemand eine I2C Library besitzt. Was ich machen will, ganz einfach, ich möchte ein I2C Display ansteuern. Leider find ich nur die Library von Peter Fleury oder eine Arduino Lib.

Wär echt cool wenn mir wer helfen könnte ?
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 726
Registriert seit: Apr 2014
Bewertung: 5
#2
17.01.2016, 18:50

Also nicht für Arduino, sondern für C?

Die Lib von Peter Fleury ist doch eine I2C Lib, oder? Ich habe auch schon mal mit der Lib gearbeitet. Das ist aber sicher ca 2-3 Jahre her.

Vielleicht ist der folgende Link ja interessant für Dich: http://www.procyonengineering.com/embedded/avr/avrlib/

Und wenn nicht, dann vielleicht https://www.google.de/webhp?sourceid=chr...%20library
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
(Dieser Beitrag wurde zuletzt bearbeitet: 17.01.2016, 19:39 von Unilein.)
Zitieren
etstudent123
Junior Member
**

Beiträge: 25
Registriert seit: Jan 2016
Bewertung: 0
#3
17.01.2016, 20:12

Leider nicht die Lib vom fleury funktioniert nur über den 4pin Mode …

Vielleicht irre ich mich auch
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 726
Registriert seit: Apr 2014
Bewertung: 5
#4
18.01.2016, 13:42

Hast Du dir das zufällig schon einmal angesehen:

http://homepage.hispeed.ch/peterfleury/a...tware.html

Gruß
Uni
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Zitieren
tesacrep
Administrator
*******

Beiträge: 500
Registriert seit: Dec 2013
Bewertung: 2
#5
18.01.2016, 22:47

Was für ein Display soll es denn sein?

[Bild: attachment.php?aid=153]
So eines? Oder 4 Zeilig?
Zitieren
etstudent123
Junior Member
**

Beiträge: 25
Registriert seit: Jan 2016
Bewertung: 0
#6
19.01.2016, 01:15

Ja ein 16x02
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 726
Registriert seit: Apr 2014
Bewertung: 5
#7
23.01.2016, 19:18

Und? Wie schaut's aus?
Hast Du schon Fortschritte erzielt?
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Zitieren
etstudent123
Junior Member
**

Beiträge: 25
Registriert seit: Jan 2016
Bewertung: 0
#8
23.01.2016, 20:45

Nein leider noch nicht Sad ich schau mir ein paar libraries an und komm nicht weiter.

Jedoch hab ich in Erfahrungen bringen können das ich die normale LCD-Libary nutzen kann, aber ich hab einen I2C Portexpander den ich vorher ansteuern kann. Ich hab auf Mikrocontroller.net einen Beispielcode gefunden aber den leider noch nicht zum laufen bekommen.

Hab leider nicht so viel Zeit wegen der Uni :/ Aber ich muss mir den Code in ruhe anschauen. Teilweiße hab ich auch das Problem die include Dateien nicht so richtig wollen… ich hab dann immer die Fehler das mit der Compiler sagt das er lcd_init(); nicht kennt. Wenn ich dazu komme versuch ich die Fehlermeldung zu kopieren.

Den Beispielcode von Mikrocontroller.net verlink ich hier mal. https://www.mikrocontroller.net/articles...er_PCF8574
Zitieren
etstudent123
Junior Member
**

Beiträge: 25
Registriert seit: Jan 2016
Bewertung: 0
#9
21.02.2016, 02:40

Hallo Freunde Smile

Ich habe mich jetzt eine Stunde hingesetzt und wollte einfach einen Arduino C Code finden mit dem ich mein Display betreiben kann …

Habe dadurch auch ein Paar Libs ausprobiert doch die haben mit nicht geholfen. Mittlerweile habe ich den passenden Code gefunden
Code:
#include <Wire.h>  // Comes with Arduino IDE
// Get the LCD I2C Library here:
// https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads
// Move any other LCD libraries to another folder or delete them
// See Library "Docs" folder for possible commands etc.
#include <LiquidCrystal_I2C.h>

/*-----( Declare Constants )-----*/
/*-----( Declare objects )-----*/
// set the LCD address to 0x27 for a 16 chars 2 line display
// A FEW use address 0x3F
// Set the pins on the I2C chip used for LCD connections:
//                    addr, en,rw,rs,d4,d5,d6,d7,bl,blpol
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  // Set the LCD I2C address

/*-----( Declare Variables )-----*/
//NONE

void setup()   /*----( SETUP: RUNS ONCE )----*/
{
  Serial.begin(9600);  // Used to type in characters

  lcd.begin(16,2);   // initialize the lcd for 16 chars 2 lines, turn on backlight

// ------- Quick 3 blinks of backlight  -------------
/* for(int i = 0; i< 1; i++)
  {
    lcd.backlight();
    delay(250);
    lcd.noBacklight();
    delay(250);
  }
  lcd.backlight(); // finish with backlight on  
*/
//-------- Write characters on the display ------------------
// NOTE: Cursor Position: (CHAR, LINE) start at 0  
  lcd.setCursor(0,0); //Start at character 4 on line 0
  lcd.print("Hello, world!");
  delay(1000);
  lcd.setCursor(0,1);
  lcd.print("HI!YourDuino.com");
  delay(8000);  

// Wait and then tell user they can start the Serial Monitor and type in characters to
// Display. (Set Serial Monitor option to "No Line Ending")
  lcd.clear();
  lcd.setCursor(0,0); //Start at character 0 on line 0
  lcd.print("Use Serial Mon");
  lcd.setCursor(0,1);
  lcd.print("Type to display");  


}/*--(end setup )---*/


void loop()   /*----( LOOP: RUNS CONSTANTLY )----*/
{
  {
    // when characters arrive over the serial port...
    if (Serial.available()) {
      // wait a bit for the entire message to arrive
      delay(100);
      // clear the screen
      lcd.clear();
      // read all the available characters
      while (Serial.available() > 0) {
        // display each character to the LCD
        lcd.write(Serial.read());
      }
    }
  }

}/* --(end main loop )-- */


/* ( THE END ) */


Kleine Info nebenbei als ich den Code von der irgendeiner Lib benutzt habe blinkte mein Display komisch …

Und ich wollte fragen wieso ich " Serial.begin(9600);" brauche damit das Display funktioniert ich benutze doch I2C. Wär super wenn ihr mir weiter helfen könntet ^^

**Edit

Ich hab jetzt doch noch eine schöne Fehlermeldung bekommen… 

Code:
Arduino: 1.6.7 (Mac OS X), Board: "Arduino Nano, ATmega328"

/Users/andreaskuk/Documents/Arduino/sketch_feb21a/funktioniert LCD.ino:14:22: error: redefinition of 'LiquidCrystal_I2C lcd'
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  // Set the LCD I2C address
                      ^
sketch_feb21a:14: error: 'LiquidCrystal_I2C lcd' previously declared here
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  // Set the LCD I2C address
                   ^
/Users/andreaskuk/Documents/Arduino/sketch_feb21a/funktioniert LCD.ino: In function 'void setup()':
/Users/andreaskuk/Documents/Arduino/sketch_feb21a/funktioniert LCD.ino:19:6: error: redefinition of 'void setup()'
void setup()   /*----( SETUP: RUNS ONCE )----*/
      ^
sketch_feb21a:19: error: 'void setup()' previously defined here
void setup()   /*----( SETUP: RUNS ONCE )----*/
      ^
/Users/andreaskuk/Documents/Arduino/sketch_feb21a/funktioniert LCD.ino: In function 'void loop()':
/Users/andreaskuk/Documents/Arduino/sketch_feb21a/funktioniert LCD.ino:56:6: error: redefinition of 'void loop()'
void loop()   /*----( LOOP: RUNS CONSTANTLY )----*/
      ^
sketch_feb21a:56: error: 'void loop()' previously defined here
void loop()   /*----( LOOP: RUNS CONSTANTLY )----*/
      ^
exit status 1
'LiquidCrystal_I2C lcd' previously declared here

  Dieser Report hätte mehr Informationen mit
  "Ausführliche Ausgabe während der Kompilierung"
  aktiviert in Datei > Einstellungen.

Was kann ich dagegen tun ?

**EDIT #2

Bin gerade drauf gekommen das das Arduino Studio 1.6.7 etwas hat aber mit dem 1.6.5r3 geht es… ich bin nicht wirklich begeistert von der Arduino IDE ?
Zitieren
Unilein
Fachgebiet Rauchentwicklung
*******

Beiträge: 726
Registriert seit: Apr 2014
Bewertung: 5
#10
21.02.2016, 13:14

Moin etstudent,

also....

Ich habe mir jetzt nicht den gesamten Code angesehen sondern nur das "Serial.begin"-Ding. Das dient lediglich dazu, dass Du über die Serielle Schnittstelle (USB) des Arduino etwas ein- oder ausgeben kannst. In diesem Fall scheint es sich um Eingaben zu handeln (Steht als Kommentar hinter Serial.begin() )

Ich bin auch kein Fan der Arduino-IDE. Das Teil ist irgendwie unkomfortabel. Das AVR-Studio bietet die Möglichkeit, die Arduino-IDE einzubetten. Dann lässt es sich ordentlich arbeiten.

Allerdings habe ich es bislang noch nicht hinbekommen, die neue Arduino-IDE in die neue Version des AVR-Studio (7.0) einzubetten.

Gruß
Uni[/quote]
-----

Klopapier beidseitig verwenden und der Erfolg liegt auf der Hand!
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste