Witam uprzejmie,
Tworzê program na ATmega128, który generuje w tym samym czasie w sumie na dziewiêciu pinach trzech ró¿nych portów kilkana¶cie impulsów. Impulsy generowane s± poprawnie na portach innych ni¿ PORTG. Na PORTG czasem (kilka razy na kilkadziesi±t wygenerowanych impulsów) tam, gdzie ustawiam jedynkê, pozostaje nadal zero. Czasem ustawiam zero, a pozostaje jedynka po poprzednim impulsie. Co mo¿e byæ przyczyn± problemów?
Czyta³em o tym, ¿e do PORTG nale¿y odwo³ywaæ siê inaczej ni¿ dla innych portów. Niemniej kompilator powinien sprawê za³atwiæ. Poza tym nie jest tak, ¿e na PORTG impulsy w ogóle nie s± generowane -- s± generowane, ale z opisanymi powy¿ej problemami. U¿ywam WinAVR oznaczonego jako 20030424. M103C jest wy³±czony. JTAGEN jest wy³±czony. SPIEN jest w³±czony. Do ustawiania i kasowania bitów u¿ywam sbi i cbi zdefiniowane jako (_SFR_BYTE(sfr) |= _BV(bit)) i (_SFR_BYTE(SFR) &= ~_BV(bit)).
Z góry dziêkujê za pomoc.
R.