Bonjour,
L'inscription sur ce forum et les premiers messages sont modérés par un Administrateur.
Ce n'est pas très convivial mais malheureusement nécessaire suite au spam intensif de nos amis russes.
Cordialement,
Dominique

horloge et matrice 15x7 charlieWing de feather

Support des produits Adafruits dont MC Hobby est le distributeur.
Règles du forum
Ces forums sont destinés aux clients de MC Hobby ayant besoin d'assistance pour/suite à leurs achats.
Merci de suivre les recommandations suivantes.
Pensez à:
  • Titre claire: permettant d'identifier le produit et le problème
  • Contenu complet: schema, message d'erreur, etc (tout ce qui permet d'aider à distance).
  • Fichier joint: Max 300 Ko
  • Courtoisie et précision
IHOXOHI
Messages : 16
Inscription : mar. 28 juil. 2020 07:34

horloge et matrice 15x7 charlieWing de feather

Message par IHOXOHI »

Bonjour,

Il me semble avoir vu un "tuto" sur l'affichage d'une hrologe sur la matrice 15x7 CharlieWing de feather.
Mais je ne retrouve plus le sujet...

J'ai rapidement essayé de me pencher sur l'écriture d'un script à cette fin, mais cela va me prendre du temps et j'avoue être partisan du moindre effort...

Merci.
IHOXOHI
Messages : 16
Inscription : mar. 28 juil. 2020 07:34

Re: horloge et matrice 15x7 charlieWing de feather

Message par IHOXOHI »

Yip,

Le temps est passé, ...

Voici mon humble script, surement lourd pour rien et mal écrit... mais il fonctionne.

Je ne parviens pas a joindre le fichier. (.py non accepté?)
Je l'ai renommé en .jpg...

sinon voici le code de 160 lignes:

Code : Tout sélectionner

from machine import I2C
import is31fl3731 as is31f
import time

i2c1 = I2C(scl='X9', sda='X10', freq=100000)
display = is31f.CharlieWing(i2c1)

#chiffre 0 sur la deuxieme place
def Chiffre_0(a):
        display.pixel(5+a,1,5)
        display.pixel(4+a,2,5)
        display.pixel(6+a,2,5)
        display.pixel(4+a,3,5)
        display.pixel(6+a,3,5)
        display.pixel(4+a,4,5)
        display.pixel(6+a,4,5)
        display.pixel(5+a,5,5)
#chiffre 1 sur la deuxieme place
def Chiffre_1(a):
        display.pixel(5+a,1,5)
        display.pixel(4+a,2,5)
        display.pixel(5+a,2,5)
        display.pixel(5+a,3,5)
        display.pixel(5+a,4,5)
        display.pixel(5+a,5,5)
def Chiffre_2(a):
        display.pixel(5+a,1,5)
        display.pixel(4+a,2,5)
        display.pixel(6+a,2,5)
        display.pixel(5+a,3,5)
        display.pixel(4+a,4,5)
        display.pixel(4+a,5,5)
        display.pixel(5+a,5,5)
        display.pixel(6+a,5,5)
def Chiffre_3(a):
        display.pixel(4+a,1,5)
        display.pixel(5+a,1,5)
        display.pixel(6+a,2,5)
        display.pixel(5+a,3,5)
        display.pixel(6+a,4,5)
        display.pixel(5+a,5,5)
        display.pixel(4+a,5,5)
def Chiffre_4(a):
        display.pixel(4+a,1,5)
        display.pixel(4+a,2,5)
        display.pixel(4+a,3,5)
        display.pixel(6+a,3,5)
        display.pixel(4+a,4,5)
        display.pixel(5+a,4,5)
        display.pixel(6+a,4,5)
        display.pixel(6+a,5,5)
