Bitmuster sinnvoll ausgeben

Gast #364061
Hallo Leute.
ich möchte ein Bitmuster über einen uC-Port ausgeben.
Jedes Bitmuster ist eine Zeichen, also z.B.

a=10000000000111111100001110001110010011100000100100001001011111

wobei "1" ein 25ms High und ein 75ms Low-Impuls ist wogegen "0" ein
100ms Low-Impuls ist.

Eine Idee wäre es, eine 1 als 0xc0 zu definieren und 0 als 0x00 und die
Zeichen dann seriell ausgeben zu lassen.
Bestimmt gibt es eine bessere Idee. Ich habe sowas, glaube ich, schon
mal im Code des Butterfly gesehen, aber ich hab's nicht vertsanden.
Optimal stelle ich mir das so vor, dass ich etwas wie
write_ir("Test");
habe und die Zeichen dann so wie ich die Bitmuster ermittelt habe,
ausgegeben werden.
25ms ist ja schon ne elend lange Zeit.


Ich würde nen 25ms Timerinterrupt aufsetzen und dann pro Bit von 4
runterzählen und ist das Bit 1, dann bis zum nächsten Interrupt 1
ausgeben. Das geht am genauesten mit dem set bzw. clear pin on
compare.


Mit der UART geht das keinesfalls, da die ja immer ein Start- und
Stopbit ranhängt.


Peter
Gast
Die Uart brauche ich ja noch um die Zeichen einzulesen, die ich ausgeben
will.
Ich hatte da ehr an so eine Routine gedacht wie ich sie für die Ausgabe
der Zeichen ans Display via Schieberegister benutze.

Das Problem ist eben bloß, dass das Display es versteht, wenn ich ein
"A" ins Datenregister schiebe, wogegen ich hier eben ein "A"
erstmal übersetzten muss in die 64 Bit
ich muss also erst mal irgendwo hinterlegen, dass "a" (siehe oben)
ist und dann das Zeug am Port Pulsen. Die Idee mit dem Interrupt ist
aber schon mal gut.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.