from machine import Pin, SPI
from max7219 import Matrix8x8
from time import sleep

#Spremenljivke za glavni program

delay = 0.5


#Naslavljanje Max7219-stk
spi = SPI (1, baudrate = 10000000, polarity = 0, phase = 0, sck = (Pin(4, Pin.OUT)), mosi = (Pin(16, Pin.OUT)))
ss = Pin (17, Pin.OUT)
matrix = Matrix8x8 (spi, ss, 8)


#Simboli

heart = [
  "00000000",
  "00100100",
  "01111110",
  "01111110",
  "01111110",
  "00111100",
  "00011000",
  "00000000"
]


#Podprogrami

#Prikaz 8x8 simbola, seznam = vrednost svetlobnost LED, repeat = število simbolov, ki se bodo pokazali
def Print8x8(sez: list, repeat: int):
  for i in range(repeat + 1):
    stev = 0
    for y in range(0, 8):
      for x in range(i*8 - 8, i*8):
        matrix.pixel(x, y, sez[stev])
        stev += 1
  matrix.show()

#Razdelitev seznama str števil svetlobnosti v seznam vseh vrednosti posebaj
def SymbolToBrightness (sez:list) -> list:
  rez = []
  for row in sez:
    for bright in row:
      rez.append(int(bright))
  return rez



#Glavni program


Heart = SymbolToBrightness(heart)
Print8x8(Heart, 8)
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
matrix1:V+
matrix1:GND
matrix1:DIN
matrix1:CS
matrix1:CLK
matrix1:V+.2
matrix1:GND.2
matrix1:DOUT
matrix1:CS.2
matrix1:CLK.2
matrix2:V+
matrix2:GND
matrix2:DIN
matrix2:CS
matrix2:CLK
matrix2:V+.2
matrix2:GND.2
matrix2:DOUT
matrix2:CS.2
matrix2:CLK.2