Gast
#180261
(Ich glaube, ich habe eben im falschen Forum gepostet, deshalb hier noch einmal!) Ich habe ein Problem, dass mir schon eine Woche schlaflose Nächte bereitet und hoffe nun hier auf ein paar aufmunternde Worte und etwas Hilfe. a) Ich treffe die Annahme, dass ein AT90S2313 (getaktet mit 7,3728MHz) jeweils einmal eine der folgenden Daten über TxD ausgibt. Dabei ist die Ausgabe als Reaktion auf einen Tastendruck zu verstehen. Dabei handelt es sich um: 0xC1 -> Ausgabe für Taste 1 0xC2 -> Ausgabe für Taste 2 0xC4 -> u.s.w. 0xC8 -> 0xD0 -> 0xE0 -> Ausgabe für Taste 6 (Anmerkung: 9600Bd, 8 Daten Bits, 1 Stop Bit, no Parity, LSB first) b) Der in a) genannte Sachverhalt lässt sich leider nicht beeinflussen/ändern c) Ein zweiter AT90S2313 (gleiche Taktung) soll mit RxD direkt an den TxD aus a) angeschlossen werden. Was nun passieren soll, kann ich zunächst nur mal in Worte fassen. Er soll in einer Routine prüfen, ob etwas an RxD empfangen wird, wenn ja - ob es eins der o.g. 6 Stück ist - wenn ja, dann soll er an einem Pin ein Relais oder einen Schaltkontakt herstellen und dann wieder prüfen, ob etwas empfangen wird. Also werden doch auch 6 I/O Pins als Ausgänge benötigt. Ich habe absolut keine Idee, wie ich das in C umsetzen kann. Hab auch schon das super WIKI-Tut durch, aber da ist nur das Senden mit dem UART genauer beschrieben.