Stap 3: PWM periode & DUTY CYCLE
Het PWM-periode is opgegeven door te schrijven naar het register PR2. De periode van de PWM kan worden berekend met de volgende formule:PWM periode = [(PR2) + 1] • 4 TOSC • (TMR2 prescale waarde)
PWM frequentie wordt gedefinieerd als 1 / [PWM periode]. Wanneer TMR2 gelijk aan PR2 is, optreden de volgende drie gebeurtenissen op de volgende increment-cyclus:
TMR2 is uitgeschakeld
De CCP1 pin is ingesteld (uitzondering: als PWM taakcyclus = 0%, de CCP1 pin niet ingesteld)
Het PWM-taakcyclus is vergrendeld van CCPR1L in CCPR1H
De taakcyclus van de PWM is opgegeven door te schrijven naar het register van de CCPR1L en de CCP1CON < 5:4 > bits. 10-bits resolutie van maximaal is beschikbaar. De CCPR1L bevat de acht MSbs en de CCP1CON < 5:4 > bevat de twee LSbs. Deze 10-bitwaarde wordt vertegenwoordigd door CCPR1L:CCP1CON < 5:4 >. De volgende vergelijking wordt gebruikt voor het berekenen van de PWM-taakcyclus tijdig:
De taakcyclus van de PWM = (CCPR1L:CCP1CON < 5:4 >) •TOSC • (TMR2 prescale waarde)
SETUP VOOR PWM VERRICHTING
De volgende stappen moeten worden genomen bij het configureren van de module van de CCP voor PWM verrichting:
1. Stel de PWM-periode door te schrijven naar het register PR2.
2. Zet de taakcyclus van de PWM door te schrijven naar het register van de CCPR1L en de CP1CON < 5:4 > bits.
3. Maak de pin van een vermogen door het selectievakje de bit TRISC < 2 > CCP1.
4. Stel de prescale waarde van TMR2 en Timer2 in staat stellen door te schrijven naar T2CON.
5. Configureer de module van de CCP1 voor PWM verrichting.