Interfacing 2x16 Netmedia LCD possible easily???

Hello,

Sorry for that but I'm really new to Arduino.

I'm trying to link a 2x16 Netmedia LCD screen to Arduino. Here is the link if you want to see what kind of LCD screen it is : http://www.robotshop.us/netmedia-2x16-rohs-lcd-blue.html

On the back, I have 5 pins : LED+, Rx, Rx*, 5V, GND

Here is the datasheet : http://www.robotshop.us/PDF/netmedia-rohs-serial-lcd-module-v1.pdf

Do you have an idea on what kind of code I can use with it?

Looks easy to hook up. there are a couple of drawings and the characters you need to send starts on page 5. send serial just like you would to a terminal or debug screen and see what you get (after sending the setup codes mentioned. Have fun.

Hello,

I tried to follow a way through SLCD - Serial LCD library (http://www.arduino.cc/playground/Code/SLCD) and I tried to upload this code to the board :

void setup()
{
  Serial.begin(9600);
  backlightOn();
}

void loop()
{  
  selectLineOne();
  delay(100);
  Serial.print(millis());
  selectLineTwo();
  delay(100);
  Serial.print(millis()/2);
  delay(100);
}

void selectLineOne(){  //puts the cursor at line 0 char 0.
   Serial.print(0xFE, BYTE);   //command flag
   Serial.print(128, BYTE);    //position
}
void selectLineTwo(){  //puts the cursor at line 0 char 0.
   Serial.print(0xFE, BYTE);   //command flag
   Serial.print(192, BYTE);    //position
}
void goTo(int position) { //position = line 1: 0-15, line 2: 16-31, 31+ defaults back to 0
if (position<16){ Serial.print(0xFE, BYTE);   //command flag
              Serial.print((pos+128), BYTE);    //position
}else if (position<32){Serial.print(0xFE, BYTE);   //command flag
              Serial.print((pos+48+128), BYTE);    //position 
} else { goTo(0); }

void clearLCD(){
   Serial.print(0xFE, BYTE);   //command flag
   Serial.print(0x01, BYTE);   //clear command.
}
void backlightOn(){  //turns on the backlight
    Serial.print(0x7C, BYTE);   //command flag for backlight stuff
    Serial.print(157, BYTE);    //light level.
}
void backlightOff(){  //turns off the backlight
    Serial.print(0x7C, BYTE);   //command flag for backlight stuff
    Serial.print(128, BYTE);     //light level for off.
}
void serCommand(){   //a general function to call the command flag for issuing all other commands   
  Serial.print(0xFE, BYTE);
}

…but I had these errors :

hardware\libraries\SLCD\SLCD.o: In function `c’:

/Users/ianmcdougall/Applications/arduino-0011/hardware/libraries/SLCD/SLCD.cpp:68: undefined reference to `HardwareSerial::print(char)’

/Users/ianmcdougall/Applications/arduino-0011/hardware/libraries/SLCD/SLCD.cpp:69: undefined reference to `HardwareSerial::print(char)’

hardware\libraries\SLCD\SLCD.o: In function `SLCD::print(char const*)’:

/Users/ianmcdougall/Applications/arduino-0011/hardware/libraries/SLCD/SLCD.cpp:94: undefined reference to `HardwareSerial::print(char const*)’

hardware\libraries\SLCD\SLCD.o: In function `SLCD::sendControl(char)’:

/Users/ianmcdougall/Applications/arduino-0011/hardware/libraries/SLCD/SLCD.cpp:111: undefined reference to `HardwareSerial::print(char)’

/Users/ianmcdougall/Applications/arduino-0011/hardware/libraries/SLCD/SLCD.cpp:112: undefined reference to `HardwareSerial::print(char)’

hardware\libraries\SLCD\SLCD.o: In function `SLCD::print(char const*, int, int)’:

/Users/ianmcdougall/Applications/arduino-0011/hardware/libraries/SLCD/SLCD.cpp:87: undefined reference to `HardwareSerial::print(char const*)’

Couldn’t determine program size: D:\ARDUINO\arduino-0012\hardware/tools/avr/bin/avr-size: ‘D:\ARDUINO\arduino-0012\hardware\libraries\SLCD\examples\slcd_demo\applet\slcd_demo.hex’: No such file

avrdude: can’t open input file D:\ARDUINO\arduino-0012\hardware\libraries\SLCD\examples\slcd_demo\applet\slcd_demo.hex: No such file or directory
avrdude: write to file ‘D:\ARDUINO\arduino-0012\hardware\libraries\SLCD\examples\slcd_demo\applet\slcd_demo.hex’ failed

Ok, maybe it’s because it specify a wrong way to my folder : /Users/ianmcdougall/Applications/arduino-0011/. I think the file
SLCD.o contains the wrong way (not mine). How could I modify “.o” files?
Any idea??? :-?

First delete the .o file in hardware/libraries/slcd then start arduino and it will rebuild. Then run the demo code that comes with the library to see if that works.

Hello,

Finaly I've deleted the .o file, and test the screen then it was still impossible to view the right characters I wanted on the LCD.

BUT... After few hours of searching, I've decided to change the position of the data wire on the LCD. I was plugged on the Rx pin, so I've plugged it to the Rx* one (see datasheet). And... Miracle! I even need the SLCD library or anything else. I simply use a serial code, and it works great!! ::slight_smile:

Thanks a lot for your help Franklin (Stephen?)! :wink:

can you give any details on the code you used to do this.

I am having the same problems.

Thanks

Mark