Cours:InfoS2 tdOutput : Différence entre versions
Ligne 5 : | Ligne 5 : | ||
[[Cours:SimulIDE|{{Bleu|<big>'''simuler avec simulIDE'''</big>}}]] | [[Cours:SimulIDE|{{Bleu|<big>'''simuler avec simulIDE'''</big>}}]] | ||
− | =Exercice : | + | =Exercice : faire clignoter des leds= |
2 leds sont connectées sur un attiny13. | 2 leds sont connectées sur un attiny13. | ||
Ligne 60 : | Ligne 60 : | ||
*Changer l’état des leds toutes les 100ms. | *Changer l’état des leds toutes les 100ms. | ||
*Changer l’état des leds toutes les 100ms, en opposition. | *Changer l’état des leds toutes les 100ms, en opposition. | ||
+ | |||
+ | =Exercice : changer l'état des leds= | ||
+ | |||
+ | 3 leds (rouge/orange/verte) sont connectées sur un attiny24 (Fcpu 1MHz) de la façon suivante : | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Couleur !! Numéro de broche !! Port | ||
+ | |- | ||
+ | | rouge || 5 || PB2 | ||
+ | |- | ||
+ | | orange || 8 || PA5 | ||
+ | |- | ||
+ | | verte || 9 || PA4 | ||
+ | |} | ||
+ | |||
+ | {{Question|Écrire un programme décrivant le cycle d’un feu de circulation :}} | ||
+ | *rouge durée 30s | ||
+ | *vert durée 60s | ||
+ | *orange durée 2s |
Version du 29 janvier 2023 à 11:16
Sommaire
Exercice : faire clignoter des leds
2 leds sont connectées sur un attiny13.
l’une sur la broche 2(PB3), et l’autre sur la broche 6(PB1).
fichier pour simuler avec simulIDE : Infouc-Td1-ex1.sim1
Registres
Compléter le tableau suivant avec le nom du registre utile et un code possible :
Broche | Rôle | Nom du registre | ______________________exemple de code______________________ |
---|---|---|---|
PB1 | mettre en sortie | ||
PB1 | mettre la sortie à 1 | ||
PB3 | mettre en sortie | ||
PB3 | mettre la sortie à 0 |
Faire clignoter la led PC5
#define F_CPU 8000000UL
#include <avr/io.h>
#include <util/delay.h>
int main()
{
DDRC |= (1<<PC5); // broche PC5 en sortie
while(1)
{
PORTC ^= (1<<PC5); // changer l'état de PC5
_delay_ms(500);
}
}
|
Programmes
Écrire les programmes qui répondent aux questions suivantes (indépendantes) :
- Allumer les 2 leds en permanence
- Répéter le cycle : leds allumées pendant 50ms, puis éteintes 500ms.
- Changer l’état des leds toutes les 100ms.
- Changer l’état des leds toutes les 100ms, en opposition.
Exercice : changer l'état des leds
3 leds (rouge/orange/verte) sont connectées sur un attiny24 (Fcpu 1MHz) de la façon suivante :
Couleur | Numéro de broche | Port |
---|---|---|
rouge | 5 | PB2 |
orange | 8 | PA5 |
verte | 9 | PA4 |
Écrire un programme décrivant le cycle d’un feu de circulation :
- rouge durée 30s
- vert durée 60s
- orange durée 2s