Hallo
Mit der orginalen CD-Library könnte das so funktionieren:
Code:
#include "asuro.h"
#include <stdlib.h>
int main(void)
{
Init();
unsigned int data[2];
int i;
int T9;
int T10;
char zeichenkettenT9[4];
char zeichenkettenT10[4];
while(1)
{
{
for(i=0; i<5000; i++)
Sleep(72);
}
LineData(data);
T9=data[0];
itoa(T9, zeichenkettenT9, 4);
T10=data[1];
itoa(T10, zeichenkettenT10, 4);
SerWrite("T9: ", 4);
SerWrite(zeichenkettenT9, 4);
SerWrite("/n/r", 2);
Sleep(216);
SerWrite("T10: ", 5);
SerWrite(zeichenkettenT10, 4);
SerWrite("/n/r", 2);
Sleep(216);
}
}
Ich habe es nicht getestet, möglicherweise gibt es noch ein Problem mit der Endekennung der zeichenketten-Strings. FrontLED ist mit Absicht noch nicht eingeschaltet. (SerPrint erfordert die aktuelle Lib die ich für Einsteiger nicht empfehlen möchte)
Die Datei signal.h ist veraltet, man sollte besser interrupt.h verwenden. Das kann man in asuro.h ändern:
Code:
#ifndef ASURO_H
#define ASURO_H
#include <avr/io.h>
#include <avr/interrupt.h>
//#include <avr/signal.h>
#include <stdlib.h>
Die Library des asuro, sie ist die Verbindung zwischen dem Programm und der Hardware (asuro.c und asuro.h), verwendet den C-Kompiler GCC. WinAVR und AVR-GCC sind eine Sammlung von verschiedenen Dateien die den Zugriff auf die AVR-Kontroller ermöglichen (im asuro steckt ein ATMega8 von AVR). Diese Dateien werden laufend verbessert und geändert. Weil die Library des asuro auch diese Dateien verwendet weist der Kompiler (GCC) darauf hín, dass die Datei signal.h inzwischen durch die Datei interrupt.h ersetzt wurde. Beide Dateien steuern die Zugriffe auf die Interrupts, die beim asuro z.b. für die Motor-PWM, das IR-Trägersignal und die Sleep()-Funktion zuständig sind. (btw kann ein Update von GCC unerwartete Effekte verursachen, ist aber gelegentlich bei Wechsel des Betriebssystems nötig)
Gruß
mic
Lesezeichen