Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp
- Committer:
- Giamarchi
- Date:
- 2021-11-19
- Revision:
- 6:288fd7e43c6e
- Parent:
- 5:cfe7e243bb5f
File content as of revision 6:288fd7e43c6e:
//==============================================================================
//  FabLab Nîmes
//  Initiation à la Programmation
//  Auteur : Frédéric Giamarchi
//  Date : 19 nov 2021
//  TP 01 : Controle de 3 DELs en même temps
//  Modifier le programme pour obtenir que 3 Dels (Rouge, Jaune et Verte)
//  clignotent à 3 fréquences différentes (1Hz, 2Hz et 4Hz).
//  Correction
//==============================================================================
#include "mbed.h"
//              Déclaration du sens des broches
DigitalOut DEL_RO(PA_11);               // Ligne PA_11 sur la carte Nucléo
DigitalOut DEL_JA(PB_5);               // Ligne PB_5 sur la carte Nucléo
DigitalOut DEL_VE(PB_4);               // Ligne PB_4 sur la carte Nucléo
//              Déclaration des variables    
uint8_t compteur;                       //
//==============================================================================
//              Début du Programme
int main()                              // Fonction principale
{
//==============================================================================
    while(1)                            // Boucle Infinie
    {
//              Solution n°1
/*      
        DEL_RO = 1;
        DEL_JA = 1;
        DEL_VE = 1;                     // Broche à 1 (DEL Verte allumée)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_VE = 0;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_JA = 0;
        DEL_VE = 1;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_VE = 0;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_RO = 0;
        DEL_JA = 1;
        DEL_VE = 1;                     // Broche à 1 (DEL Verte allumée)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_VE = 0;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_JA = 0;
        DEL_VE = 1;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_VE = 0;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
*/
//              Solution n°2
/*      
        DEL_RO = !DEL_RO;               // Inversion logique sur la broche
        DEL_JA = !DEL_JA;
        DEL_VE = !DEL_VE;
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_VE = !DEL_VE;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_JA = !DEL_JA;
        DEL_VE = !DEL_VE;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        DEL_VE = !DEL_VE;                     // Broche à 0 (DEL Verte éteinte)
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
*/
//              Solution n°3
        wait_ms(125);                   // Temporisation de 125ms (0.125s)
        compteur = compteur + 1;
        DEL_VE = compteur & 0x01;
        DEL_JA = compteur & 0x02;
        DEL_RO = compteur & 0x04;
    }           // Fin du while(1)
//==============================================================================
}               // Fin du Programme
//==============================================================================