Ce que vous allez faire
Vous allez maintenant remplacer le mock beeper.c par une implémentation en bonne et due forme. Vous utiliserez pour cela le timer TIM3.
le CH32V307 offrant un total de 10 timers, vous devrez vous référer à la table 2-2 Timer comparison dans la section 2.5.15 Timer and watchdog de la data sheet du CH32V307 pour voir à quel type de timer correspondent quels numéros.
Vous utiliserez le canal PWM 3 de TIM3 pour générer un signal de 1kHz avec un rapport cyclique de 50%. Ce signal sortira sur PB0 auquel vous connecterez un buzzer passif dont l'autre broche sera reliée à VCC. Ce sera très semblable à ce que vous avez déjà fait dans le cours CH32V003 : mini-orgue. Tout ce que vous avez appris sur les timers du CH32V003 est également valable pour ceux du CH32V307.
Le bip d'erreur aura simplement une durée de 250ms. Le bip d'alarme sera formé par la répétition continue de séries de bips brefs séparées par une pause plus longue. Sa structure sera la suivante :
A vous de jouer !