LED scrolling message boards are widely used in:
- Notice board displays
- Public advertising boards
- Passenger information display boards in BUS/TRAIN/TRAM/MATRO, etc.
- Name or signboards of shops
Most of these scrolling message boards are made up of a single RED-color LED. However, currently, there are multi-color LED boards and RGB LED boards are also available. In all of the types of boards, the LEDs are connected in a ROW-COLUMN structure, which is called MATRIX LED scrolling message boards.
In a simple scrolling message MATRIX LED board, there is only one animation effect – so, the message scrolls from right to left. But there are many such boards that have several different animation effects, where a message may appear from:
- The top or bottom
- Appears and then disappear
- Offer dissolving effects
- Bounce from left to right, and many more
Here, we’ve presented a simple project in which a user can enter the information message to be scrolled on a board by using a laptop or computer. This message will be continuously displayed and scrolled. Whenever the user wants to display new information (meaning a new message), he or she will need to connect the system with a computer, using a USB, and then enter the new message — that’s all!
For this project, we use the readymade Matrix LED scrolling message board that’s build using six units of an 8×8 LED block. There are a total of 6x8x8 = 384 LEDs.
It will get a message as a serial input from any digital device, such as a microcontroller or microprocessor. It will accept serial data in the 8-N-1 format with the 9600 BPS. The circuit also uses the Arduino NANO board that gets a message from a laptop or computer and sends this message to the MATRIX LED board to be displayed and scrolled.
Here is the circuit diagram with its description and operation…
Circuit description
As shown in this figure, there are only three building blocks in the circuit:
1. The scrolling message MATRIX LED board
2. The Arduino NANO board
3. The laptop (or PC)
Note:
- The scrolling message MATRIX LED board requires three wires for interfacing the Vcc, the Gnd, and the serial input. As a Vcc, it requires 12V @ 1A supply. So, it’s given an external 12V supply from an adapter. Its serial data input is connected with the digital pin D3 of the Arduino board.
- The Arduino board is also given a 12V input from the adapter to its Vin pin. It communicates with the laptop using a USB cable and also receives data (message) from the laptop.
Circuit operation
The circuit operation is simple. When the 12V supply is given to the circuit, it will begin its operation. The Arduino gets the string (message) from the laptop and it will give the same message to the scrolling message MATRIX LED board. This scrolling message will be displayed on this board.
- Initially, the default message “Hello” is displayed and continuously scrolled on the board.
- The Arduino will continuously wait for any message form the computer. The user can send a message (string) to the Arduino IDE serial monitor.
- When the user sends a message from this serial monitor, it is received and stored by the Arduino board in its internal RAM.
- When a complete message is received, the Arduino will send the same message serially to the scrolling message MATRIX LED board. The digital pin D3 from the Arduino works as a serial data Tx pin that sends the message serially to the MATRIX LED board.
- The format to send message to MATRIX LED board is: “!_____________________message________________\r”
- That means the text message that’s to be scrolled, must start with ‘!’ and end with ‘\r’
- The Arduino inserts the start and end characters in the message received from the computer and then it sends it to the MATRIX LED board.
- The MATRIX LED board will start displaying and scrolling this message continuously until it gets a new message.
- This means that every time a user wants to display a new message, he or she will need to send it from a computer and the message will be continuously displayed and scrolled on the MATRIX LED board.
Software program
#include <SoftwareSerial.h>
SoftwareSerial matrix_LED_serial(2,3);
char msg[100];
int i=0;
void setup()
{
// put your setup code here, to run once:
Serial.begin(9600);
matrix_LED_serial.begin(9600);
matrix_LED_serial.print(“!Hello\r”);
matrix_LED_serial.print(249, HEX);
delay(5000);
}
void loop()
{
while(Serial.available())
{
msg[i] = Serial.read();
i++;
}
if(msg[i-1]==’\r’)
{
matrix_LED_serial.print(‘!’);
matrix_LED_serial.print(msg);
matrix_LED_serial.print(‘\r’);
i=0;
}
}
You may also like:
Filed Under: Arduino Projects, Microcontroller Projects, Tutorials
Questions related to this article?
👉Ask and discuss on EDAboard.com and Electro-Tech-Online.com forums.
Tell Us What You Think!!
You must be logged in to post a comment.