PIC16F628A->PWM
Moderátor: Moderátoři
- ebastlirna
- Příspěvky: 84
- Registrován: 10 říj 2013, 00:00
PIC16F628A->PWM
stahni si CZ datasit http://uloz.to/xjRg1yye/pic16f87xa-cz-pdf
a koukni sem http://www.module.ro/pwm.html
az si to projdes znovu tak si napis kod a ten dej sem , jinak to nema cenu
jako 1 projekt bys mel zacit s obycejnym blikanim pak pridat tlacitko, atd, snazit se musis ty, ja te maximalne pri takovehle snaze jen nakopnuchtěl bych na svůj první mini projekt využít PWM modulaci
Kód: Vybrat vše
//pseudokód
obsluha_preruseni_timer0: // každých 10 us
count = count +1 // počet přerušení
if count = duty then vystup = 0
if count = 100 then
vystup = 1
count = 0
endif
------------------------------------
Loop: // test
duty = 10 // duty_cycle = 10%
wait 300 ms
duty = 20 // duty_cycle = 20%
wait 300 ms
duty = 30 // duty_cycle = 30%
wait 300 ms
// atd
goto Loop
Jeden pwm cyklus trvá 100 * 10us = 1 ms.
Pwm frekvence je tedy 1 kHz.
Duty cycle (plnění) jde nastavit v krocích 1%.
- ebastlirna
- Příspěvky: 84
- Registrován: 10 říj 2013, 00:00
MiloPS3 píše:cau,to si se teda moc nesnazil ..![]()
stahni si CZ datasit http://uloz.to/xjRg1yye/pic16f87xa-cz-pdf
a koukni sem http://www.module.ro/pwm.html
az si to projdes znovu tak si napis kod a ten dej sem , jinak to nema cenujako 1 projekt bys mel zacit s obycejnym blikanim pak pridat tlacitko, atd, snazit se musis ty, ja te maximalne pri takovehle snaze jen nakopnuchtěl bych na svůj první mini projekt využít PWM modulaci
Děkuji za ten datasheet, v cz jsem našel jenom pic16f84.
A i ten kód je super, že je v ASM já nacházel jenom v C-ku...
- ebastlirna
- Příspěvky: 84
- Registrován: 10 říj 2013, 00:00
Perioda opakovací frekvence PWM
1/ T = [(PR2) + 1] • 4 • Tosc • (TMR2 dělicí poměr předděličky Timer2)
2/ Střída PWM = (CCPR1L:CCP1CON<5:4>) • Tosc • (TMR2 dělicí poměr předděličky Timer2)
Děkuji.
mas nejakej duvod pouzit nejakou pozadovanou frevvenci ?
zapni si TMR2 , povol preruseni , dej si tam breakpoint a zmer si to , to bude frekvence PWM, zmenou preddelicky si to upravis.. (delic po nema na frekvenci PWM vliv,takze nastavit 1:1)
stridu nastavujes v CCPR1L , pouzival sem jen 8bit rozliseni (rek bych dostacujici) , 1krok=0.39%...
- ebastlirna
- Příspěvky: 84
- Registrován: 10 říj 2013, 00:00