Project

General

Profile

panneauLeds2.cpp

Mathieu Fauchart, 02/02/2021 10:17 AM

 
1
#include "panneauLeds2.h"
2

    
3
/* Fonction pulse */
4
void pulse(int pin){
5
    int cpt;
6
    digitalWrite(pin,HIGH);
7
    for(cpt=0;cpt<100;cpt++){}
8
    //delay(1);
9
    digitalWrite(pin,LOW);
10
    /* Pour visualiser le déplacement */
11
    //delay(DELAY);
12
}
13
void configPanel()
14
{
15
    printf("debut configPanel\n");
16
    wiringPiSetup () ;
17
    pinMode(OE, OUTPUT);
18
    pinMode(RESET, OUTPUT);
19
    pinMode(DATA_R1, OUTPUT);
20
    pinMode(DATA_V1, OUTPUT);
21
    pinMode(STROBE1, OUTPUT);
22
    pinMode(HRD1, OUTPUT);
23
    pinMode(DATA_R2, OUTPUT);
24
    pinMode(DATA_V2,OUTPUT);
25
    pinMode(STROBE2, OUTPUT);
26
    pinMode(HRD2, OUTPUT);
27
    printf("fin configPanel\n");
28
}
29
void clearPanel()
30
{
31
    printf("debut clearPanel\n");
32
    int i = 0;
33
    int j = 0;
34
    //Pas de mémoristion
35

    
36
    //Activer les sorties
37
    pulse(OE);
38
    //Initialisation compteur de ligne
39
    pulse(RESET);
40
    //Ne pas mémoriser
41
    pulse(STROBE1);
42
    pulse(STROBE2);
43
    //Pour la rangée n°1 et n°2
44
    //Pour chaque ligne
45
    for(j = 0; j < NLIGNES; j++)
46
    {
47
        //Pour chaque colonne, on insère un 0 qui se propage
48
        //par impulsion timer
49
        for(i = 0; i < NCOLONN; i++)
50
        {
51
            //dataR1, dataV1, dataR2, dataV2
52
            digitalWrite(DATA_V1,LEDOFF);
53
            digitalWrite(DATA_R1,LEDOFF);
54
            digitalWrite(DATA_V2,LEDOFF);
55
            digitalWrite(DATA_R2,LEDOFF);
56
            pulse(HRD1);
57
            pulse(HRD2);
58
        }
59
    }
60
    printf("fin clearPanel\n");
61
}
62