Stránka 1 z 1

pwm a interrupt

Napsal: 06 led 2008, 12:20
od mmlike
je pwm v pic nějak závislé na přerušení??? mám v 12f683 zapnuto pwm, na tmr0 mám přerušení od gpio - měřím délku signálu na gp5 (1-2ms), a do třetice mám přerušení na TMR1 každých 5ms. A teď problém - pwm mi produkuje různě dlouhé signály na výstupu a nevím proč :cry: do pwm sem natvrdo dal určitou hodnotu i když bych ji potřeboval měnit podle délky pulsu na vstupu,ale to jsen zatim zrušil. program je psán v ubasiku.

Napsal: 06 led 2008, 13:02
od Split
a preco hi nepises v asembleri?

Napsal: 06 led 2008, 13:16
od nekmil
Třeba proto že je assembler mnohem nepřehlednější než vyšší jazyky, zvláště u složitějších konstrukcí. Při představě jak smolím obsluhu MMC/SD karty v assembleru mě poleje studený pot.
Bohužel S pic neporadím, hraju si s AVR :(

Napsal: 06 led 2008, 13:31
od mmlike
no Nekmi to napsal správně je to jednodušší a přehlednější. taky ten ubasic toho za tebe hodně nastaví a s mnoha věcmi se nemusíš párat...ale ono je to jedno v čem to je podstata je jestli pwm potřebuje ke svej činnosti přerušení nebo jestli si běhá na pozadí a nemá na to vliv běh programu pokud zrovna v tom okamžiku nechci pwm přenastavit...

Napsal: 06 led 2008, 17:42
od eljaro
zlatý asmbler - to přerušení od PWM a TMR jsou na stejné urovni kdo dřív příde ten jej dříve vyvolá problém je pak když dojdou současně , nutno asi kontrolovak oba příznaky a pustupně je odbavit !

Kdyby jsi psal v ASM musel by sis kouknout do katalogového listu abys věděl co děláš u překladaču jen spoléháš na něčí schopnost napsat dokonalý překladač a na logigu výkladu katalogových instrukcí programárem !! ten lidský faktor chápu tvé duvody ale pak se nediv asi jediné řešení je něco vygenerovat a něco vytvořit sám a pak skompletovat , nebo nejlépe dva procesory jeden na HW práci a jeden na ten soft

ps : sory za chyby v textu

Napsal: 06 led 2008, 17:53
od Atlan
Ved o to ide Asm ked to nejde je problem medzi stolickou a klavesnicou na 99,9% A ked to nejde v nejakom vysom jazyku tak mas problemi 2 a hladaj kde je chyba :D

Napsal: 06 led 2008, 18:00
od jankop
Zapnutí CCP modulu v módu PWM nemá obecně nic společného s přerušením. Pokud povolíš TMR2IE, tak se pak nediv.
V assembleru bych ti poradil.

Napsal: 06 led 2008, 20:31
od mmlike
hmmm tak se moc omlouvám nejlíp to vystihl Atlan chyba byla mezi klávesnicí a židlí. v ubysic je příkaz change_duty a já si to špatně přečetl (angličtina mi tak moc nejde). nastavuje se v rozsahu 0-255 já dával až do 1024. tak se moc omlouvám a děkuji všem