mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Terminalprogramm mit space und mark pro Byte?


Autor: Sven Stefan (stepp64) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe zwar schon einige Beiträge dazu gelesen und bin auch inzwischen 
der Meinung, das es soetwas nicht gibt, aber eventuell gibt es ja doch 
so ein Programm:

Ich bin gerade dabei mehrere PIC µC über die UART und 
CAN-Bustreiberbausteine miteinander zu verbinden. Mein entwickeltes 
Protokoll soll so aussehen, dass es ein Start- und ein Stoppbyte gibt, 
bei denen das 9. Datenbit gesetzt sein soll. Bei allen anderen Bytes 
dazwischen soll das 9. Bit gelöscht sein. Im PIC selbst kann man diese 
Funktion einschalten und das 9. Datenbit auch auswerten.

Nun würde ich gerne die Funktion meiner Schaltung und meines Programmes 
erst einmal mit einem Terminalprogramm testen, bevor ich alles an einen 
Bus hänge. Und hier scheitere ich zur Zeit, da es scheinbar kein 
Terminalprogramm gibt, bei dem ich für jedes Byte getrennt das 
Paritätsbit setzen oder löschen kann. Kennt jemand von euch ein solches 
Programm? Wie könnte ich sonst die Funktion meines Protokolls testen? 
Interessant wird es ja auch, wenn mehrere Schaltungen an meinem Bus 
hängen. Das würde ich auch gerne erst mit einem PC testen wollen.

Vielen Dank für eure Hilfe

Sven

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich vermute mal; selber schreiben...
Beim PC dann wohl die COM auf passende Parity setzen und den 
Paritätsfehler bei Deinen Start- und Stoppbytes auswerten.

Oder eben einen PIC als Sbiffer ranhängen und den Kram aufbereitet 
normal zum PC schicken, wenn Du lieber PIC als PC programmierst.

Gruß aus Berlin
Michael

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Sven Stefan (stepp64) Benutzerseite

>Ich bin gerade dabei mehrere PIC µC über die UART und
>CAN-Bustreiberbausteine miteinander zu verbinden. Mein entwickeltes
>Protokoll soll so aussehen, dass es ein Start- und ein Stoppbyte gibt,
>bei denen das 9. Datenbit gesetzt sein soll.

Wenn du schon CAN-Treiber verwendest, dann mach doch gleich richtig CAN. 
Dann kümmert sich der CAN-IC um den ganzen Quark.

MFG
Falk

Autor: Sven Stefan (stepp64) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Michael:
Das mit einem Sniffer-PIC hatte ich mir auf dem Heimweg auch schon 
überlegt. So werde ich das wohl auch machen. Der bekommt dann die Daten 
erst mal als 8N1 vorgesetzt und verschickt die empfangenen Daten 
aufbereitet über den Bus.

@Falk:
Leider kann ich nur PIC-Assembler und irgendwie erscheint mir das ganze 
CAN-Protokoll zu aufwändig um es für meine Zwecke zu verwenden. Und 
ehrlich gesagt versteh ich es auch nicht richtig. Die CAN-Treiber, die 
ich in meiner Schaltung habe (PCA82C250), haben keine Intelligenz. Die 
setzen halt nur die Schnittstelle um von UART auf CAN. Falls du aber 
eine Adresse weist, wo die ganze CAN Geschichte für PIC-Assembler leicht 
verständlich in Deutsch beschrieben ist, dann würde ich mich über eine 
Info freuen. Sprut kenne ich aber schon.

Danke für Euer Interesse und nicht zu viel Schnee heute Nacht wünscht

Sven

Autor: avr (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sven,

auch für dein Problem gibt es schon was.

Docklight (http://www.docklight.de/index_de.htm) hat eine
Skripterweiterung die sowas kann.
Unter Sample Scripts (http://www.docklight.de/examples_en.htm)
gibt es ein Beispiel: ParitySwitch_9BitProtocols.zip

Demonstrates how to switch the parity settings temporarily within one 
Send Sequence. This is useful for protocol that require a 9th data bit, 
e.g. for device addressing on a bus (9 bit protocol, 9 data bits).

Das müßte doch passen.

avr

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.