« SE3 2025/2026 EC2 » : différence entre les versions
Aller à la navigation
Aller à la recherche
(Page créée avec « = Objectifs = Réaliser le programme du devoir surveillé concernant la programmation en C sur microcontrôleur AVR : * vous disposez de la fonction <code>init_minuteur</code> du cours ; * vous devez déjà écrire une version améliorée de la fonction <code>shift_set</code> donnée en cours/TP : ** la version améliorée doit s'appeller <code>affiche_chiffre</code>, ** cette fonction se charge de l'initialisation des registres à décalage du bouclier multifo... ») |
Aucun résumé des modifications |
||
| Ligne 14 : | Ligne 14 : | ||
** écrivez d'abord la fonction principale <code>main</code>, initialisant ce qui est nécessaire, puis affichant à tour de rôle (et à l'infini) chaque chiffre sur le 7 segments, | ** écrivez d'abord la fonction principale <code>main</code>, initialisant ce qui est nécessaire, puis affichant à tour de rôle (et à l'infini) chaque chiffre sur le 7 segments, | ||
** donnez ensuite le code de l'ISR, incrémentant les valeurs contenues dans <code>nombre</code> (attention ce sont des valeurs ASCII, pour rappel les valeurs sont contiguës de 0 à 9, et de A à F). | ** donnez ensuite le code de l'ISR, incrémentant les valeurs contenues dans <code>nombre</code> (attention ce sont des valeurs ASCII, pour rappel les valeurs sont contiguës de 0 à 9, et de A à F). | ||
= Matériel nécessaire = | = Matériel nécessaire = | ||
* Arduino Uno avec câble USB ; | * Arduino Uno avec câble USB ; | ||
* | * bouclier multi-fonctions. | ||
= Travail réalisé = | = Travail réalisé = | ||
= Documents Rendus = | = Documents Rendus = | ||
Version actuelle datée du 12 février 2026 à 09:49
Objectifs
Réaliser le programme du devoir surveillé concernant la programmation en C sur microcontrôleur AVR :
- vous disposez de la fonction
init_minuteurdu cours ; - vous devez déjà écrire une version améliorée de la fonction
shift_setdonnée en cours/TP :- la version améliorée doit s'appeller
affiche_chiffre, - cette fonction se charge de l'initialisation des registres à décalage du bouclier multifonction au premier appel,
- à chaque appel,
affiche_chiffren'affiche qu'un seul chiffre hexadécimal sur l'afficheur 7 segments, - le premier paramètre de la fonction donne la position où afficher le chiffre (les nombres valides vont de 0 à 3),
- le second paramètre donne le code ASCII du chiffre à afficher (les valeurs valides vont des caractères 0 à 9, et des caractères A à F) ;
- la version améliorée doit s'appeller
- vous écrirez ensuite un programme affichant les nombres de 0 à 9999 (en base 10), un par seconde, puis cyclant en revenant à 0 :
- il vous est imposé d'utiliser une variable globale
char nombre[4];qui contiendra les valeurs ASCII des nombres qui seront affichés sur le 7 segments, - écrivez d'abord la fonction principale
main, initialisant ce qui est nécessaire, puis affichant à tour de rôle (et à l'infini) chaque chiffre sur le 7 segments, - donnez ensuite le code de l'ISR, incrémentant les valeurs contenues dans
nombre(attention ce sont des valeurs ASCII, pour rappel les valeurs sont contiguës de 0 à 9, et de A à F).
- il vous est imposé d'utiliser une variable globale
Matériel nécessaire
- Arduino Uno avec câble USB ;
- bouclier multi-fonctions.