Hallo zusammen, ich muss ein 8-bit Signal erfassen, bzw. dekodieren. Wie das Signal aussieht, sieht man auf dem Bild. Die "Bitlänge" ist 0,68ms (0,34ms für high und 0,34 für low oder 0,17ms für high und 0,51ms für low), das Telegramm ist insgesamt 5,8ms lang und der Abstand zwischen den Telegrammen ist 10,6ms. Das Codieren erfolgt über die Länge des Pegels. Bei 0,34ms high und 0,34ms low, heißt 0, bei 0,17 / 0,51 ist 1. Es muss nicht unbedingt ein Mikrocontroller sein. Gibt es vielleicht eine IC mit einem Eingang und acht Ausgängen, die entsprechend des Telegramms gesetzt werden? Das wäre genau das, was ich brauche. Danke Euch.
Hemi 8. schrieb: > Gibt es vielleicht > eine IC mit einem Eingang und acht Ausgängen Nein, sicher nicht (es sei denn, es handelt sich um ein verbreitetes System, das du uns nicht verraten willst). Für ein UART passen die Signale nicht ohne Aufbereitung, und ausserdem sind einzelne UARTs sowieso fast ausgestorben, und 8 Ausgänge haben sie auch nicht. Ein Mikrokontroller mit 9 I/Os ist sicher die beste und auch einfachste Lösung. Ausserdem: so wechseln die 8 Ausgänge alle 10 ms - ist das auch so beabsichtigt? Georg
Es ist so, man hat acht Knöpfe. Diese werden abgefragt und je nach Zustand wird ein Bit im Telegramm gesetzt (1 = gedrückt oder 0 = nicht gedrückt). Auf dem Bildchen sind Köpfe drei, sechs und acht gedrückt. Der Empfänger des Telegramms schaut welche Bits gesetzt sind und schaltet entsprechend die Relais, die an den korrespondierenden Ausgängen hängen.
@ Hemi 850 (hemi850) >Das Codieren erfolgt über die Länge des Pegels. Bei 0,34ms high und >0,34ms low, heißt 0, bei 0,17 / 0,51 ist 1. Das kann man mit einem retriggerbaren Monoflop + nachgeschaltetem D-FlipFlop (74HC74) dekodieren. Die fallende Flanke speichert dabei den Ausgang des Monoflops. Bei kurzen Pulsen (Monoflop läuft noch) ist das 1, bei langen 0. >Es muss nicht unbedingt ein Mikrocontroller sein. Gibt es vielleicht >eine IC mit einem Eingang und acht Ausgängen, die entsprechend des >Telegramms gesetzt werden? Das wäre genau das, was ich brauche. Glaub ich nicht. Das kann man zwar diskret aufbauen, ist aber im Jahr 2017 eher unsinnig.
Mit einem Mikrocontroller erfassen, das ist nicht sonderlich schwer. Hat man einen Timer mit Interrupt kann man die Zeiten direkt ausmessen. Auf steigende und fallende Flanken triggern, die Zeiten dazwischen vom Timer lesen und mit vorgegebenen Zeitbereichen für Abstand, high und low vergleichen. Will man statt dessen pollen, dann mit 12 kHz, besser 25 kHz oder mehr sampeln, die aufeinander folgenden Samples gleichen Pegels zählen, und die Zählergebnisse mit vorgegebenen Zählbereichen vergleichen.
Hemi 8. schrieb: > Gibt es vielleicht > eine IC mit einem Eingang und acht Ausgängen, die entsprechend des > Telegramms gesetzt werden? Das wäre genau das, was ich brauche. Nicht eins, aber mit einer kleinen Handvoll ist das sicher kein Problem. Du brauchst schätzungsweise ein Monoflops zur Unterscheidung langer/kurzer Pulse und eins zum Erkennen des Telegrammrahmens. Außerdem brauchst du ein Schieberegister mit seriellem Eingang, parallelem Ausgang und Latch. Dazu noch ein bisschen Glue-Logik und die Sache könnte so gut wie gelaufen sein - das know-how nicht zu vergessen. Seit geschätzt mindestens 20 Jahren macht man soetwas allerdings eher mit einem kleinen Mikrocontroller für 2..3€.
Hemi 8. schrieb: > Es muss nicht unbedingt ein Mikrocontroller sein. Das wäre aber die einzige Möglichkeit, das Protokoll in einem IC abzuhandeln. > Gibt es vielleicht > eine IC mit einem Eingang und acht Ausgängen, die entsprechend des > Telegramms gesetzt werden? Nein. > Das wäre genau das, was ich brauche. Tja, was ich wirklich brauche, gibt's auch nicht. Unbegrenzt Geld und Freizeit und ewiges Leben. Unser Universum ist nunmal nicht wirklich fair. Finde dich damit ab...
c-hater schrieb: > Nein. > >> Das wäre genau das, was ich brauche. > > Tja, was ich wirklich brauche, gibt's auch nicht. Unbegrenzt Geld und > Freizeit und ewiges Leben. Ja du bist nen Spinner! Monoflop + Schieberegister ist nun wirklich kein Hexenwerk. Mit grösster Wahrscheinlichkeit hätte ich das mit je einem 4094, 4098 und 4011 schneller auf dem Steckbrett fertig als du funktionierenden Code im Controller. Muß jeder so machen wie er am besten kann. Vielleicht findet sich noch jemand der dem TO, so oder so, eine fertige Lösung serviert, falls er selbst weder das eine noch das andere kann...
@Praktika: Der TO kann C und Mikrocontroller, ist nicht das Problem. Ich mache halt solche Sachen lieber ohne Software, wenn es geht. Ich würde lieber ICs nehmen an der Stelle.
Nur zu, den geeigneten "Chipsatz" habe ich ja genannt :-) Mit Spinner warst nicht du gemeint...
Hemi 8. schrieb: > Ich würde lieber ICs nehmen an der Stelle. Sind µCs keine ICs? ;-) Warum schnitzt du dir nicht eins - z.B. ein CPLD o.ä.
praktika schrieb: > Ja du bist nen Spinner! Monoflop + Schieberegister ist nun wirklich kein > Hexenwerk. Doch, ist es. Die Forderung war nämlich: Es sollte EIN IC sein. Fazit: Wer Lesen kann, ist klar im Vorteil...
c-hater schrieb: > praktika schrieb: > >> Ja du bist nen Spinner! Monoflop + Schieberegister ist nun wirklich kein >> Hexenwerk. > > Doch, ist es. Die Forderung war nämlich: Es sollte EIN IC sein. > > Fazit: Wer Lesen kann, ist klar im Vorteil... Meine Güte, du bist so schlau! Es ist wohl meinem Analphabetismus zuzuschreiben daß ich das nicht sofort erkennen konnte...
praktika schrieb: > Es ist wohl meinem Analphabetismus > zuzuschreiben daß ich das nicht sofort erkennen konnte... Du bringst da was durcheinander, das heisst Legasthenie, aber das ist auch Folge der Krankheit. Georg
Hemi 8. schrieb: > Es muss nicht unbedingt ein Mikrocontroller sein. Gibt es vielleicht > eine IC mit einem Eingang und acht Ausgängen, die entsprechend des > Telegramms gesetzt werden? Das wäre genau das, was ich brauche. Na dann ist ja gut. Die üblichen Encoder/Decoder können nur 4 bit, haben aber eine Adresse. http://www.spelektroniikka.fi/kuvat/PT2260.pdf Es gibt auch 8 bit http://www.phas.ubc.ca/~michal/phys319/CIP-8_encoder.pdf Ist natürlich auch bloss ein vorprogrammierter uC. c-hater schrieb: > Doch, ist es. Die Forderung war nämlich: Es sollte EIN IC sein. Na ja, man kann MonoFlops auch als RC Kombinationen aufbauen, es wird dann halt nicht so besonders zuverlässig. Aber wenn der Kunde unbedingt Pfusch will.... Ein 74AHC595 hätte im Gegensatz zum 74HC595 immerhin Schmitt-Trigger Eingänge. Mit einem Differenzierer am CLK Eingang könnte er das Eingangssignal als bit D übernehmen. Die Äusgänge würden währenddessen durchgeschoben werden. Ein Latch-Signal könnte man ebenfalls versuchen über ein RC Glied zu gewinnen, aber beide mit 74HC123 zu erzeugen hätte den Vorteil, auch den 74HC595 benutzen zu können.
8Kanal Memoryswitch aus dem Modellbau. 20ms Wiederholung, 1ms->aus, 2ms->an. Zeiten passen nicht ganz... Äxl
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.