Hallo
So checke ich meinen asuro:
Code:
#include <asuro.h>
unsigned char sw_data;
unsigned int data[2];
int main(void) {
Init();
SerWrite("\nHallo\nBatterie: ",17);
PrintInt(Batterie());
do {
sw_data=PollSwitch();
if (1) { // 1 bedeutet: diese Funktion wird getestet
SerWrite("\n",1);
PrintInt(sw_data);
}
if (0) {
LineData(data);
FrontLED(ON);
SerWrite("\n",1);
PrintInt(data[0]);
SerWrite("-",1);
PrintInt(data[1]);
}
if (0) {
OdometrieData(data);
SerWrite("\n",1);
PrintInt(data[0]);
SerWrite("-",1);
PrintInt(data[1]);
}
}while (1);
return 0;
}
In asuro.c wird der Tastenwert eingelesen und die Zuordnung der einzelnen Bits zu den Tastern eingestellt. An dieser Stelle kann man seinen asuro an die Widerstände anpassen, quasi "kalibrieren":
Code:
return ((10240000L/(long)i-10000L)*63L+5000L)/10000;
Bei mir reichte das Ändern von 62 auf 63 in der Formel, es gibt da einige verschiedene Varianten...
Gruß
mic
Lesezeichen