def Chiffre_5(a):
        display.pixel(4+a,1,5)
        display.pixel(5+a,1,5)
        display.pixel(6+a,1,5)
        display.pixel(4+a,2,5)
        display.pixel(4+a,3,5)
        display.pixel(5+a,3,5)
        display.pixel(6+a,4,5)
        display.pixel(5+a,5,5)
        display.pixel(4+a,5,5)
def Chiffre_6(a):
        display.pixel(6+a,1,5)
        display.pixel(5+a,2,5)
        display.pixel(4+a,3,5)
        display.pixel(5+a,3,5)
        display.pixel(4+a,4,5)
        display.pixel(6+a,4,5)
        display.pixel(5+a,5,5)
def Chiffre_7(a):
        display.pixel(4+a,1,5)
        display.pixel(5+a,1,5)
        display.pixel(5+a,2,5)
        display.pixel(5+a,3,5)
        display.pixel(4+a,3,5)
        display.pixel(6+a,3,5)
        display.pixel(5+a,4,5)
        display.pixel(5+a,5,5)
def Chiffre_8(a):
        display.pixel(5+a,1,5)
        display.pixel(4+a,2,5)
        display.pixel(6+a,2,5)
        display.pixel(5+a,3,5)
        display.pixel(4+a,4,5)
        display.pixel(6+a,4,5)
        display.pixel(5+a,5,5)
def Chiffre_9(a):
        display.pixel(5+a,1,5)
        display.pixel(4+a,2,5)
        display.pixel(6+a,2,5)
        display.pixel(5+a,3,5)
        display.pixel(6+a,3,5)
        display.pixel(6+a,4,5)
        display.pixel(5+a,5,5)
        display.pixel(4+a,5,5)

global b
b = 2
def point(b):
    if b % 2 == 0:
        display.pixel(7,6,5)

global phrase1, phrase2, phrase3, phrase4
phrase1, phrase2, phrase3, phrase4 = "", "", "", ""

while True:

    heure = time.localtime()

    ###break down time
    heure1 = str(heure[3])
    heure11 = int(heure1[0])
    try:
        heure12 = int(heure1[1])
    except:
        heure11 = 0
        heure12 = int(heure1[0])
    heure2 = str(heure[4])
    heure21 = int(heure2[0])
    try:
        heure22 = int(heure2[1])
    except:
        heure21 = 0
        heure22 = int(heure2[0])
    ###link time to display commands
    for x in range(3):
        if heure11 == x:
            global phrase1
            phrase1 = "Chiffre_" + str(x) + "(" + str(-4) + ")"
    for x in range(10):
        if heure12 == x:
            global phrase2
            phrase2 = "Chiffre_" + str(x) + "(" + str(0) + ")"
    for x in range(6):
        if heure21 == x:
            global phrase3
            phrase3 = "Chiffre_" + str(x) + "(" + str(4) + ")"
    for x in range(10):
        if heure22 == x:
            global phrase4
            phrase4 = "Chiffre_" + str(x) + "(" + str(8) + ")"
    ###display command
    def affichage():
         global phrase1, phrase2, phrase3, phrase4
         convert1 = eval(phrase1)
         convert2 = eval(phrase2)
         convert3 = eval(phrase3)
         convert4 = eval(phrase4)
         return convert1
         return convert2
         return convert3
         return convert4
    
    affichage()
    b += 1
    point(b)
    time.sleep(1)
    display.fill(0)
Dernière modification par IHOXOHI le sam. 19 sept. 2020 21:55, modifié 1 fois.
Avatar de l’utilisateur
Dominique
Administrateur du site
Messages : 108
Inscription : dim. 17 mai 2020 22:43

Re: horloge et matrice 15x7 charlieWing de feather

Message par Dominique »

Bonjour,
Je viens seulement d'arriver sur le sujet...

Trouver une réponse par soi même est toujours enrichissant.

a mon avis, le tuto dont vous parlez est celui-ci:

pybstick-projects/charlie-clock

Bonne soirée,
Dominique
Dominique, MC Hobby.
Répondre