Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

UPS Inverter -- Dual PWM on PIC16F877A

Status
Not open for further replies.

garg29

Advanced Member level 1
Joined
Nov 17, 2004
Messages
443
Helped
25
Reputation
50
Reaction score
10
Trophy points
1,298
Activity points
3,593
Hi friends,

I'm trying to generate 2-PWM signals. The first is high for 45% time & then remaining 55% low. The 2nd PWM signal gets high after 50% time & remains high for 45% time & then again low for remaining 5% time. I'm using PIC16F877A for this application & I'm doing coding in Hitech PICC. I have done the first part but have to still do the second part, Is it possible to create both the correlated PWM signals, as I have tried to show in diagram. If anyone can please provide me a part of helping code I'll be really thankful

Please help me out.....One more request It's bit urgent.

Thanks a lot,

With best regards,
garg
 

Hi,
I don't think you can do it with hardware PWM. You may do it with software PWM or you could use the dsPIC33GS series which has push-pull PWM module in it. You could do this with AVR with phase-correct PWM as well.
Hope this helps.
Tahmid.
 

Dear Garg,

In PIC 16f877A there is only one PWM module. so I guess u have to generate another PWM module by using timer interrupt.

Regards
Chanchal
 

If fix time period is needed then it is easy even without PWM module. For example B1 and B2 are two outputs. For 50 Htz, generate interrupt every 9ms using tmr0. Set B1 high _ wait for interrupt _meanwhile do other tasks _when interrupt occures _ set B1 low _generate 1 ms delay_ update tmr0_ set B2 high _ when interrupt occures _ set B2 low _call 1 ms delay_ update tmr0--repeat. That's it.:D This sequence is good for making power inverters using Fet's drivers avoiding overshoot by incorporating dead time.
 

you can make it easily with timer interrupts ..... or by using simple sequential programming

regard
Ali Umair
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top