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@3:165fd2208d28, 2022-03-19 (annotated)
- Committer:
- olivierlafont
- Date:
- Sat Mar 19 10:11:07 2022 +0000
- Revision:
- 3:165fd2208d28
- Parent:
- 2:b05b53700281
TP 04 Solution
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Giamarchi | 2:b05b53700281 | 1 | //============================================================================== |
Giamarchi | 2:b05b53700281 | 2 | // FabLab Nîmes |
Giamarchi | 2:b05b53700281 | 3 | // Initiation à la Programmation |
Giamarchi | 2:b05b53700281 | 4 | // Auteur : Frédéric Giamarchi |
Giamarchi | 2:b05b53700281 | 5 | |
Giamarchi | 2:b05b53700281 | 6 | // Date : 3 dec. 2021 |
Giamarchi | 2:b05b53700281 | 7 | // TP 04 : Communication série avec le PC |
Giamarchi | 2:b05b53700281 | 8 | // Faire varier la luminosité de la DEL par appui sur la touche 'p' ou 'm' |
Giamarchi | 2:b05b53700281 | 9 | //============================================================================== |
Giamarchi | 2:b05b53700281 | 10 | // Déclarations des ressources |
Giamarchi | 0:531f33a2550d | 11 | #include "mbed.h" |
Giamarchi | 0:531f33a2550d | 12 | |
Giamarchi | 2:b05b53700281 | 13 | //============================================================================== |
Giamarchi | 2:b05b53700281 | 14 | // Déclaration des broches |
olivierlafont | 3:165fd2208d28 | 15 | PwmOut DEL(PA_8); // Ligne PA_11 en mode PWM |
Giamarchi | 2:b05b53700281 | 16 | Serial pc(USBTX, USBRX); // Dialogue Série port USB à 9600 Baud |
Giamarchi | 1:95172f59262a | 17 | |
Giamarchi | 2:b05b53700281 | 18 | //============================================================================== |
Giamarchi | 2:b05b53700281 | 19 | // Déclaration des variables |
Giamarchi | 2:b05b53700281 | 20 | int8_t variable; // variable de type entier (0 à 255) |
Giamarchi | 2:b05b53700281 | 21 | char c; // variable de type caractère |
Giamarchi | 0:531f33a2550d | 22 | |
Giamarchi | 2:b05b53700281 | 23 | //============================================================================== |
Giamarchi | 2:b05b53700281 | 24 | // Début du Programme |
Giamarchi | 2:b05b53700281 | 25 | int main() // Fonction principale |
Giamarchi | 1:95172f59262a | 26 | { |
Giamarchi | 2:b05b53700281 | 27 | pc.printf("\r\nFabLab TP 4\r\n\n"); // Affiche un message sur le PC |
Giamarchi | 2:b05b53700281 | 28 | pc.printf("p -> pour augmenter la luminosite\r\n"); |
Giamarchi | 2:b05b53700281 | 29 | pc.printf("m -> pour diminuer la luminosite\r\n"); |
Giamarchi | 2:b05b53700281 | 30 | |
Giamarchi | 2:b05b53700281 | 31 | variable = 0; |
Giamarchi | 2:b05b53700281 | 32 | DEL.period_ms(20); // Définit la période du signal |
Giamarchi | 2:b05b53700281 | 33 | //============================================================================== |
Giamarchi | 2:b05b53700281 | 34 | // Boucle Infinie |
Giamarchi | 0:531f33a2550d | 35 | while(1) |
Giamarchi | 0:531f33a2550d | 36 | { |
Giamarchi | 2:b05b53700281 | 37 | if (pc.readable() == 1) // Une commande a été reçue |
Giamarchi | 0:531f33a2550d | 38 | { |
Giamarchi | 2:b05b53700281 | 39 | c = pc.getc(); // Lire et mémoriser le caractère reçu |
Giamarchi | 2:b05b53700281 | 40 | if(c == 'p') // Si le caractère est : p |
Giamarchi | 2:b05b53700281 | 41 | { |
Giamarchi | 2:b05b53700281 | 42 | variable++; // Augmente la variable de +1 |
Giamarchi | 2:b05b53700281 | 43 | if(variable > 20) |
Giamarchi | 2:b05b53700281 | 44 | variable = 20; // Limite supérieure à 20 |
Giamarchi | 2:b05b53700281 | 45 | } |
Giamarchi | 2:b05b53700281 | 46 | if(c == 'm') // Si le caractère est : m |
Giamarchi | 2:b05b53700281 | 47 | { |
Giamarchi | 2:b05b53700281 | 48 | if(variable > 0) // Limite inférieure à 0 |
Giamarchi | 2:b05b53700281 | 49 | variable--; // Diminuer la variable de -1 |
Giamarchi | 2:b05b53700281 | 50 | } |
Giamarchi | 2:b05b53700281 | 51 | |
Giamarchi | 2:b05b53700281 | 52 | pc.printf(" val -> %2d\r",variable); // Affiche la variable sur le PC |
Giamarchi | 0:531f33a2550d | 53 | } |
Giamarchi | 2:b05b53700281 | 54 | DEL.pulsewidth_ms(variable); // Définit la durée du temps haut (en ms) |
Giamarchi | 2:b05b53700281 | 55 | |
Giamarchi | 1:95172f59262a | 56 | } // Fin du while(1) |
Giamarchi | 2:b05b53700281 | 57 | //============================================================================== |
Giamarchi | 2:b05b53700281 | 58 | } // Fin du Programme |
Giamarchi | 2:b05b53700281 | 59 | //============================================================================== |