Archiv verlassen und diese Seite im Standarddesign anzeigen : Asuro - Code nicht funktionsfähig grund: sleep funktion fals
hallo, ich habe heute (endlich) den fertigen Asuro. Leider kann er meinen Code nicht ummsetzen.
benutze programmers notepad und neuste flashversion
#include "asuro.h"
int main()
{
Init();
int i=0;
for (i=0;i<100;++i)
{
BackLED (OFF, ON);
Sleep(200000);
BackLED (ON, OFF);
Sleep(200000);
}
BackLED (OFF, OFF);
while (1); //ansonsten endlos
return 0; //wird nicht erreicht
}
wird folgendermaßen umgesetzt: booten, kurzes blinken, ende.
nicht ganz in meinem sinne!!
radbruch
30.10.2007, 22:14
Hallo Weiti,
Willkommen im RN-Forum.
Die Funktion Sleep() nimmt nur byte-Werte als Parameter, also 0-255. Für längere Pausen must du Sleep() mehrfach aufrufen. Hatte dein Programm keine Fehlermeldungen/Warnungen beim Übersetzen?
Gruß
mic
nein, es sagt: keine fehler!
Danke, es funktioniert! gibt es die möglichkeit (auser in for schleifen) längere pausen zu machen?
radbruch
30.10.2007, 22:37
Hallo
Es gibt eine erweiterte Library für den asuro die hier im RN-Forum entwickelt wurde:
https://www.roboternetz.de/phpBB2/viewtopic.php?p=275614#275614
Die dort verwendete Funktion Msleep() sieht so aus:
void Msleep(int dauer)
{
int z;
for(z=0;z<dauer;z++) Sleep(36);
}
Sie wartet 1/1000 sek und hat integer als Parameter (bis ca. 65 Sek)
Gruß
mic
hi
müsste es in dem programm nicht i++ statt ++i heißen?
Oder ist das egal?
Gruß Jan
:?:
nach meinen kentnissen ist es hier egal. beabsichtigt wars trotzdem nicht ;)
++i rechnet alle vorhergehenden funktionen zuerst. i++ rechnet erst i+1 und dann das nachfolgende, da nichts vorher oder nachher gerechnet wird müsstest egal sein. ich kanns aber nicht garantieren.
radbruch
30.10.2007, 23:41
Hier spielt es in der Tat keine Rolle:
http://www.galileocomputing.de/openbook/c_von_a_bis_z/c_008_003.htm#Xxx999329
Dann is ja alle sok
werd ich mir mrerken
Gruß Jan
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.