Arduino Nano og I2C display module (Læst 12373x)

Offline Danni-Hansen

  • µProcessoren
  • *
  • Indlæg: 544
  • Antal brugbare Indlæg: 17
    • Vis profil
Arduino Nano og I2C display module
« Dato: Juni 18, 2014, 01:24:17 »
Hej folkens.

Sidder med et display ( http://www.dfrobot.com/wiki/index.php/I2C/TWI_LCD1602_Module_%28SKU:_TOY0046%29 ) som bliver ved med at blinke, det blinker sjovt nok hvert 5sek.

Jeg bruger Arduino Nano til displayet, men, det burde da ikke gøre en forskel?
Tilkoblet 3 DS20B18 (Den del virker fint).

Spørgsmålet er, hvad problemet kan være? Den blinker som sagt hver 5 sek, og det er hver gang koden 'opfriskes' eller rettere sagt, det er der delay(5000) ender.

Skal jeg hen og have et nyt display? Har jeg brændt noget af?

Jeg bruger SDA og SCL på arduino nano, og det er sat rigtigt op iflg. Nettet, dog bruger jeg pin A4 og A5 og ikke de 'normale' pins.
Mvh. Danni Hansen.

 

Offline Jakobsen

  • Højpas filter
  • *****
  • Indlæg: 302
  • Antal brugbare Indlæg: 45
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #1 Dato: Juni 18, 2014, 09:42:23 »
Hej Danni

Nu har du jo ikke postet din kode, og jeg har kun brugt de "almindelige" paralle lcd display og slet ikke med Arduino.

Lyder som om du intialiser display hver gang du skriver til det.
Det er der kun brug for ved power up.
Når du skriver til det så brug home eller set cursor.

Vh. Jakobsen

 

Offline Danni-Hansen

  • µProcessoren
  • *
  • Indlæg: 544
  • Antal brugbare Indlæg: 17
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #2 Dato: Juni 23, 2014, 14:13:16 »
Hej Jakobsen og undskylde det sene svar.

Jeg bruger deres lib og deres 'standart kode' i arduino til at køre LCD'et.

Mere om det her:
http://arduino-info.wikispaces.com/LCD-Blue-I2C

Forstår bare ikke at det ikke virker på mine nano, men, er også lidt i tvivl hvilke pins der er SDA og SCL.. Da jeg får 2 forskellige svar fra google af.

Her er det D4 og D5:
http://2.bp.blogspot.com/-_M5HsO7r1dM/UGqw8xi2zUI/AAAAAAAAR5c/O-Q5qzO1mJQ/s1600/arduino+pinout.png

Men her er det A4 og A5 (Såvidt forstået):
http://arduino.cc/en/Main/arduinoBoardNano

Og har prøvet begge muligheder :/
Mvh. Danni Hansen.

 

Offline Jakobsen

  • Højpas filter
  • *****
  • Indlæg: 302
  • Antal brugbare Indlæg: 45
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #3 Dato: Juni 23, 2014, 17:26:19 »
Hej Danni

Hvis displayet skriver det du forventer så skulle man tro at SDA og SCL er korrekt forbundet, gør det det?

Når displayet blinker hvert 5 sekund = med den timer du beskriver du har så må der jo være noget kode der forsager dette.

Kan du ikke poste din code?

 

Offline Danni-Hansen

  • µProcessoren
  • *
  • Indlæg: 544
  • Antal brugbare Indlæg: 17
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #4 Dato: Juni 24, 2014, 00:38:09 »
Jeg har modificeret den efter..

Kode:
#include <Wire.h>
#include <OneWire.h>
#include <LiquidCrystal_I2C.h>
#include <DallasTemperature.h>

/*-----( Declare Constants )-----*/
#define ONE_WIRE_BUS 2 /*-(Connect to Pin 2 )-*/

/*-----( Declare objects )-----*/
/* Set up a oneWire instance to communicate with any OneWire device*/
OneWire ourWire(ONE_WIRE_BUS);

/* Tell Dallas Temperature Library to use oneWire Library */
DallasTemperature sensors(&ourWire);

/*-----( Declare Variables )-----*/
LiquidCrystal_I2C lcd(0x27,16,2);

void setup() /*----( SETUP: RUNS ONCE )----*/
{
 
Wire.begin();
  lcd.init();                      // initialize the lcd
  lcd.backlight();


/*-(start serial port to see results )-*/
delay(1000);
Serial.begin(9600);
Serial.println("Temperature Sensor DS18B20");
delay(1000);

/*-( Start up the DallasTemperature library )-*/
sensors.begin();
}/*--(end setup )---*/


void loop() /*----( LOOP: RUNS CONSTANTLY )----*/
{
sensors.requestTemperatures(); // Send the command to get temperatures



//read dev.1
Serial.print("Device 1 (index 0) = ");
Serial.print(sensors.getTempCByIndex(0));
Serial.println(" Degrees C");

lcd.print("Dev 1:");
lcd.print(sensors.getTempCByIndex(0));
lcd.print(" Degrees C");
delay(5000);




//read dev.2
Serial.print("Device 2 (index 1) = ");
Serial.print(sensors.getTempCByIndex(1));
Serial.println(" Degrees C");

lcd.print("Dev 2:");
lcd.print(sensors.getTempCByIndex(1));
lcd.print(" Degrees C");
delay(5000);




//read dev.3
Serial.print("Device 3 (index 2) = ");
Serial.print(sensors.getTempCByIndex(2));
Serial.println(" Degrees C");

lcd.print("Dev 3:");
lcd.print(sensors.getTempCByIndex(2));
lcd.print(" Degrees C");
delay(5000);

}
Mvh. Danni Hansen.

 

Offline Jakobsen

  • Højpas filter
  • *****
  • Indlæg: 302
  • Antal brugbare Indlæg: 45
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #5 Dato: Juni 24, 2014, 09:34:12 »
Hej
Her lige et par forslag
Dit display er 2 linier med 16 karakterer

I dit loop har du 3 x
lcd.print("Dev 3:");
lcd.print(sensors.getTempCByIndex(2));
lcd.print(" Degrees C");
delay(5000);

Hvad er det der sender cursoren tilbage på 0,0 ?
Prøv at have 3 x
lcd.home();
lcd.print("Dev 3:");
lcd.print(sensors.getTempCByIndex(2));
lcd.print(" Degrees C");
delay(5000);

Hvis det stadig blinker så prøve evt. droppe temperaturmålingen kun skriv i displayet og se om det så stopper med at blinke... her udelukker du at onewire/dallas kaldene laver problemet

 

Offline Danni-Hansen

  • µProcessoren
  • *
  • Indlæg: 544
  • Antal brugbare Indlæg: 17
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #6 Dato: Juni 24, 2014, 16:51:32 »
Hej.

Prøvede lige med 'medfølgende kode', og det virkede heller ikke, uanset hvilket af mine boards jeg brugte.

Det må være røget sig en tur desværre.... :/
Mvh. Danni Hansen.

 

Offline gerd

  • Administrator
  • µProcessoren
  • *****
  • Indlæg: 915
  • Antal brugbare Indlæg: 97
    • Vis profil
    • Hjemmeside med nogle af mine projekter
Sv: Arduino Nano og I2C display module
« Svar #7 Dato: Juni 24, 2014, 18:23:14 »
Hej Danni,

ændre delay(5000) til delay(8000).
Blinker det nu hvert 8 sek?

Og kan du prøve at ændre
LiquidCrystal_I2C lcd(0x27,16,2);
til
LiquidCrystal_I2C lcd(0x20,16,2);
« Senest Redigeret: Juni 24, 2014, 20:09:43 af gerd »

 

Offline Danni-Hansen

  • µProcessoren
  • *
  • Indlæg: 544
  • Antal brugbare Indlæg: 17
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #8 Dato: Juni 24, 2014, 20:33:30 »
Hej Gerd.

Ja, det vil blinke hvert 8 sek, for har testet det af et par gange før.
Udover det, så køre den på 0x27 siger scanner programmet jeg har hentet til at 'finde' skærmen.
Mvh. Danni Hansen.

 

Offline Jakobsen

  • Højpas filter
  • *****
  • Indlæg: 302
  • Antal brugbare Indlæg: 45
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #9 Dato: Juni 24, 2014, 22:04:55 »
Prøv i loop

void loop() /*----( LOOP: RUNS CONSTANTLY )----*/
{
lcd.home();
lcd.print("1234:");
delay(3000);

lcd.home();
lcd.print("ABCD:");
delay(3000);

}
Skifter den nu rent mellem 1234 og ABCD hvert 3 sec?
Eller bliver displayet "tomt" inden den skriver den nye tekst?

Alternativt


void loop() /*----( LOOP: RUNS CONSTANTLY )----*/
{
lcd.setCursor(0,0); //Start at character 0 on line 0
lcd.print("1234:");
delay(3000);

lcd.setCursor(0,0); //Start at character 0 on line 0
lcd.print("ABCD:");
delay(3000);

}

 

Offline bws

  • Lavpas filter
  • ****
  • Indlæg: 261
  • Antal brugbare Indlæg: 24
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #10 Dato: Juni 26, 2014, 06:53:08 »
hey

er det et LCD display som har I2C eller er der en adapter over LCD displayet. tænker lidt at må være dit lib. der er ikke passer nøjtagtigt til de I2C komandoer dit display skal bruge.

MVH

 

Offline Danni-Hansen

  • µProcessoren
  • *
  • Indlæg: 544
  • Antal brugbare Indlæg: 17
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #11 Dato: Juni 26, 2014, 11:04:31 »
Halløjsa.

Jeg benytter mig af samme hardware og kode som på linket her :)

