mikrocontroller.net

Forum: Compiler & IDEs Bitmuster sinnvoll ausgeben


Autor: flyingwolf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: flyingwolf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.