PWM på PIC...

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From Danish to

Threaded View
Hej!

Jeg sidder lige og fusker lidt med en lysstyring styret ved hjælp af en
PIC16F84...

Egentligt er jeg godt tilfreds med den nuværende lysstyring, men det kunne
da være sjovt at kunne få lyset den styrer til at fade op/ned, dertil havde
jeg tænkt mig at anvende PWM, men jeg synes ikke rigtigt jeg kan få det til
at spille nogenlunde uden det fylder en farlig masse. Nogle der har nogle
gode idéer uden at jeg skal have fat i en anden PIC med allerede
implementeret PWM?

--
MVH Troels



Re: PWM på PIC...

Quoted text here. Click to load it
<PWM, men jeg synes ikke rigtigt jeg kan få det til
Quoted text here. Click to load it
Hi troels
Hvis den skal være 18 pins i 16F er denne nok den billigste
http://www.microchip.com/1010/pline/picmicro/category/embctrl/8kbytes/devices/16f818/index.htm

Ellers er der også kommet en 18 pins i 18F serien den har også PWM

MVH
   Henrik



Re: PWM på PIC...
Prøv at kigge på www.piclist.com . Det er næsten alle tænkelige
applikationer, eller i hvert tilfælde noget pseudo-kode, der kan bruges.

Mvh.
René Kirstein

Quoted text here. Click to load it
havde
til



Re: PWM på PIC...
Quoted text here. Click to load it

Hej Troels
Jeg har leget lidt med det i C, det var vist blot to løkker inden i
hinanden. Jeg kan nok godt finde det frem, hvis det har interesse.

Mvh Lars Sch-M


Re: PWM på PIC...
Quoted text here. Click to load it

Hvis ikke det er alt for langt væk har det interesse... Men brug nu ikke
hele natten på at finde det ;o)

--
MVH Troels



Re: PWM på PIC...
Hej Troels ...

Her er noget kode til P/F korrekt PWM jeg har fusket med ...

Ideen er at lave en tæller som tæller i savtand ... og skifte niveau når
tælleren er nulstillet på denne måde fjerner man glitches osv...

M.v.h.
Lasse Madsen

// Timer 2 overflow interrupt service routine
interrupt [TIM2_OVF] void timer2_ovf_isr(void)
{
static unsigned char pwm_temp=0,direction=1,channel_1=1,phase=0;
static unsigned char
channel_2=0,channel_3=0,channel_4=0,channel_5=0,channel_6=0;
  if ( pwm_temp == channel_1 ) OUT_AA = ~OUT_AA;
  if ( pwm_temp == channel_2 ) OUT_BA = ~OUT_BA;
  if ( pwm_temp == channel_3 ) OUT_CA = ~OUT_CA;
  if ( pwm_temp == channel_4 ) OUT_AB = ~OUT_AB;
  if ( pwm_temp == channel_5 ) OUT_BB = ~OUT_BB;
  if ( pwm_temp == channel_6 ) OUT_CB = ~OUT_CB;

  // Sørg for at PWM tælleren kører i Savtands modus
 if ( pwm_temp == 100 )
 {
 direction = 0;
 }

 // Find Bund Positionen
 if ( pwm_temp == 0 )
 {
 direction = 1;

   if ( phase == 3 )
   {
   channel_1 = pwm0;
   channel_2 = pwm1;
   channel_3 = pwm2;
   channel_4 = pwm3;
   channel_5 = pwm4;
   channel_6 = pwm5;
   phase = 0;
   }
   else
   phase++;
 }



 // Skift Retning på tæller
 if ( direction == 0 )
 pwm_temp--;
 else
 pwm_temp++;


TCNT2=0x9E;
}



Re: PWM på PIC...
On Mon, 19 Jan 2004 22:04:18 +0100, "Troels Pedersen"

Quoted text here. Click to load it

Her er en application note.... hvis den fylder for meget kan du
sikkert barbere noget overflødigt af.
http://www.microchip.com/download/appnote/devspec/16cxx/00654a.pdf

Håber du finder en løsning

Med venlig hilsen
Rene Nielsen


Re: PWM på PIC...
Kanskje kan denne modifiseres?
:
http://www.geocities.com/sunsetstrip/concert/2301/dimmer.html


Mvh
Leon

Quoted text here. Click to load it
havde
til



Site Timeline