Document
Document
Document
Un onduleur autonome convertit du courant continu (DC) en courant alternatif (AC). Les
composants principaux sont souvent des MOSFET ou des IGBT contrôlés par un
microcontrôleur comme Arduino.
**Schéma :**
L’exemple suivant configure le Timer1 pour générer une interruption toutes les 1
millisecondes :
```cpp
Void setup() {
// Configure Timer1
ISR(TIMER1_COMPA_vect) {
Void loop() {
```
```cpp
noInterrupts() ;
```
Cela empêche les interruptions pendant la configuration du timer.
```cpp
TCCR1A = 0 ;
TCCR1B = 0 ;
TCNT1 = 0 ;
```
```cpp
OCR1A = 15999 ;
```
Le registre `OCR1A` est défini pour atteindre une comparaison toutes les 1
milliseconde. Le calcul est basé sur la fréquence du microcontrôleur (16 MHz) divisée
par le prescaler et la fréquence désirée :
\[
\]
```cpp
```
```cpp
```
On configure le prescaler à 64. Les bits `CS11` et `CS10` dans `TCCR1B` doivent
être mis à 1 pour obtenir un prescaler de 64.
```cpp
```
```cpp
Interrupts() ;
```
```cpp
ISR(TIMER1_COMPA_vect) {
```
Ce code configure le Timer1 pour générer une interruption toutes les 1 milliseconde, où
vous pouvez exécuter des tâches périodiques. Insérez votre logique dans la fonction
`ISR(TIMER1_COMPA_vect)` pour qu’elle soit exécutée à chaque interruption.