www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

PWM

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> ARM arhitektura
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
SimonS
Član
Član



Pridružen-a: Čet 01 Jul 2004 11:18
Prispevkov: 4769
Aktiv.: 20.13
Kraj: Kobarid

PrispevekObjavljeno: Pet Mar 06, 2009 7:57 pm    Naslov sporočila:  PWM Odgovori s citatom

Pozdrav
Nikjer nisem zasledil, da bi bilo mozno tako nastaviti PWM, da bi se duty cycle izvajal na sredini periode PWM-ja. Za PIC vem, da je to mozno....

_________________
Lep dan
Simon
Nazaj na vrh
Prisoten Poglej uporabnikov profil Pošlji zasebno sporočilo
strobos
Član
Član



Pridružen-a: Sre 24 Sep 2003 12:19
Prispevkov: 726
Aktiv.: 3.06
Kraj: Brežice

PrispevekObjavljeno: Pet Mar 06, 2009 10:02 pm    Naslov sporočila:   Odgovori s citatom

Kolikor se spomnim ima LPC 6 pwm kanalov, ki jih lahko uporabiš kot 3 kanale in tako lahko za vsak kanal določiš, kdaj v periodi boš dal singnal na 1 in kdaj na 0. Tako si lahko narediš sredinsko centriran pwm, ki ga rabiš za vektorsko regulacijo.

Lp
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
SimonS
Član
Član



Pridružen-a: Čet 01 Jul 2004 11:18
Prispevkov: 4769
Aktiv.: 20.13
Kraj: Kobarid

PrispevekObjavljeno: Pet Mar 06, 2009 10:13 pm    Naslov sporočila:   Odgovori s citatom

Super hvala !
Samo na žalost rabim 3x low in 3x high stikalo. Tako da bo treba vzeti cip z 12. PWMji....

_________________
Lep dan
Simon
Nazaj na vrh
Prisoten Poglej uporabnikov profil Pošlji zasebno sporočilo
vmalhar
Član
Član



Pridružen-a: Pet 06 Jul 2007 11:23
Prispevkov: 170
Aktiv.: 0.78
Kraj: Logatec

PrispevekObjavljeno: Tor Apr 14, 2009 8:20 pm    Naslov sporočila:   Odgovori s citatom

Bom kar tukaj vprašal.

Delam na takoimenovanem š-armu in za začetek bi rad na izhodu pwm0 (pin P0.00) samo dobil signal, da se lahko začnem igrat z nadaljnimi koraki. Preštudiral sem manual, naslovil vse registre, da je pregledno in napisal kratko rutinco, pa na izhodu ne dobim ničesar Think

Takole:
PWMMCR = 0x00000003; // resets PWM timer on match0 and flags an interrupt
PWMPR = 0; // prescale = 0
PWMMR0 = 120000000; // Match0 (periode of PWM)
PWMMR1 = 30000000; // Match1 (duty cycle)
PWMPCR = 0x00000200; // PWM1 enabled
PWMTCR = 0x00000008; //pwm enable
PWMTCR = 0x00000001; //pwm counter enable

Zanimivo mi je, da match0 lepo sproži prekinitev, ki mi prižiga in ugaša ledico, na izhodu ni pa nič.

Kar čutim da bo ena bedna Brick wall Brick wall

Miha
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
dragoon
Član
Član



Pridružen-a: Čet 03 Maj 2007 21:51
Prispevkov: 452
Aktiv.: 2.05
Kraj: Trojane

PrispevekObjavljeno: Tor Apr 14, 2009 8:34 pm    Naslov sporočila:   Odgovori s citatom

@miha: v zadnji register vpisuješ dvakrat, drugič povoziš prejšno vrednost... malo poglej poglavje okoli maskiranja, uporabi funkcije in, ali, negiranje.
nastavi pin kot izhodni.

@simons: da bo duty cycle na sredini izgleda takole, primer za 10%: šteje do 45%, vklopi pin, šteje do 55%, izklopi in šteje naprej do 100% ? kje ti pride to prav? kaj je vektorska regulacija, na hitro?
vem približno kako deluje frekvenčnik, delovanje motorjev mi je jasno, samo nikoli se nisem poglabljal v to.. me pa zanima.

_________________
LP, Mitja
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
vmalhar
Član
Član



Pridružen-a: Pet 06 Jul 2007 11:23
Prispevkov: 170
Aktiv.: 0.78
Kraj: Logatec

PrispevekObjavljeno: Tor Apr 14, 2009 9:00 pm    Naslov sporočila:   Odgovori s citatom

