Pwm blokeert de andere pinnen op dezelfde poort?

Hoi, ik ben redelijk nieuw in pic processoren(kheb da gehad op unif wa, meer vanbuiten geleerd...)

Blijkbaar zou onderstaande code niet doen wat ik wil:


for green = 255 to 0 STEP -1
	PWM PORTA.0, green, cycles
	if green < 100 then HIGH PORTA.1
next

namelijk, PORTA.1 blijft steeds in LOW toestand. Als ik die vervang door nen PORTB.1 bevoorbeeld, dan lukt het wel. Kan da zijn dat ik als pwm gebruik op een poort, dat al de andere pinnen gewoon niets meer doen? Is da op te lossen?

zo gaat het: (maar dees is niet echt proper)


for green = 255 to 0 STEP -1
	PWM PORTA.0, green, cycles
	if green < 100 then PWM PORTA.1, 0, cycles
next

Terinfo gebruik ik een PIC16F628A, die 1 ccp heeft (die voorbehouden is voor andere zaken)

Merci !
Joost

Post je hele programma eens (graag knip en plak).

ben je bekend met het read-modify-write probleem? zo nee dan maar even googelen of zoeken op CO.

@WvO: Dat is geen antwoord op de vraag.
Of anders gezegd, we hebben weer een bug in PicBasic te pakken?
(Ik gok maar even dat TS dat gebruikt.)

[Bericht gewijzigd door picsels op (41%)]

je sluit je if then niet af met endif

Op 30 december 2007 23:26:51 schreef picsels:
@WvO: Dat is geen antwoord op de vraag.

Syntactisch gezien niet, maar didactisch wel.

Op 30 december 2007 23:32:44 schreef Stynus:
je sluit je if then niet af met endif

Dat hoeft volgens mij ook niet als je het op 1 regel hebt staan.
Net als in vele andere talen:


if(..)
{
//1 regel code
}

is hetzelfde als:


if(..)
//1 regel code

Op 30 december 2007 23:41:41 schreef Wouter van Ooijen:
[...]

Syntactisch gezien niet, maar didactisch wel.

Heej, gaat ie? zondagavond laat? ;)