-
-
Sleep-Funktion bei ASURO
Hallo,
ich habe heute meinen ASURO zusammengebaut und mir ein Programm zum Testen der Linienverfolgung runtergeladen. Dieses Programm funktioniert nicht so, wie es sollte. Sobald die Funktion Sleep aufgerufen wird, hält das Programm an. Ohne Sleep arbeitet das Programm einwandfrei.
Wo liegt der Fehler?
#include "asuro.h"
#include "stdlib.h"
int main (void)
{
int t;
unsigned int data[2];
unsigned char links[7];
unsigned char rechts[7];
SerWrite ("Hello World\n\r", 13);
for (t=0;t<25;t++)
{
StatusLED (RED);
LineData (data);
itoa (data[0], links, 10);
itoa (data[1], rechts, 10);
SerWrite (links, 6);
SerWrite ("\n\r", 2);
SerWrite (rechts, 6);
SerWrite ("\n\n\r", 3);
Sleep(216);
StatusLED (GREEN);
}
StatusLED (GREEN);
return 0;
}
-
Moderator
Robotik Visionär
Hallo,
Glückwunsch zum asuro und willkommen im RN-Forum.
Dass bei deinem Programm überhaupt etwas funktioniert ist echt erstaunlich. Es fehlt das Init(). Deshalb wird wohl der Timer für Sleep() nicht initialisiert. (Die serielle Schnittstelle wird schon im Bootloader initialisiert und funktioniert deshalb trotzdem)
Außerdem sollte ein Programm für einen AVR (wie der Mega8 des asuro) nie beendet werden, d.h. main() sollte mit einer Endlosschleife enden, das letzte "return 0" sollte nie erreicht werden:
while(1);
return 0;
Da es über main() keine übergeordnete Funktion gib, springt der AVR beim letzten return irgendwo ins Nirwana. Laut Datenblatt könnte dabei (wohl eher theoretisch) im AVR ein Wert verändert werden der einen Weiterbetrieb des AVRs unmöglich macht.
btw: Es gibt hier im RN-Forum einen extra Bereich für den asuro:
https://www.roboternetz.de/phpBB2/viewforum.php?f=44
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
-
Danke, Danke, Danke!
Es läuft jetzt. Dann kann es ja jetzt mit dem lustigen Teil losgehen
Ein gutes Forum, in dem man schnelle und gute Hiilfe bekommt!
Gruß
Stephan
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen