Besten,
ik ben al even aan de slag met de Pic 16F877A
nu wil ik een PWM signaal gaan uitlezen maar graak er moeilijk aan uit hoe ik dit moet doen, ik weet alles is te vinden in de datasheed, echter ik ben geen krak in engels.
kan iemand me even kort uitleggen hoe ik welke registers moet instellen om myn PWM te kunnen uitsturen.
ik werk in de omgeving SourceBoost IDE.
hadv
Just find out what you like and let it kill you
Jawel, toevallig net zelf mee bezig.
Als je in 8.3.3 kijkt zijn het de volgende stappen:
PR2 dient voor de periode, ik heb PR2 op 255 staan.
De CCP1 pin moet je op 0 zetten, daarvoor gebruik je "bsf TRISC, 2".
Timer2 is een cruciale factor, deze moet je enablen, "bsf T2CON, 2"
De prescaler van Timer2 kun je gebruiken om de frequentie te regelen.
In tabel 8.3 zie je welke waarden je moet gebruiken afhankelijk van je kloksnelheid.
Door in CCP1CON bits 2 en 3 te setten gaat-ie in PWM mode werken.
Vervolgens stop je de gewenste duty cycle in CCPR1L en bits 5 en 4 van CCP1CON.
Ik werk met een 20MHz klok. PR2 staat op 255, T2CON, 2 staat op 1, de prescaler staat op 16, dan heb ik een prachtige 1,2 KHz frequentie. De dutycycle varieer ik met behulp van CCPR1L (0-255).
Presto!
Beste,
ik begrijp ongeveer wat ik nu moet doen.
Maar in welke volgorde schrijf ik dit in m'n programma?
heeft u eventueel een klein voorbeeltprogramma'tje?
Alvast van harte bedankt