Cours:InfoS2 tdGenerationSignal : Différence entre versions
(Page créée avec « 600px|droite {{EnTeteTdInfoS2|InfoS2_tdGenerationSignal_corrige}} fichier pour simuler avec simulIDE : Media:infouc_TdMli.sim1|infouc_... ») |
|||
Ligne 3 : | Ligne 3 : | ||
− | fichier pour simuler avec simulIDE : [[Media: | + | fichier pour simuler avec simulIDE : [[Media:infouc_TdGenerationSignal.sim1|infouc_TdGenerationSignal.sim1]] |
[[Media:Atmega328p.pdf|{{Rouge|datasheet aTmega328p}}]] | [[Media:Atmega328p.pdf|{{Rouge|datasheet aTmega328p}}]] |
Version du 11 mars 2024 à 18:16
Pensez à mettre sur la 1ère ligne de votre code : // Compiler: Avrgcc device: nomDuMicrocontroleur
fichier pour simuler avec simulIDE : infouc_TdGenerationSignal.sim1
datasheet aTmega328p
Cahier des charges
Configuration du timer en fast PWM
D'après le schéma simulIde et le pinout du µcontrôleur, quel timer devons nous configurer ?
Chercher dans la datasheet du µcontroleur (lien ci dessus) la section décrivant ce périphérique et plus particulièrement les pages donnant la descriptions des registres
Quel tableau permet de choisir:
- le mode de fonctionnement (normal, ctc, pwm ...)
- le prédiviseur (qui changera la Fmli )
- la configuration des bits COMxAx sachant que nous utilisons le mode fast PWM
! Fcpu = 8 MHz !
Compléter en conséquence le programme avec la configuration du timer :
int main()
{
// configuration des sorties
// timer en mode fast PWM (mode 3)
// valeur du prediviseur
// génération de la sortie par le timer
// rapport cyclique
while(1)
{
// on peut changer le rapport cyclique régulièrement
_delay_ms(500);
}
}