'''
Demonstrates the use of MAX7219, Scrolling display.
* Demonstrate to display the scrolling display.
* Four numbers of the MAX7219 are connected in daisy chain.
* 8x8 dot matrix module, (64 LEDs) is connected with each MAX7219
* totally 8x8x4 = 256 LEDs forming with 8 rows of 32 columns Display area.
* The Raspberry Pi Pico pin connections are MAX7219 given below:
* MAX7219 VCC pin to VBUS
* MAX7219 GND pin to GND
* MAX7219 DIN pin to digital GPIO3
* MAX7219 CS pin to digital GPIO5
* MAX7219 CLOCK pin to digital GPIO2
Name:- M.Pugazhendi
Date:- 10thJul2021
Version:- V0.1
e-mail:- [email protected]
'''
# Import MicroPython libraries of PIN and SPI
from machine import Pin, SPI
from time import sleep
# Import MicoPython max7219 library
import max7219
#Intialize the SPI
spi = SPI(0, baudrate=10000000, polarity=1, phase=0, sck=Pin(2), mosi=Pin(3))
ss = Pin(5, Pin.OUT)
# Create matrix display instant, which has 1 MAX7219 devices.
display = max7219.Matrix8x8(spi, ss, 1)
#Set the display brightness. Value is 1 to 15.
display.brightness(1)
pattern = [
0b10000000,
0b01100000,
0b10000001,
0b00000000,
0b00000000,
0b00000000,
0b00000000,
0b00000000
]
# Function to display the pattern on the LED matrix
def show_pattern(pattern):
for y in range(8):
for x in range(8):
pixel = (pattern[y] >> (7 - x)) & 1
display.pixel(x, y, pixel)
display.show()
# Clear the display
display.fill(0)
display.show()
# Show the pattern
show_pattern(pattern)
# Keep the pattern displayed
while True:
sleep(1)