Hallo zusammen,
ich versuche aktuell ein kleines Programm für meinen NIBObee zu schreiben, in dem ich die Zeit seit Systemstart benötige.
Im Internet habe ich dazu relativ wenig gefunden. Ich habe aus unterschiedlichen Quellen mir folgenden Quellcode gebastelt:
...
/* Includes für den Zugriff auf die NIBObee Bibliothek */
#include <nibobee/iodefs.h> // digitale Ein-/Ausgänge allgemein
#include <nibobee/analog.h> // analoge Eingänge
#include <nibobee/base.h> // Basisfunktionen / Initialisierung
#include <nibobee/clock.h> // Zeitfunktionen
#include <nibobee/led.h> // Ein-/Ausschalten der LEDs
#include <nibobee/motpwm.h> // Ansteuerung der Motoren
#include <nibobee/odometry.h> // Auswertung der Drehimpulse der Räder
#include <nibobee/sens.h> // Fühler
#include <nibobee/line.h> // Liniensensoren
#include <nibobee/delay.h> // Warte-Funktion
#include <nibobee/motpid.h> // PID Regler für Motoren
#include <stdlib.h> // Standardbibliothek C (Math)
...
uint32_t timeSinceStart() {
// Berechne Zeit seit Einschalten in ms
return (clock_sec*1000)+clock_ms;
}
...
int main() {
// Initialisierung aller Con-Ports
enable_interrupts();
clock_inc_irq(0,0); // interne Uhr starten
activate_output_group(IO_LEDS); // LED bits als Output
sens_init();
analog_init();
motpwm_init();
line_init();
led_init();
odometry_init();
sei();
...
while(1) {
...timeSinceStart()... // hier greife ich auf die Funktion zurück
}
}
Bei mir sind aber sowohl clock_sec, clock_ms und dann natürlich auch mein Funktionswert immer 0. Könnt ihr mir weiterhelfen, woran das liegen könnte?
Referenzen:
1)
www.roboter.cc/index.php?option=com_nicaiwci&view=sourcefile&projectid=1753&fileid=2397&Itemid=41
2)
doku.nibo-roboter.de/niborobolib_301/nibobee/clock_8h.html#a4d4947d87b9d195438433c948c0ab510
3)
stackoverflow.com/questions/29943266/get-clock-sec-from-nibobee-library-clock-h
Grüße Niklas