first of all, excellent contributions and work to lonewolf and others for proceeding to improve the code required to drive these displays and make them work better. Using what I've learned here, I've been able to successfully get 3 displays to scroll status messages. I'm working on a project utilzing 3216 displays and parts of this code, but I'm stuck on something, maybe someone here can help?
I've got the following in my void loop section:
void loop ()
if(Serial.available() > 0) // Is there anything to read?
serialIndex = 0;
while(Serial.available() > 0)
char aChar = Serial.read();
serialIn[serialIndex] = aChar; // Store the character read
serialIndex++; // Point to the next position
serialIn[serialIndex] = '\0'; // NULL terminate the string
// Now do something with the string...
While this works, its buggy. if I type in say, "abcde", the "a" scrolls across immediately, followed by a few spaces, then the "bcde" follows as it should...as if I had entered "a bcde". I need it (at least for now) to wait till the whole string is entered, or the user hits enter. I ultimately want to be able to update via a bluetooth keyboard or android app. In order to do this, I need to write something that monitors the serial port and then detects when the user hits enter, and displays the message.
forgive me as C/C++ is not my thing, so I'm still learning. I'm ultimately trying to read in a string, and upon receiving enter key (or carriage return) it dumps the text to the panels.