Skocz do zawartości

[C] Problem z operacją bitową


Pomocna odpowiedź

Napisano

Witam.

Moją przygodę dopiero zacząłem z AVR-GCC.

już udało mi się kilka najprostszych programów wgrać do atmegi8a poprzez srodowisko winavr.

wszystko pięknie, chciałem wykonać diody po kolei zapalające się:

while(1)
{
PORTB<<=1;
_delay_ms(100);
PORTB|=1;
_delay_ms(100);
}

w winavr make file, potem make program, niby żadnych błędów w kompilatorze.

A tu patrze na mój układ i widzę, że ATMEGA nie robi tego co powinna, diody się świecą i co chwila migają wspólnie. Więc zacząłem szukać problemu robiłem różne programy i wyszło, że nie działa bitowa alternatywa '|' szukałem wszędzie co może być nie tak.

Czy mógłbym was prosić o pomoc???

Jeśli chodzi o schemat połączeń to wszystko podłączyłem jak na kursie AVR-GCC (kondensatory filtrujące , programator, zasilacz) tylko dwie jeszcze diody (bo więcej przy sobie nie miałem) przylaczylem jedną do pb0 z rezystorem 1k om a drugą pod pb1 też z rezystorem. A czemu mam drugiego usunąć?

[ Dodano: 22-06-2015, 06:59 ]


while(1) 
{ 
PORTB<<=1; 
PORTB|=1; 
_delay_ms(100); 
} 

Poprawiłem kod

[ Dodano: 22-06-2015, 17:21 ]

Dziękuję za chęć pomocy już znalazłem w czym tkwi

problem zagapiłem sie i nie zwarłem z masą jednej nóżki GND

Pszepraszam za kłopot

  • 2 tygodnie później...

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...