Hallo
Gut, dass ich meine Fühler noch nicht motiert habe. Willkommen bei den Testern:)
Nun bin ich endlich auch in der Lage eigene Programme zu kompilieren und zu flashen. Etwas gewöhnungsbedürftig ist das direkte Durchstarten nach dem Flashen:
Bild hier
http://www.youtube.com/watch?v=ZfRjgjcQ1rY
Mein erstes Testprogramm:
Code:
// Dieses Testprogramm läßt beim NIBObee alle LEDs blinken. 14.11.09 mic
#include <nibobee/iodefs.h> /* muss immer als erste Datei eingebunden werden */
#include <nibobee/led.h> /* Funktionen fuer die LEDs */
#include <nibobee/delay.h> /* stellt die delay Routine zur Verfügung */
#include <nibobee/sens.h> /* Funktion der Fühler einbinden */
int main(void) {
led_init(); // IO-Ports der LEDs als Ausgänge konfigurieren
sens_init(); // und Fühler aktivieren
led_set(LED_L_RD, 1); // Linke rote LED an
led_set(LED_R_RD, 1); // Rechte rote LED an
led_set(LED_R_YE, 1); // Linke gelbe LED an
led_set(LED_L_YE, 1); // Rechte rote LED an
while(!sens_getLeft() && !sens_getRight());
while(1==1) { // Endlosschleife (1==1 ist immer wahr!)
led_set(LED_L_RD, 1); // Linke rote LED an
delay(250); // Eine halbe Sekunde warten
led_set(LED_L_RD, 0); // Linke rote LED aus
delay(500); // Eine halbe Sekunde warten
led_set(LED_R_RD, 1); // Rechte rote LED an
delay(250); // Eine halbe Sekunde warten
led_set(LED_R_RD, 0); // Linke rote LED aus
delay(500); // Eine halbe Sekunde warten
led_set(LED_R_YE, 1); // Rechte gelbe LED an
delay(250); // Eine halbe Sekunde warten
led_set(LED_R_YE, 0); // Rechte gelbe LED aus
delay(500); // Eine halbe Sekunde warten
led_set(LED_L_YE, 1); // Linke gelbe LED an
delay(250); // Eine halbe Sekunde warten
led_set(LED_L_YE, 0); // Linke gelbe LED aus
delay(500); // Eine halbe Sekunde warten
}
return 0; // Diese Zeile ist eigentlich nicht
// notwendig, da das Programm sie wegen
// der Endlosschleife nie erreichen
// wird, der Compiler gibt jedoch
// ansonsten eine Warnung aus.
}
Das Installieren der Lib war etwas zäh, weil in den Dateien nicht durchgängig die Headerdateien mit <> bzw. """ includet sind. Deshalb mußte ich alle Dateien in den AVR-Pfad kopieren (den ich eigentlich nicht verändern wollte). Desweiteren habe ich in iodefs.h die Modellabfrage auskommentieren müssen. Das ist aber eher ein Problem vom KamAVR.
Hier vermisse ich etwas die All-Inklusive asuro-Lib. Beim Bienchen-Konzept mit mehreren Teildateien wird nur das eingebunden was auch benötigt wird. Aber ob das ein paar Bytes mehr oder weniger sind, fällt bei der Übertragungsgeschwindigkeit nicht auf.
So, jetzt kann ich endich richtig starten. Mal sehen was das Bienchen so drauf hat:)
Gruß
mic
Lesezeichen