Pages: [1] 2   Go Down
Author Topic: Collegamento Display  (Read 2102 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 1
Posts: 18
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Un saluti a tutti ragazzi,  qualcuno mi può aiutare a collegare questo display (LCD03-16x2-B Display seriale/I2C 16x2 sfondo bluad) ad arduino uno.
Grazie
Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 115
Posts: 7265
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Se ne sta discutendo in un altro topic.
Comunque... essendo I2C lo devi collegare all'Arduino ai corrispondenti pin SDA e SCL ovvero i pin A4 e A5 oppure nella UNO R3 nei pin aggiuntivi presenti dopo il pin 13.
Poi naturalmente devi collegare GND e 5V.
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Newbie
*
Karma: 1
Posts: 18
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sicuramente il collegamento e pin SDA e SCL del (diplay) Ovvero i pin A4 e A5 e questo. ma la libreria ?
Grazie
Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 115
Posts: 7265
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

--> http://arduino.cc/forum/index.php/topic,137577.msg1034382.html#msg1034382
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Newbie
*
Karma: 1
Posts: 18
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

scusa paolop quando scrivi dalla UNO R3 (e quella che e in mio possesso) i pin aggiuntivi sono dopo il pin 13 sono il gnd e il pin aref
giuso?
Logged

Offline Offline
Newbie
*
Karma: 1
Posts: 18
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

trovati i pin , sono dopo il pin aref quindi sono il pin 16 SDA  e 17 SCL , facci delle prove
Grazie 
Logged

Quartu Sant'Elena, Sardinia, Italy
Offline Offline
Jr. Member
**
Karma: 1
Posts: 89
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

anch'io ho la uno rev3, significa quindi che quei pin possono essere utilizziati ogni volta che si necessita di una connessione i2c anche per progetti differenti da questo?
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 336
Posts: 23142
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

anch'io ho la uno rev3, significa quindi che quei pin possono essere utilizziati ogni volta che si necessita di una connessione i2c anche per progetti differenti da questo?
I pin dell'I2C puoi usarli per tutte le comunicazioni con periferiche I2C, non solo dispay.
PS: i pin SDA e SCL sono un rimando dei pin A4 e A5, su cui l'Atmega328 ha mappato il bus I2C.
Logged


Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 115
Posts: 7265
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

trovati i pin , sono dopo il pin aref quindi sono il pin 16 SDA  e 17 SCL , facci delle prove
Grazie 

Per essere esatti sono i pin 18 e 19.
Sono mappati nel file pins_arduino.h, nella variante standard del core di Arduino:
Code:
static const uint8_t SDA = 18;
static const uint8_t SCL = 19;
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Newbie
*
Karma: 1
Posts: 18
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ok il collegamento lo fatto mettendo resistenze di pull-up da 1KOhm sui collegamenti I2C.
il display quando lo collego al computer via usb si illumina  un secondo si spegne e rimane una scritta SERIALMODE
quale libreria devo scaricare per farlo funzionare.
Grazie per la pazienza. 
Logged

Tuscany
Offline Offline
Edison Member
*
Karma: 80
Posts: 2176
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ma non c'e' un jumper, sulla schedina.
per scegliere serial mode / i2c mode
Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 115
Posts: 7265
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

quale libreria devo scaricare per farlo funzionare.

Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

0
Offline Offline
Faraday Member
**
Karma: 49
Posts: 6019
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

2 cose.
1 metti il link del tuo display, cosi' controlliamo meglio
2 in firma ho una libreria che potrebbe interessarti
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 115
Posts: 7265
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Fai una foto del retro del display e postala.
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Newbie
*
Karma: 1
Posts: 18
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Link - http://www.robot-italy.com/it/display-led/serial-lcd-glcd.html . Codice 785003
Ok ragazzi il collegamento hardware va bene il display con questo file ( CustomChars)   si accende la retro illuminazione il problema e che scrive tutte cose strane. invece di scrivere sul display Hello world.
o provato con altri file ma nulla .

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

uint8_t bell[8]  = {0x4,0xe,0xe,0xe,0x1f,0x0,0x4};
uint8_t note[8]  = {0x2,0x3,0x2,0xe,0x1e,0xc,0x0};
uint8_t clock[8] = {0x0,0xe,0x15,0x17,0x11,0xe,0x0};
uint8_t heart[8] = {0x0,0xa,0x1f,0x1f,0xe,0x4,0x0};
uint8_t duck[8]  = {0x0,0xc,0x1d,0xf,0xf,0x6,0x0};
uint8_t check[8] = {0x0,0x1,0x3,0x16,0x1c,0x8,0x0};
uint8_t cross[8] = {0x0,0x1b,0xe,0x4,0xe,0x1b,0x0};
uint8_t retarrow[8] = {   0x1,0x1,0x5,0x9,0x1f,0x8,0x4};
 
LiquidCrystal_I2C lcd(0x20,16,2);  // set the LCD address to 0x20 for a 16 chars and 2 line display

void setup()
{
  lcd.init();                      // initialize the lcd
  lcd.backlight();
 
  lcd.createChar(0, bell);
  lcd.createChar(1, note);
  lcd.createChar(2, clock);
  lcd.createChar(3, heart);
  lcd.createChar(4, duck);
  lcd.createChar(5, check);
  lcd.createChar(6, cross);
  lcd.createChar(7, retarrow);
  lcd.home();
 
  lcd.print("Hello world...");
  lcd.setCursor(0, 1);
  lcd.print(" i ");
  lcd.write(3);
  lcd.print(" arduinos!");
  delay(5000);
  displayKeyCodes();
 
}

// display all keycodes
void displayKeyCodes(void) {
  uint8_t i = 0;
  while (1) {
    lcd.clear();
    lcd.print("Codes 0x"); lcd.print(i, HEX);
    lcd.print("-0x"); lcd.print(i+16, HEX);
    lcd.setCursor(0, 1);
    for (int j=0; j<16; j++) {
      lcd.write(i+j);
    }
    i+=16;
   
    delay(4000);
  }
}

void loop()
{

}

Saluti e auguri di Buon Natale .
Logged

Pages: [1] 2   Go Up
Jump to: