0
\$\begingroup\$

I am not able to understand what is making the data to scroll in LED matrix display.

http://www.npeducations.com/2011/11/simple-led-message-scrolling-display.html

Is it the shift registers? This site mentioned that the shift register are used to reduce the no of pins needed.

\$\endgroup\$
  • 2
    \$\begingroup\$ No, it's the microcontroller. \$\endgroup\$ – Ignacio Vazquez-Abrams Dec 23 '16 at 22:08
2
\$\begingroup\$

The shift registers are used to actually address/control each of the many LEDs with a limited amount of microcontroller pins.

However, what these shift registers shift around is controlled by the microcontroller. It calculates which 0s and 1s to shift in and will just calculate how each displayed frame looks like.

The microcontroller is the "brain" of such displays. Shift registers are just the "fingers".

\$\endgroup\$
1
\$\begingroup\$

The controller is simply sending out a new set of pixels several times per second. Each 8-bit word it sends out is a column of 8 LEDs By sending out certain patterns of bits (which light up the LEDs in a column) the controller can form what we interpret as letters and numbers. By sending several new columns of "pixels" every second the columns of pixels move to the left and it makes letters and words scroll across the display.

Shift registers are very convenient for controlling large numbers of LEDs like this. It is particularly handy for scrolling text because you need to send only the newest column of pixels at the far right and the "older" ones shift automatically to the left.

\$\endgroup\$
1
\$\begingroup\$

The 8x8 pixel array is a result of a Pixel memory map which is occupies 8 bytes of RAM .

But is must be transferred 1 Byte at a time in sequence so that when repeated it appears to be continuously driving all 8 Bytes or 64 Pixels at once.

The pixel rows are then shifted in RAM in one process slowly using some canned software algorithm. All the while another process operating at>= 1kHz is reads the RAM and shifts it out, 1 of 8 bytes for each line while incrementing each line in a continuous round robin. ( Multiplexing or Mux)

This is bascially how TV's and monitors work called pixel Raster Scan, except the sequential rows do not require external selection and used dedicated video row counters to perform this. They just need a frame sync pulse.

It the only function of the display was to scroll pixelated characters , it could be designed simpler just using the shift register as a 1 of 8 selector while 8 pixels are activated at a time in sequence.

Without reading further, the latter is quite limited in display mode so the former MUX operation is more likely.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.