http://arduino-info.wikispaces.com/LCD-Blue-I2C
Mvh. Danni Hansen.

 

Offline bws

  • Lavpas filter
  • ****
  • Indlæg: 261
  • Antal brugbare Indlæg: 24
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #12 Dato: Juni 26, 2014, 11:42:05 »
hey igen

hvorfor en af de her headers har du downloadet ?

https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads

MVH

 

Offline Danni-Hansen

  • µProcessoren
  • *
  • Indlæg: 544
  • Antal brugbare Indlæg: 17
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #13 Dato: Juni 26, 2014, 14:48:49 »
Hej BWS.

Kan egentligt ikke lige huske det... :/
Har flg info fra readme filen i mappen:
Citér
LiquidCrystal_I2C V2.0

The LiquidCrystal_I2C library is a modified version of the standard LiquidCrystal library as found on
the Arduino website.
This library is intended to be used when a parallel HD44780 compatible LCD is controlled over I2C using
a PCF8574 extender (see datasheet for details).
4 of the 8 outputs are used for LDC data lines 4 to 7.
3 outputs are used for the Enable, register-select and Read/Write lines.
The one output left can be used to control the backlight of the LCD (if available).
For backlight control some extra resistors and a pnp-type transistor are required (for details see
schematic diagram).

