Zwei 90S2313 verbinden und definierte Daten lesen

Gast #180261
Lesenswert?

(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.
Gast #180262
Lesenswert?

Tja, dann kämpf dich mal weiter bis zum Wiki durch. Auch im Datenblatt
steht das ellenlang beschrieben samt kleinen Beispielen, zumindest bei
den ATMegas, soviel sollte sich das nicht unterscheiden.

Falls du dir wegen der Zeichen unsicher bist, häng doch einfach ein
Oszi dran und teste.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren