Hi!
I have a REALLY strange problem:
NEW INFO: I use an Arduino Uno R3
I made a makeshift-arduino-shield from a prototype-board that connects to a serial LCD using a 2x5-crimp-on-header on a ribbon-cable. I used the following pin-connections:
Arduino LCD
12 RS
11 Enable
5 D4
4 D5
3 D6
2 D7
I initalized the display using
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
and everything worked perfect!
Then I wanted to write a programm that uses external Interrupts, so I needed the arduino-pins 2 and 3, so I made a new shield with the following wiring:
Arduino LCD
0 RS
1 Enable
4 D4
5 D5
6 D6
7 D7
I initialize the display using
LiquidCrystal lcd(0, 1, 4, 5, 6, 7);
The new wiring is not double-, not triple- but quadruplechecked - everything is correct!
Still - I have nothing on my display...contrast-setting is the same.
In this simple code I can change the commented LiquidCrystal-Line and use the old shield - and everything works. But using the new shield with the corresponding LiquidCrystal-Line, no Display!
// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(0, 1, 4, 5, 6, 7);
// LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
//LiquidCrystal(rs, enable, d4(11), d5(12), d6(13), d7 (14))
void setup(){
// set up the LCD's number of columns and rows:
lcd.begin(20, 4);
// set up Serial Connection
Serial.begin(9600);
};
void loop()
{
// initialize LCD
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Speed:");
lcd.setCursor(0,1);
lcd.print("Avg:");
lcd.setCursor(20,0);
lcd.print("Way:");
lcd.setCursor(20,1);
lcd.print("Max-Spd.:");
};
I have no idea why it doesn't work...the only thing I can think of is the fact that pin 0 and 1 are labelled as RX and TX as well...could it be that I can't use these pins for the display or only use them under special circumstances?
I'm completely clueless...