The PCF8574 extender is available in two versions, the PCF8574 and the PCF8574A.
The only difference between the two is the I2C base address.
The base address for the PCF8574 is 0x20 and the base address for the PCF8574A is 0x38.
The examples included in this zip file assume the use of an PCF8574 set for address 0x20
(A0, A1 and A3 grounded).

For compatibility reasons this library contains some aliases for functions that are known under different
names in other libraries. This should make it fairly easy to implement the library in existing sketches
without changing to much code.
Functions not supported by this library will return nothing at all and in case a return value is expected
the function will return 0.

Update 8-12-2011:
Due to the relaese of Arduino IDE 1.0 some changes were made to the library to get it working under the new IDE.
Because of these changes this version of the LiquidCrystal_I2C library can not be used for older IDE versions.
The old version of the LiquidCrystal_I2Clibrary can be downloaded form http://www.xs4all.nl/~hmario/arduino/LiquidCrystal_I2C/V1.0/LiquidCrystal_I2C_V1.0.zip

Download the latest version from: 
http://www.xs4all.nl/~hmario/arduino/LiquidCrystal_I2C/LiquidCrystal_I2C.zip
(Thanks to Ailton F. for beta testing.)


Mario H.
atmega@xs4all.nl
Mvh. Danni Hansen.

 

Offline bws

  • Lavpas filter
  • ****
  • Indlæg: 261
  • Antal brugbare Indlæg: 24
    • Vis profil
Sv: Arduino Nano og I2C display module
« Svar #14 Dato: Juni 27, 2014, 13:24:51 »
hey igen

bare lige for at forstå problemet helt rigtigt så skriver den alt RIGTIGT ud i displayet men så blinker displayets tekst hver gang den skriver nogen nyt ?

MVH