mit prozessor proggen hab ich noch keine ahnung, aber der wird doch au irgendwo n schwingkreis (oszilator?) haben, welcher ihn taktet. vlt den mal etwas "abändern", also nen gröseren kondensator reinhaun, wenn der auserhalb liegt.
ansonsten erkundig dich mal nach dem sleep-teil (_delay_ms_ oder was das ist) ob der richtig ist. ansonsten, dieses
for(i=0;i<6;i++)
ist doch irgendwie quatsch, oder? damit machst du aus i irgendwie immer 1, und dann wieder null nach dem durchlaufen der schleife, und bevor sie wieder gestartet wird, wieder 1. zumindest wärs in C++ so, oder der compiler regt sich auf...
schau mal, wie es mit dem wär:
Code:
...
int i=0 ... ; //sollte glaub auserhalb der funktionen sein :-)
void rotate(direction)
{
...
while(i<6)
{
PORTA =step[i];
_delay_ms(1000);
i++;
}
}
zumindest kenn ichs so mit C++ progs
(evtl das while durch for ersetzen)
Lesezeichen