I have a decent background with the arduino for the past 2 years, but I've only used it standalone (i.e., reading analog inputs, doing the math, making digital outputs work the results, repeat). This is my first project with a display and serial connections and I'm finding myself at a loss.
I'm using the RBBB from Modern Device. It's one of a batch of them I bought from MD way back when. The screen is a Noritake 20x2 VFD (specifically the CU20025ECPB-W1J).
What works:
A simple code works just fine. lcd.print() displays whatever I want, I can make it scroll around, or blink, etc. It's interfaced in 4-bit and it's just perfect.
What breaks:
When I just put in a simple Serial.begin(9600); in the setup() section, then every 6th character is incorrect. Specifically, it shifts one column to the right on the Character Table of the LCD (i.e. the "i" shows up as a "y"). Taking out the Serial.begin line makes it work again. There is nothing else changed from the 'working' code.
What I've tried, but had no effect on the issue:
- Using different baud rates in the Serial.begin.
- The original LiquidCrystal library that came with the 0016, Ladyada's version, another one I found on the arduino.cc site.
- Switching d4-d7 to other pins.
- Switching to another RBBB I had around.
I've spent over a dozen hours googling, but I'm coming up empty. Is there something wrong with the Arduino->LCD timing? Maybe when I made my RBBB I soldered it badly (cold joints, shorts)? Is the LCD damaged?
Thank you for reading this.
-psyrex