mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Terminal Software mit Scripting Hex ->INT


Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hy

ich habe jetzt schon verschiedene "Terminal" Programme ausprobiert aber 
nix passendes gefunden.

Ich möchte das empfangene über den COM Port umwandeln... alles kommt als 
HEX am PC an.

8 Bit + 8Bit = 1Zahl
8 Bit + 8Bit = 2Zahl
8 Bit + 8Bit = 3Zahl

wieder von vorne...

wie kann ich dem Terminal-Programm sagen das er jeweils zwei HEX Werte 
zusammenfasst und mir in eine lessbare Zahl wandelt...

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich möchte das empfangene über den COM Port umwandeln... alles kommt als
> HEX am PC an.

Tatsache? Ich dachte PCs arbeiten immer noch binär. Aber wenn es schon 
in HEX ankommt, arbeitet doch bestimmt auch das Terminalprogramm in HEX.

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja klar kommt es binär an...
die Anzeige von HEX ist ja auch kein Problem. Nur die Anzeige von ASCII, 
da es ja schlecht wissen kann das immer 16Bit ein Block sind...
also vielleicht ne Idee ??

Autor: F. Kriewitz (freddy436)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde mich mal an den Author von "HTerm" wenden (Treibt sich u.a. 
auch hier herum), dort gibt es eine Option "Receive bitmask", ich weis 
zwar nicht genau was das sein soll, aber ich könnte mir vorstellen das 
das in die Richtung geht.

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt genug opensource-Terminalprogramme. Die kann man problemlos 
leicht modifizieren.
Wenn dir das zu kompliziert ist, zeichne die empfangenen Daten in eine 
Binärdatei auf und stelle den Inhalt anschliessend wie gewünscht dar.
Wenn dir das auch zu kompliziert ist, bist du in einem 
Mikrocontrollerforum falsch und du solltest einen Auftrag an eine 
Softwareentwicklungsfirma erteilen.

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja das ganze sollte schon in Real time funktionieren. aufzeichnen geht 
daher leider nicht.

Lieber "Hans" wenns so einfach ist erklärs mir doch einfach kurz! Flotte 
Sprüche helfen nicht weiter...

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja das mit den BitMask scheint die richtige Richtung zu sein. Leider 
geht das nur bis 8Bit... mehr scheint kein Programm zu erkennen, da das 
ja die längste Kombination bei der Übertragung ist...

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ja das ganze sollte schon in Real time funktionieren. aufzeichnen geht
> daher leider nicht.

Davon hattest du nichts geschrieben. Aber ein modifiziertes 
Terminalprogramm macht auch das.

> Lieber "Hans" wenns so einfach ist erklärs mir doch einfach kurz! Flotte
> Sprüche helfen nicht weiter...

Das merkt man.
Patche den Code einfach so:
- while(1){
-   c=getchar();

+ int i=0;
+ char a[6];
+ while(1){
+   c=getchar();
+   a[i]=c;
+   if (i==0) printf("%s",hex3(s,a));
+   free(s);
+   i++; i%=6;

Ist das kurz genug? Je nachdem welchen Code du verwendest, ist die 
hex3-Funktion evtl. leicht anders implementiert. Aber das bekommst du 
sicherlich hin.

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.