Начинаю так сказать малехо изучать. Налдабал тут малость типа бегущий огонь на основе всем известной "hello world" программы. Светодиоды сидят на порту А. Еще один, на выходе 0 порта Б. Немного изменяю и усложняю. Учусь так сказать. Вопрос в следующем. не могу условный переход сделать: if - goto - else. ошибку выдает. гляньте-вразумите, что не так...
#include <avr/io.h> // Õîòèì èñïîëüçîâàòü ïîðòû ââîäà/âûâîäà
#include <util/delay.h> // Õîòèì èñïîëüçîâàòü ôóíêöèè çàäåðæåê
int main()
{
// Ðåãèñòð DDRB îòâå÷àåò çà íàïðàâëåíèå
// ëèíèé ïîðòà. Åñëè êàêîé ëèáî áèò ðàâåí
// ëîã. 1, ñîîòâåòñòâóþùàÿ ëèíèÿ ïîðòà
// èñïîëüçóåòñÿ äëÿ âûâîäà äàííûõ. Èíà÷å äëÿ ââîäà.
// Ìû óêàçûâàåì, ÷òî ñîáèðàåìñÿ èñïîëüçîâàòü
// ëèíèþ 0 äëÿ âûâîäà äàííûõ (óñòàíàâëèâàåì áèò 0
// â ëîã. 1).
DDRA = 0xFF;
DDRB = 0x01;
// Íà÷èíàåì âå÷íûé öèêë.
for (; 
{
// Èíèöèàëèçèðóåì ïåðåìåííóþ, õàðàêòåðèçóþùóþ
// âðåìÿ çàäåðæêè â ìèëëèñåêóíäàõ äëÿ çàìêíóòûõ êîíòàêòîâ.
int SleepTime = 10;
// Åñëè áèò 1 ïîðòà B óñòàíîâëåí â ëîã. 1, (êîíòàêòû ðàçîìêíóòû 
// óâåëè÷èâàåì âäâîå âðåìÿ çàäåðæêè.
if (PINB & _BV(PB1)) goto label1;
else PORTB | = _BV(PB0);
// Óñòàíàâëèâàåì áèò 0 ïîðòà A â ëîã. 1.
// (çàæèãàåì ñâåòîäèîä
.
PORTA | = _BV(PA0);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 1 ïîðòà A â ëîã. 1.
// (çàæèãàåì ñâåòîäèîä
.
PORTA | = _BV(PA1);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 2 ïîðòà A â ëîã. 1.
// (çàæèãàåì ñâåòîäèîä
.
PORTA | = _BV(PA2);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 0 ïîðòà A â ëîã. 0.
// (ãàñèì ñâåòîäèîä
.
PORTA &= ~_BV(PA0);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 3 ïîðòà A â ëîã. 1.
// (çàæèãàåì ñâåòîäèîä
.
PORTA | = _BV(PA3);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 1 ïîðòà A â ëîã. 0.
// (ãàñèì ñâåòîäèîä
.
PORTA &= ~_BV(PA1);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 4 ïîðòà A â ëîã. 1.
// (çàæèãàåì ñâåòîäèîä
.
PORTA | = _BV(PA4);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 1 ïîðòà A â ëîã. 0.
// (ãàñèì ñâåòîäèîä
.
PORTA &= ~_BV(PA2);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 5 ïîðòà A â ëîã. 1.
// (çàæèãàåì ñâåòîäèîä
.
PORTA | = _BV(PA5);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 3 ïîðòà A â ëîã. 0.
// (ãàñèì ñâåòîäèîä
.
PORTA &= ~_BV(PA3);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 6 ïîðòà A â ëîã. 1.
// (çàæèãàåì ñâåòîäèîä
.
PORTA | = _BV(PA6);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 4 ïîðòà A â ëîã. 0.
// (ãàñèì ñâåòîäèîä
.
PORTA &= ~_BV(PA4);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 7 ïîðòà A â ëîã. 1.
// (çàæèãàåì ñâåòîäèîä
.
PORTA | = _BV(PA7);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 6 ïîðòà A â ëîã. 0.
// (ãàñèì ñâåòîäèîä
.
PORTA &= ~_BV(PA6);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 5 ïîðòà A â ëîã. 0.
// (ãàñèì ñâåòîäèîä
.
PORTA &= ~_BV(PA5);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
// Óñòàíàâëèâàåì áèò 7 ïîðòà A â ëîã. 0.
// (ãàñèì ñâåòîäèîä
.
PORTA &= ~_BV(PA7);
// Æäåì óêàçàííîå âðåìÿ.
_delay_ms(SleepTime);
_delay_ms(000);
}
{label1:
PORTB &= ~_BV(PB0);
SleepTime = SleepTime*5;
}
return;
return 0;
}
AVR studio пишет:
../main.c:153:3: error: 'SleepTime' undeclared (first use in this function)

там накладывается в bit_set.