10-23-2015, 11:30 AM
Mislim da nećeš moći da generišeš PWM tako niske frekvencije jer je TIMER2 male rezolucije i sa malim preskalerom. Koliko se sećam kod PIC-ova sa 4MHz OSC-a neki donji limit je nešto oko 1kHz.
Ja sam pre više godina za neki projekat slične namene pravio 50Hz softverski PWM, pošto ta frekvencija nije problem da se izvede korišćenjem Timer interapta na 10mS odnosno 20mS. Ako želiš "dead-time" onda generišeš timer interapt na 1ms i brojačem podešavaš uključenje isključenje pinova i kašnjenje između izlaznih tranzistora.
Vodi računa da u interapt rutini imaš samo uslove i kontrolu I/O pinova, nikako neku kompleksnu matematiku i slično, to možeš raditi u main petlji.
Ja sam pre više godina za neki projekat slične namene pravio 50Hz softverski PWM, pošto ta frekvencija nije problem da se izvede korišćenjem Timer interapta na 10mS odnosno 20mS. Ako želiš "dead-time" onda generišeš timer interapt na 1ms i brojačem podešavaš uključenje isključenje pinova i kašnjenje između izlaznih tranzistora.
Vodi računa da u interapt rutini imaš samo uslove i kontrolu I/O pinova, nikako neku kompleksnu matematiku i slično, to možeš raditi u main petlji.