Hallo
Du mußt die Werte in Zeichenketten umformen:
Code:
#include "asuro.h"
// aus: https://www.roboternetz.de/phpBB2/ze...=328394#328394
void PrintInteger(unsigned int x)
{
char ergebnis[5] = {'0','0','0','0','0'};
while (x >=10000) { ergebnis[0]++; x -=10000; }
while (x >= 1000) { ergebnis[1]++; x -= 1000; }
while (x >= 100) { ergebnis[2]++; x -= 100; }
while (x >= 10) { ergebnis[3]++; x -= 10; }
ergebnis[4] +=x;
SerWrite(ergebnis,5);
}
int main(void)
{
...
for(i=1;i<100;i++){
PrintInteger((ldata[j]);
j++;
PrintInteger((ldata[j]);
j++;
};
...
}
(nicht getestet)
ldata[100]; bietet nur Speicherplatz für 50 Wertepaare.
Nach dem Einlesen eines Datenpaares solltest du kurz warten, 100 Werte sind mit 8MHz ruckzuck eingelesen: LineData(data); Sleep(255);
Nach SerWrite() sollte ein Zeilenvorschub ausgegeben werden sonst wird möglicherweise nichts angezeigt: SerWrite("\n\r", 2);
Ohne Motoransteuerung kann man den asuro auch von Hand über die Linie schieben.
Gruß
mic
Lesezeichen