zdej sem združil pwm enable in counter enable v isti vpis. velikokrat je tako, da vpis ničel v kontrolni register nima učinka, pa sem mislil, da je ta register eden takih. Potem lahko postavljaš enke vsako posebej.

Ni pa nobene spremembe. Izhod je tudi inicializiran, sem ga poskušal postavljat na roke in gre bp.

Miha
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
dragoon
Član
Član



Pridružen-a: Čet 03 Maj 2007 21:51
Prispevkov: 452
Aktiv.: 2.05
Kraj: Trojane

PrispevekObjavljeno: Tor Apr 14, 2009 9:15 pm    Naslov sporočila:   Odgovori s citatom

s šarmom smo delali na faxu, poglej tole. vpis ničel nima vpliva samo pri registrih ioset in ioclr, ker se to ravno sklada s programiranjem (maske) v Cju. to torej ni velikokrat. priporočam branje datasheeta. še enkrat.
_________________
LP, Mitja
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
vmalhar
Član
Član



Pridružen-a: Pet 06 Jul 2007 11:23
Prispevkov: 170
Aktiv.: 0.78
Kraj: Logatec

PrispevekObjavljeno: Tor Apr 14, 2009 9:45 pm    Naslov sporočila:   Odgovori s citatom

Glede na to, da mi in match0 in match1 lepo prožita prekinitev ob točnih časih, po moje pwm dela vredu. Nikakor pa tega signala ne dobim na izhod. Tudi P0.00 je omogočen kot izhod, ker se na "set_pin_value(0,1)" postavi, kot je treba.

Morem prespat, pa bomo vidli. Sigurno je neka bedarija Question Think Question Question
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
alessio
Član
Član



Pridružen-a: Pon 04 Dec 2006 8:39
Prispevkov: 363
Aktiv.: 1.61
Kraj: Ljubljana

PrispevekObjavljeno: Tor Apr 14, 2009 10:16 pm    Naslov sporočila:   Odgovori s citatom

vmalhar je napisal/a:
Glede na to, da mi in match0 in match1 lepo prožita prekinitev ob točnih časih, po moje pwm dela vredu. Nikakor pa tega signala ne dobim na izhod. Tudi P0.00 je omogočen kot izhod, ker se na "set_pin_value(0,1)" postavi, kot je treba.


Pin0.00 imaš torej nastavljen kot GP vhod/izhod, nastaviti pa moraš funkcijo pina za PWM delovanje.
Se pravi, prvi nibble v PINSEL0 mora biti 0x2.

~ Aleš
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
vmalhar
Član
Član



Pridružen-a: Pet 06 Jul 2007 11:23
Prispevkov: 170
Aktiv.: 0.78
Kraj: Logatec

PrispevekObjavljeno: Tor Apr 14, 2009 11:37 pm    Naslov sporočila:   Odgovori s citatom

alessio je napisal/a:

Pin0.00 imaš torej nastavljen kot GP vhod/izhod, nastaviti pa moraš funkcijo pina za PWM delovanje.
Se pravi, prvi nibble v PINSEL0 mora biti 0x2.

~ Aleš


To je bilo to. Sedaj je signal na izhodu, ne dela še pravilno, ampak bo hitro rešeno.

Hvala ti Aleš,

Miha
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
vmalhar
Član
Član



Pridružen-a: Pet 06 Jul 2007 11:23
Prispevkov: 170
Aktiv.: 0.78
Kraj: Logatec

PrispevekObjavljeno: Sre Apr 15, 2009 2:11 pm    Naslov sporočila:   Odgovori s citatom

Sedaj deluje bp, me je pa hecalo še tole. Ko resetiram oz. ustavim cpu in debugiram zadevo, se pwm sploh ne ustavlja. Čudno mi je bilo da kljub spreminjanju match registrov pwm deluje nespremenjno. Na začetku inicializacije pwm-ja je treba ustavit in resetirat pwm stevec, nastavit potrebno in potem pognat pwm Idea
Za vpis v match registre v programu pa je treba omogočat latch-e za vpis.

Miha
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
SimonS
Član
Član



Pridružen-a: Čet 01 Jul 2004 11:18
Prispevkov: 4769
Aktiv.: 20.13
Kraj: Kobarid

PrispevekObjavljeno: Sre Apr 15, 2009 8:31 pm    Naslov sporočila:   Odgovori s citatom

Spremembe PWMja ne bo, dokler je ne boš potrdil z vpisom
PWMLER = 0x7F;
sedaj ne vem, če to isto velja tudi za šarm

_________________
Lep dan
Simon
Nazaj na vrh
Prisoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> ARM arhitektura Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 494 dni


Powered by phpBB © 2001, 2005 phpBB Group