#P2 - program control matrice 8x8 LED cu controler de tip Max 7219 # Conexiuni: # DIN -pin 15(GP15) # CS -pin 17(GP13) # CLK -pin 14(GP14) from machine import Pin, SPI import time spi_sck=Pin(14) spi_tx=Pin(15) spi=SPI(1,baudrate=10000,sck=spi_sck, mosi=spi_tx) cs=Pin(13,Pin.OUT,1) # secventa initializare cs(0) spi.write('\x0C') # activare spi.write('\x01') cs(1) # fr. pozitiv stocheza datele in Max 7219 cs(0) spi.write('\x0B') # scan limit spi.write('\x07') cs(1) cs(0) spi.write('\x09') # decode adr. spi.write('\xFF') cs(1) cs(0) spi.write('\x0A') # intensity spi.write('\x07') # max 0F cs(1) # Secventa generare forma cs(0) spi.write('\x01') # adr. coloana 1 spi.write('\x00') # data jos=MSB cs(1) time.sleep(0.001) cs(0) spi.write('\x02') # adr. coloana 2 spi.write('\x0C') # data cs(1) cs(0) spi.write('\x03') # adr. coloana 3 spi.write('\x12') cs(1) cs(0) spi.write('\x04') # adr. coloana 4 spi.write('\x22') cs(1) cs(0) spi.write('\x05') spi.write('\x44') cs(1) cs(0) spi.write('\x06') spi.write('\x22') cs(1) cs(0) spi.write('\x07') spi.write('\x12') cs(1) cs(0) spi.write('\x08') spi.write('\x0C') cs(1) time.sleep(0.2) # Reglare intensitate luminoasa while 1: for i in range(16): cs(0) spi.write('\x0A') spi.write(bytes([i])) #print (i) cs(1) #cs(0) time.sleep(0.1) for i in range(15,2,-1): cs(0) spi.write('\x0A') spi.write(bytes([i])) cs(1) time.sleep(0.1)