Auch wenn es im ersten Moment nicht so einleuchtend erscheint, aber genau das soll diese Schaltung bewirken.Zitat von Reeper
Die underschiedlichen Wiederstände sind für den Analogwandler als unterschiedliche Spannung zu messen. Damit nich jeder das Rad neu erfinden muss, wird zum ASURO eine Bibliothek von sinnvollen und nützlichen Funktionen geliefert. Eine davon heist PollSwitch(). Diese liefert dir dann für jeden betätigten Taster einen vordefinierten Wert.
Als Beispiel einen Ausschnitt aus dem Selbstest des ASURO. Du kannst hier sehen wie jeder Taster eine andere Aktion auslöst.
Zu deiner Frage ob sich auch noch zusätzliche Taster parallel zu den vorhandenen anbringen lassen - im Prinzip JA (aber warum). Du hast halt keine Möglichkeit festzustellen, ob der Orginal oder dein zusatz Taster betätigt wurde.
/* ----- Switch Test ---- */
/* K1 -> Status LED Green */
/* K2 -> Status LED RED */
/* K3 -> Line LED */
/* K4 -> Break LED Left */
/* K5 -> Break LED Rigth */
/* K6 -> Motor Left */
/* ---------------------- */
void SwitchTest(void)
{
unsigned char sw,tmp;
MotorDir(FWD,BREAK);
sw = PollSwitch();
StatusLED(OFF);
FrontLED(OFF);
BackLED(OFF,OFF);
MotorSpeed(0,0);
tmp = 0;
if (sw & 0x01) MotorSpeed(200,0);
if (sw & 0x02) {
BackLED(OFF,ON);
tmp = ON;
}
if (sw & 0x04) BackLED(ON,tmp);
if (sw & 0x0FrontLED(ON);
if (sw & 0x10) RED_LED_ON;
if (sw & 0x20) GREEN_LED_ON;
}
/* END Switch Test ------------------------------ *
Lesezeichen