Hab einen kleinen Bug gefunden, ist nicht schlimm aber wenn es keine Mühe macht könnte man es bei einer der nächsten Versionen beheben: Wenn man eine Datei gesendet hat, bleibt diese anscheinend noch geöffnet. Erst als ich erneut auf Datei senden gegangen bin, war der Schreibzugriff auf diese Datei frei.
@Ralf Das läßt sich sicherlich machen, aber bisher hab ich noch keine Idee wie genau. Bräuchtest du das denn beim Datei-Senden oder beim Senden der Eingabezeile? Längerfristig habe ich geplant, in der Eingabezeile bestimmt Steuersequenzen einzubauen @Benedikt Ich kann diesen Bug bei mir nicht reproduzieren. Ich habe eine Datei erstellt und bin auf endlos senden gegangen. Während des Sendens konnte ich die Datei verändern und speichern. Die Änderungen wurde sogar korrekt sofort auch gesendet. Kannst du mir eine genaue Beschreibung der Schritte geben, die bei dir den Fehler verursachen?
Hi Tobias, > Bräuchtest du das denn beim Datei-Senden oder beim Senden der > Eingabezeile? Ich weiss nicht, ob es auch in der Eingabezeile Sinn macht, ich muss erstmal mit dem Prog spielen. Ralf
Ich hatte ein BMP an einem uC geschickt, gemerkt dass es gedreht war, daher habe ich die Datei in einem Bildbearbeitungsprogramm geöffnet, die Datei um 90° gedreht und als die Übertragung in Hterm fertig war auf Speichern gedrückt: Meldung: Auf die Datei kann nicht zugegriffen werden. Dann bin ich in Hterm auf Send File gegangen und nun ging das speichern. Das ganze kann ich reproduzieren.
@Tobias: Mir ist noch ein "Feature" eingefallen, aber erst mal die Erklärung zu meiner Frage mit dem Delay zwischen Zeichen/Zeilen: Wenn ich beispielsweise eine Controller-Schaltung bastle, die ihre Befehle vom PC bekommt, müsste ich immer den Befehl in der Controller-Software implementieren, und direkt drauf in der PC-Software, um den Befehl testen zu können. Wenn ich das ganze manuell in einer Textdatei mache, kann ich mich voll auf eine Software konzentrieren. Der Knackpunkt wäre dann aber (als Beispiel) folgendes: Wenn der Controller z.B. eine gewisse Zeit braucht, um den Befehl abarbeiten zu können, würde ja beim Senden ohne Wartezeit der Puffer überlaufen. Ich weiss, könnte ich mit Handshake erschlagen, aber wenns in der endgültigen Version kein Handshake geben soll, bringts ja nix. Deswegen die Sache mit dem Delay. Zu dem "Feature": Wie wäre es, wenn dein Terminal-Programm (aus dem gleichen Grund wie oben) die nächste Zeile erst dann sendet, wenn z.B. vom Controller ein ACK kommt? Ob das in deiner Software Sinn macht, musst aber freilich du beurteilen ;-) Ralf
@Tobias Hallo, Ich habe gerade dein Programm im Internet gefunden und nach ersten Testläufen muss ish zugeben, dass es einfach super ist. :-) Jedoch habe ich auch schon den ersten kleinen BUG gefunden. Und zwar: Wenn man versucht Zeichen zu senden, solange man NICHT mit einem COM-Port verbunden ist kommt es zu einem Programmabsturz. mfg Georg
Hi Tobi! Also das Programm ist wirklich im Vergleich zum Hyper Terminal genial! Ich verwende dieses, um meinen uC über die UART-Schnittstelle, Daten in den Datenbuffer zu schreiben. Schicke ich nun jedes Zeichen mit dem custom send einzeln, funktioniert alles wie geplant. Schicke ich jetzt aber die komplette Zeichenkette, so werden die einzelnen Zeichen zu schnell hinter einander geschickt. => meine UART-Schnittstelle kann diese nicht mehr in der richtigen Reihenfolge abarbeiten, da einfach das Einlesen ein bisschen Zeit benötigt. Kann ich jetzt zum Bsp. ein ASCII-, dann ein paar HEX und dann ein paar DEZ-"Zeichen" schicken und zwischen jedem eine Pause einbauen?? Bsp: Send on Enter: Custom Input: a(ASC), (HEX)AC,DE,48,AA,BB,CC, (DEZ)10,10,51,120 ASend d.h. nach jedem Beistrich sollte eine EINSTELLBARE Pause vorhanden sein. Funktioniert das mit deinem Programm?? Falls ja, wie?? Vielen dank im Voraus, mfg Hannes
>Schicke ich jetzt aber die komplette Zeichenkette, so werden die >einzelnen Zeichen zu schnell hinter einander geschickt. Wenn ich das richtig verstehe, dein Programm auf dem Mikrocontroller ist zu langsam um die Zeichen, die über die UART reinkommen zu verarbeiten? Versuchst du das Problem nicht auf die falsche Art zu lösen? Mir fielen da folgende Lösungsmöglichkeiten ein: 1. Verarbeitung beschleunigen z.B. Takt erhöhen oder Programmteile verkürzen, umordnen 2. Baudrate runternehmen 3. Flusssteuerung (RTS/CTS) 4. erst Befehl einlesen ,dann verarbeiten 5. Interruptgesteuerter UART Betrieb 6. Empfangspuffer vergrößern Nur so als Richtgrösse: Ich habe derzeit kein Problem auf einem AVR mit 8MHz über die UART mit 500kBit zu empfangen und zu senden ohne das etwas verloren geht. Die Routinen sind in C geschrieben.
ahh du schon wieder Wolfram =) 1. Takt ist 32MHz 2. Baud hab ich zur Zeit auf 38400, werd ich mal runtersetzen 3. mit Flusssteuerung hab ich noch nie gearbeitet =>muss diese auch am uC initialisiert werden, oder macht das nur das Hterm Programm? 4. .... 5. verwende interruptgesteuerten UART Betrieb 6. wie vergrößer ich den Empfangsbuffer?? Hab einen Programmteil von mir angehängt, erklärt vielleicht den 4. Punkt =) mfg Hannes
zu 1. 32 MHz , das ist doch ein AVR? entweder hast du den sehr übertaktet dann würde ich es als mutig bezeichnen die eeprom zu benutzen oder einfach nur ein Schreibfehler 38400 Baud sind kein Problem Flusssteuerung heisst du benutzt einen zusätzlichen Pin am Mikrocontroller um zu signalisieren wenn du nichts mehr haben willst das Terminalprogramm muss darüber informiert sein, google mal zu RTS/CTS Dein Programm 1. Fehler globale Variable Interrupt nicht volatile definiert Ich weiss nicht was der Interrupthandler soll wenn du dann doch pollst du liest ein Byte und schreibst/liest EEPROM ,kein Wunder das du Timingprobleme bekommst. Entkopple das Befehl einlesen in Puffer dekodieren/gültigkeit des Puffer überprüfen ausführen evt. Bestätigung senden löst dein aktuelles Problem ohne das du den Interruptbetrieb benutzen musst. Ich empfehle dir aber dringend ihn zu benutzen da dann auch weitere Befehle einlaufen können während du einen Befehl bearbeitest (mit doppelpuffer) Wenn du die Fragen ausführlicher diskutieren willst, nimm ein anderes Forum (z.B. GCC) und mache einen neuen Thread auf,es passt nicht in diesen Thread
Zur Flusssteuerung: Wird von HTerm erst ab der nächsten Version unterstützt.
Thread: http://www.mikrocontroller.net/forum/read-8-160474.html#new folgende Aussage: >Wenn ich z.B 2 Rechner per Bluetooth über dem SPP(serial port profil) >verbinde, dann wird eine viruelle Serielleschnittstelle vom Bluetooth >Trieber angelegt. Wenn ich z.B. mit HTerm eine 3 MB grosse Datei über >diese virtuelle Serielleschnitstelle(z.B COM10)schicke, wobei die >Schnittstelle mit 115 kbaud geöffnet ist dann zeigt das HTerm ca. 60 >kbyte/s. Kann das mal jemand überprüfen, bei 115Kbaud muessten es eigentlich doch nur 11..12Kbyte/s sein
Kennt jemand ein Programm mit dem man auch den TxD-Pin steuern kann? (Ich brauche keine Terminal-Funktionalität, nur "BitBanging")
@Wolfram: Ich antwort mal direkt im anderen Thread @Caruso Wenn du ein wenig programmieren kannst, dann sollte sich das schnell selber machen lassen. Die WinAPI bietet eine Funktion zum Setzen des TxD-Pins.
Hallo Tobi, dein Programm gefällt mir sehr gut. Habe mich allerdings gleich besonders blöd angestellt und dabei einen kleinen Schönheitsfehler gefunden. Wenn man das Programm noch nicht mit einer Schnittstelle "connected" hat, trotzdem in der Sendezeile was eingibt, den "ASend"- Button betätigt und in dem Fenster "Start" anklickt, dann schmiert dein Programm ab. ansonsten wirkt das tool auf den ersten blick so, als wäre es genau das was ich gesucht habe. Bleib am Ball! P.S. bin zu faul ;) den ganzen Thread durchzulesen und weiss deshalb nicht ob es schonmal jemand erwähnt hat.
Hier hatte es noch keiner gschrieben, aber der Fehler ist mir schon bekannt und in der nächsten Version schon beseitigt. Trotzdem danke für den hinweis (-:
HAllo Tobi, Martin hat am 04.03.05 geschrieben , das es sich buttons wünscht, mit den man vorgefertigte Nachrichten abschicken kann. Diesen wünsch würde ich jetzt gerne nochmal äußern, da mit das auch sehr gut gefallen würde. z.b. ein zusätzliches Fenster in dem man selbst buttons anlegen (rechte Maustaste -> add buttons). hinter diesen Buttons könnte man dann strings ablegen (hex/ascii/bin/...), die bei click gesendet werden. Eine "Benamung" des Buttons wäre auch cool. Vieleicht könnte man in diesem Fenster auch mehrere "Tabs (Reiter)" einfügen, das man verschiedene Buttons nach Funktion sortieren kann. wäre einfach genial.... Beispiel siehe Dateianhang:
Ja, bin noch da :) Dein Vorschlag ist gut, allerdings werd ich das wohl nicht mit Buttons machen sondern als Listen. Du hast mich allerdings auf die Idee gebracht, dass man sich aus einem grossen Pulk an Strings eigene Sets zusammenstellen kann. Das werd ich denk ich mal einbauen. Namen werden auf jeden Fall möglich sein. Ausserdem wird man den Strings noch Hotkeys (F1-12) zuweisen können. Wenn ich Zeit hab (hoffentlich bald) gibts erstmal die nächste Version, bei der man immerhin 'Newline At' und 'Send on Enter' schon komplett frei umbelegen kann.
super, ich freu mich drauf... PS: habe mir in letzter zeit viele Terminal Programme angeschaut, aber muß sagen das deines, z.b. für die Entwicklung noch am besten ist. weiter so mfg. chris
Version 0.6.5 ist raus! Es gibt ein neues Format für die Konfiguration, dass leider nicht kompatibel ist. Ab sofort wird alles in XML gespeichert. Dafür gibt es ein paar andere schöne Neuerungen: CTS Flow-Control ist endlich eingebaut. 'Newline At' und 'Send on Enter' lassen sich komplett frei konfigurieren. Bei Send on Enter kann man angeben, welcher String davor und dahinter gehängt werden soll. Das ganze lässt sich wieder kompfortabel in allen 4 Formaten angeben. Zwar bisher nur direkt in der Cfg-Datei aber die Syntax ist (hoffentlich) recht simpel. Genaue Erklärungen gibts wie immer in der Hilfe. Auch braucht die Comport-Liste nicht mehr von Hand gepflegt werden. Die beim Start vorhandenen Ports werden automatisch übernommen und auch im laufenden Betrieb eingesteckte oder entfernte Ports werden automatisch in der Liste aktualisiert. Dann mal wieder viel Spaß mit dem Programm Tobi
Hi Tobi, fein daß die neue Version ´raus ist :-) Anfrage: ist es Absicht, daß bei CTS-FlowControl trotz "nicht CTS" 128 Bytes versendet werden, bevor der PC wartet? Oder liegt´s am Windoof?
Eigentlich sollte Windows die Übertragung selbstständig sofort stoppen, wenn CTS deaktiviert wird. Ich hab keinen Einfluss darauf, wie und wann das geschieht aber es scheint so, als würde Win noch den Puffer leersenden bevor es auf CTS reagiert. Fällt damit wohl unter Windows-Bug @All Wenn jemand Probleme mit nicht korrekt funktionierendem 'Newline at' hatte: Programm noch einmal neu herunterladen, dann läuft alles wie es soll.
>>Fällt damit wohl unter Windows-Bug
Ach, noch einer ?! ;-) Naja - mal gucken, wie sich das in der Praxis
auswirkt, weil die Ressourcen, mal eben noch schnell 128 Bytes
wegzubuffern, hat mein außenliegendes Gerät, für das das Handshake
wirken soll, gerade nicht mehr vorrätig. Ich kann mich erinnern, daß
das Handshake mal für jedes einzelne Byte funktioniert hat, muß aber in
einer früheren Windows-Version gewesen sein. Hmm, Dos vielleicht ;-)
Danke für die Aufklärung.
Ich könnt bei mir sonst die Möglichkeit einbauen, per Cfg-Datei die größe der internen Sendeeineinheit beim Dateisenden anzupassen. Dann wird es zwar langsamer aber im Gerät ist nur ein kleinerer Puffer nötig
Solange man die Puffergröße einstellen kann wäre das OK. Die Probleme mit CTS waren an einem echten COM Port, oder ? Beim FT232 weiß ich, dass dieser das Hardwaremäßig macht. Daher sollte es bei diesem funktionieren.
Nönö, ein echter Com-Port war´s, nix mit USB->Com. Ich würd´ die Einstellbare Puffergröße auch sehr schön finden. Wie gesagt, jedes Byte ist eines zu viel, wenn daer externe Controller "Halt" gesagt hat ;-)
Nettes Programm , aber kennt vielleicht jemand ein Programm, welches einen aktiven Comport mitloggert ? Comlite 32 läuft bei mir nicht mehr unter Xp mfg,f.H.
Ich find das hier super http://www.comp.lancs.ac.uk/~albrecht/sw/terminal/ Sehr klein und source gibts auch, einfach für eigene Sachen abänderbar. Gruß Dominik
Hallo allerseits, prinzipiell finde ich das Tool prima. Nur habe ich ein kleines Problem, wenn ich Daten zu einem AVR Butterfly übertragen will. Das geht nämlich (zumindest bei mir) nicht. Mit Hyperterminal kann ich Daten übertragen, also z.B. den Namen ändern. Dazu muss man 19200,8,n,1 einstellen und keine Flusssteuerung. Aber mit HTerm gelingt mir das nicht. Hatte vielleicht jemand das gleiche Problem und konnte es lösen? Joline
Nachtrag: Mit "Tool" meine ich natürlich HTerm. Ich habe gerade bemerkt, dass das bzgl. des Vorbeitrages nicht so klar rauskommt.
Sind denn die Steuerleitungen am Butterfly angeschlossen? So weit ich weiss, aktiviert Hyperterminal diese beim Verbinden. Vllt braucht das Board das. Sonst sollte eigentlich kein Unterschied bestehen.
Nein. Einfache 3-Draht-Verbindung. Ohne etwas an der Hardware zu ändern: Hyperterminal geht, HTerm nicht. :o( Stimmt aber nicht ganz. Inzwischen habe ich folgendes rausgefunden: Wenn man beim Senden bei HTerm bei "Send on Enter" CR auswählt, werden immerhin einige Zeichen übertragen. Also z.B. ich sende mit HTerm "12345[CR]", dann kommt im Butterfly "125" an, oder "12", oder ... Stelle ich ein anderes oder kein Endezeichen ein, kommt auch nichts beim Butterfly an. P.S. Ich versuche erstmal einfach nur den angezeigten Namen im Butterfly zu ändern. "Nicht beim Butterfly ankommen" heisst nicht, dass nicht wirklich was ankommt, sondern nur, dass die SW im Butterfly die Daten nicht als korrekt erkennt.
Hallo Thorsten, soweit ein wunderschönes Programm. Allerdings wird leider ein einzelnes Return (ohne dass weitere Zeichen davor sind) ignoriert. Gerade das wäre für mich sinnvoll. Ansonsten aber weiter so :-) Gruß Björn
Hallo Tobi, sehr schickes Terminalprogramm. Ich habe da noch ein paar Anregungen: - Für die neumodischen USB-Ports wären Baudraten >128000 wünschenswert (230400, 460800, 921600 usw.). - evtl auch frei progammierbare Baudraten. - der Eintrag 25600 bei Baud ist vermutlich um eine 0 zu kurz. Ciao Quix01
Bei mir sind Zahlen bis 99999999 lesbar. Könntest du einen Screenshot machen, wie das bei dir aussieht? Sonst kannst du auch in der Cfg-Datei die Liste der zur Auswahl stehenden Baudraten ändern, dort gibts keine Größenbegrenzung. Das drunterliegende Programm kann Problemlos mit allen von der Hardware unterstützten Raten umgehen. Ich werd im nächsten Release das Feld auch etwas größer machen
Hallo Tobi, Ok, die Baudrate in der config-Datei eintragen funktioniert, wenn jedoch HTerm.exe das erste Mal startet und seine aktuell einprogrammierte Konfiguration als Datei ausgibt, steht da eine 25600 in der Liste. Also vermutlich in Deinem Quelltext ein kleiner Tippfehler. Das Feld größer zu machen ist vermutlich gar nicht unbedingt nötig, besser wäre ein Feld mit freier Eingabemöglichkeit a la Br@y++ Terminal (dort custom BR genannt). Ciao Quix01
Oh ja, du hast recht, das ist ein Tippfehler. Hatte ich garnicht gesehen. In das Feld kann man beliebige Baudraten eintragen, man muss keinen der vorgefertigten Einträge benutzen. Wenn dein Adapter es unterstützt kannst du dort 256000 eintragen und auch benutzen. Das Feld bietet eine Kombination aus fester und variabler Eingäbe (das, was beim Bray-Terminal auf zwei Bereiche verteilt ist)
hi tobi, wirklich großartige arbeit, die du hier geleistet hast. ich benutze dein tool vorwiegend um AT commandos abzusetzen. ich möchte hier noch ein paar ideen anmerken und vielleicht stoßen diese ja auf deine zustimmung. erstmal wäre es von vorteil, wenn man selbstverfasste scripts mit vordefinierten (AT) kommandos in das programm mit aufnehmen könnte, die über ein 'load-menu' auszuwählen sind. gerade bei tests mit mehrteiligen initialisierungs-routinen ist die tipperei doch sehr mühsehlig. vielleicht kann man hier auch andenken, ein 'start-script' über die config datei zu definieren, das nach einem connect automatisch ausgeführt wird. weiters lässt es sich eventuell realisieren, die history an eingegebenen kommandos über ein kontext menu verfügbar zu machen (schnellere und leichtere bedienbarkeit bei redundanten kommandos), das die letzten X einträge einträge sichtbar enthält und über einen scroll-balken zugriff auf die restliche history gewährt. zum schluss möchte ich noch auf ein problem hinweisen, das bei mir nur mit seriellen bluetooth COM ports auftritt; ist keine große sache, allerdings bekomme ich bei einem disconnect die fehlermeldung "the instruction at "0x0000000030"...blabla...memory could not be read", verbunden mit einem absturz des programms. ich habe unter winXp und win2k mit jeweils 2 verschiedenen bluetooth dongles getestet, immer mit dem gleichen ergebnis. vielleicht ist dieses verhalten nocht nicht bekannt und es geht nicht nur mir so. besten dank im voraus...
Die Möglichkeit selbstdefinierte Sequenzen zu versenden kommt auf jeden Fall in der nächsten Version. Nur wann die kommt weiß ich noch nicht, wird mangels Zeit leider noch was dauern. Ein Drop-Down für die History gefällt mir und werd ich auch mal versuchen einzubauen. Ich hab hier keine USB-Bluetooth-Adapter, vondaher ist es schwierig, den Absturz nachzustellen aber ich werde mir die Disconnect-Routinen nochmal anschaun. Gruß, Tobi
Hallo Tobi, wirklich tolles, handliches Programm was du da auf die Beine gestellt hast. Ich habe noch keines gefunden, was mir beim Debugging serieller µC-Kommunikation bessere Dienste leistet. Jetzt habe ich hier aber ein Bauteil mit serieller Schnittstelle, was neben einem stop bit auch ein start bit im Protokoll verwendet und ich habe noch kein Terminal-Programm gefunden, das damit klar kommt. Vielleicht kannst du sowas in der nächsten Version mit reinnehmen. Angesichts der Unterstützung für diverse stop- und parity-bits, die ja schon da ist, vermute ich mal, dass sowas noch nichtmal allzuviel Arbeit macht. Gruß und Dank Martin
Jede asynchrone serielle Schnittstelle arbeitet mit einem Startbit, das wird in Hardware von der UART verarbeitet/erzeugt. Das lässt sich nicht abschalten oder irgendwie konfigurieren, also kann es auch das Terminalprogramm in keiner Weise beeinflussen. Liegt vielleicht einfach nur ein Verständnisproblem vor?
Hallo! ich habe vor Jahren mal ein Terminal-Reader-Programm unter DOS betrieben, das hieß IMON. War zwar recht umständlich, das alles, aber es konnte was was ich bisher bei keinem anderen gesehen habe, und zwar 2 Schnittstellen lesen. Technisch völlig billig aber mega praktisch um ganze befehls-"unterhaltungen" mit zu lesen. Das Programm hat dann jede Richtung in einer anderen Farbe (weiß und grau) dargestellt und man konnte auch "Neue Zeile bei Richtungswechsel" aktivieren um die Übersicht zu erhöhen. Wäre SUPER wenn das als zusatz zu HTERM kommen würde, das wäre das Programm meiner Träume, wenn das möglich wäre. Ansonsten bin ich immerwieder zufrieden mit dem hterm. danke dafür! MfG jan
@ rufus Du hast Recht mit dem Startbit, mein Problem lag an anderer Stelle. Es ist allerdings auch das erste mal, dass mir das Startbit in einer Protokolldefinition unterkommt. Im Zusammenhang mit dem gleichen Bauteil hätte ich aber noch nen anderen Wunsch: Die Nachrichten, die vom Bauteil kommen haben variable Länge, wobei das letzte Byte eine Checksume ist. Es gibt also keine Zeilenende-Markierung wie CR oder LF. Dafür gibt es ein konstantes Startbyte. Schön wäre also ein Zeichen definieren zu können, das nach einem Zeilenumbruch im Empfangs-Fenster kommt. MfG Martin
@ Jan Lässt sich Dein Problem nicht dadurch lösen, 2 Instanzen von HTERM parallel ablaufen zu lassen, wobei jede Instanz an einer separaten Schnittstelle lauscht? Mittels der Timestamps kann man dann auch die zeitliche Relation zwischen den übertragenen Inhalten feststellen.
Tolles Programm! Ich hätte aber eine Frage. Und zwar benutze ich bei einer meiner Anwendungen das Steuerzeichen '\t' um eine formatierte Ausgabe zu erreichen. HTerm stellt allerdings dieses Steuerzeichen als Text dar, fügt also kein eigentlichen Tab in die Ausgabe ein. Könnte man sowas noch einbauen? Im Anhang ein Beispiel, wie ich es toll fände. Aber vielleicht gibts die Funktion ja schon und ich hab sie nur nicht gefunden. Obwohl das Programm wirklich sehr übersichtlich gestaltet ist. Nochmals, gute Arbeit!! Selma
Hallo, für mich wäre es schön, wenn das Programm auch krumme Baudwerte annehmen würde, manche MC haben einen internen Oszillator und die Budrate liegt zB bei 20400 statt 19200. durch ausmessen der Bit-Zeit kann ich vorab die Baudrate bestimmen und einstellen, geht das ?
HTerm kann nur die von der PC-Hardware unterstützen Baudraten verwenden. Man kann immer versuchen auch krumme Werte einzugeben und zu connecten. Wenn es klappt, kann die drunterliegende Hardware es, wenn nicht ist es mit dieserm Hardware unmöglich (egal mit welchem Terminal).
Die Win32-API leitet auch krumme Baudraten an den Treiber weiter. Wenn es ein echter normaler COM-Port ist unterstützt er alle Baudraten 115200/x wobei x 1 bis 65535 sein kann (kommt vom Vorteiler des 8250). Bei USB-Adaptern sieht das schon anders aus. Die nächste Baudrate wäre also 23040, 20400 geht nicht.
hy du dieser HT ist so ziemlich genau das was ich suche. ein freund und ich machen ein bussystem (hausbus)und zum testen ist dein terminal perfekt. ABER: könntest du eine druckerfunktion miteinbinden?? Wenn ja schreibe mir bitte eine mail , am besten mit einem update. an norbert.zehethofer@aon.at danke
Hallo Tobi, Dein Programm ist super, mir fehlt nur noch eine Funktion. Ich würde gerne die Output Daten kontinuierlich in eine Datei loggen. Nach dem Programmneustart sollte das Loggen automatisch weiterlaufen und die bestehende Datei weiter ergänzen. Keine Ahnung ob sich diese Funktion integrieren lässt. Danke im voraus. Gruß Bastian
@bastian: In deinem schönen bunten Betriebssystem gibt es eine Kommandozeile. Dort gibt es ein Kommando copy, mit dem kannst du sowas machen.
Mir ist noch ein Fehler aufgefallen: Ich sende Befehle an einen uC, der sendet eine Antwort. Seltsamerweise kommt nicht nach jedem Befehl eine Antwort, dafür aber danach 2-5 Antwortbytes aus einmal. Mit einem anderen Terminal habe ich den Fehler nicht, ebenso sehe ich die TX und RX LED die ich am uC habe immer richtig aufleuchten. Der Fehler liegt also an hterm. Er scheint nur dann aufzutreten, wenn einzelne Bytes empfangen werden. Das Problem existiert sowohl bei echten COM Ports als auch bei USB-COM Ports.
Kommt bei mir nicht vor, getestet und für gut befunden (Ver.065)
Hallo Tobi, super Programm. Aber ich hab da noch ein kleines Anliegen. Erstens kann man nur COM1 wählen. Gibt es da mehr und vielleicht auch LPT. Dann noch was wir haben auch noch mehr Baudrate nötig. Es gibt ja den LM339 ausgewechselt gegen den ALD4302DB und wir brauchen da als Baudrate 153600,256000,307200,614400,1228000,... http://www.symek.com/g/fsk9601.html www.dlc7.de , Vielleicht könntest du die noch eben hinzufügen. Wir können momentan nur löten und hoffen. Mit deinem Programm können wir die ersten Messungen machen. Wir hoffen auf weiter Features. Das Programm von Kollegen in Lancester UK ist auch gut aber deines scheint mehr zu können. Gerade bei HF Links ist der High Speed check wichtig.
> Erstens kann man nur COM1 wählen. Nö. Da machst Du sicherlich irgendwas falsch. > ... vielleicht auch LPT. Und was soll damit passieren? > Dann noch was wir haben auch noch mehr Baudrate nötig Mehr als die verwendete serielle Schnittstelle kann das Programm nicht; die PC-eigene serielle Schnittstelle kann maximal 115200 Baud. Andere Schnittstellen, wie beispielsweise die USB-Seriell-Adapter von FTDI unterstützen auch höhere Baudraten, und die werden auch vom Programm unterstützt - einfach im Feld für die Baudrate den gewünschten Wert eintragen und fertig. Was hat das ganze mit einem LM339 zu tun? Das ist ein Vierfach-Komparator ...
Korrektes Progrämmchen, das könnte ich vielleicht sogar für die Arbeit benutzen. Wir haben ein Terminal um Schrittmotoren anzusteuern. Gesendete Fehler der Ansteuerkarte werden bei dem Terminal, das ich benutze im Bidschirmpuffer gespeichert. Anschließend kopiere ich die Fehlermeldungen in eine Word-Datei. Ist es bei dem Programm auch möglich, die Fehler direkt im pdf- oder doc-Format zu speichern? Änliches hatte schon Bastian (Gast) am 04.01.2007 14:13 Uhr gefragt. Danke für die Auskunft BerndS
Nach langer Zeit meld ich mich mal wieder. Endlich hab ich wieder etwas mehr Zeit und die werde ich nutzen, um HTerm wieder etwas Aufmerksamkeit und Pflege zukommen zu lassen. Noch gibts keine neue Version, aber so lange wird es (hoffentlich) nicht mehr dauern. Nun zu den Anfragen - Logging ist möglich einzubauen, aber nicht direkt als doc oder pdf, das würde einigen Aufwand mit sich bringen. Eine Textdatei, die kontinuierlich gefüllt wird sollte aber machbar sein. Wie genau stellst du (BerndS) dir denn das markieren der Fehler vor? - Die verschluckten Bytes bei einzelnen Zeichen hab ich auch schon bemerkt. In diesem Teil, der dafür (wahrscheinlich) verantwortlich ist, werd ich einiges umschreiben. Mit ein bisschen Glück ist es dann weg. Wenn nicht, werd ich direkt danach schaun. Außerdem möchte ich noch allen danken, die das Programm unterstützt und bekannt gemacht haben. Durch eure Unterstützung hat es HTerm als Beispiel-Programm zur Kommunikation mit Mikrocontrollern sogar bis in einen Elekor-Artikel geschafft (http://www.elektor.de/Default.aspx?tabid=27&art=5551008&PN=On). In der Print-Ausgabe sogar mit zwei Bildern.
HTerm ist schon ein sehr feines Terminalprogramm. Viele hilfreiche Funktionen, die die Arbeit erleichtern (besonders die Darstellungs-/Eingabemöglichkeiten in HEX). Den Vorschlag von Jan Dressler finde ich gut. Es wäre schon nützlich zwei COM-Ports im direktem Zusammenhang zu betrachten. Gerade in letzter Zeit hat mir da eine praktikable Lösung gefehlt. Die Timestamp-Funktion ist zwar super gelöst, auch mit der Möglichkeit zu markieren und Zeitdifferenzen und gesendetet Bytes anzuzeigen, aber leider schade, daß wohl keine Möglichkeit besteht die Timestamps mit der "Save Output"-Funktion zu speichern. Eben eine solche Funktion wäre irgendwie sinnvoll. Wie auch schon im Thread gewünscht wäre ich auch für eine Möglichkeit mittels Button feste Zeichenketten zu senden. In diesem Sinne - auch so schon ein erstklassiges Tool!
Hallo Tobi, tolles Programm! Momentan benutze ich es um die Kommunikation mit einer PTZ-Kamera mir anzugucken. Bei dem Protokoll wird als Ende-Zeichen 0xFF benutzt. Wäre schön, wenn man bei HTermm auch noch "eigene" Zeilenende-Zeichen angeben könnte.
@Peter Das Durchschleifen zwischen zwei Ports steht schon auf der Todo-Liste, aber da die Umsetzung einigen Aufwand erfordern kann ich nichts versprechen. Die Möglichkeit eigene Zeichenketten zu senden kommt hingegen ganz sicher (Dann wird es sogar gehen innerhalb dieser Sequenzen definierte Pausen einzubauen). @Rahul Das geht auch jetzt schon, nur nicht per GUI. Du kannst das aber sehr einfach per Hand in eine (zuvor gespeicherte) Config-Datei einbauen. Im Abschnitt 'Default/GUI/NewlineAt' einen weiteren Eintrag der Form
1 | <entry name="0xFF">h[FF]</entry> |
hinzufügen. Datei laden und fertig. Hinter name= steht, was im Auswahlfeld angezeigt wird, der Teil innerhalb des Tags beschreibt die zu suchende Zeichenkette (Infos dazu in der Hilfe unter 'Config Files', Stichwort MFS)
Hallo Tobi, ich hätte hier noch nen Vorschlag(/eine Bitte) für dein Hterm: - Wäre es möglich, bei der Inputbox, eine Steuerung für RTS und DTR einzubauen ? z.B.: " /RTS:ON Blafasel /RTS:OFF " " /DTR:ON Blafasel /DTR:OFF " Für mich wäre es halt toll, wenn ich vor und nach einem String RTS/DTR zurück-/setzen könnte. (RS485-Richtungsumschaltung Empfangen-Senden-Empfangen) Ansonsten ein einfach geniales Programm
Zu Beginn gleich das Wichtigste: Super Programm!!! Wir haben hier folgendes Problem: ein älteres Gerät hat folgende Konfiguration seitens der seriellen Übertragungsparameter: 1200 Baud, 7 Datenbits, 0 Stopp-Bits und 1 Startbit... und keine Parität Ist es möglich, das Programm dahingehend anzupassen, dass auch solche "unüblichen" Einstellungen handlebar sind? Würd mich sehr freuen... Oder kennt jemand ein Terminal-Programm welches die oben genannten Parameter verarbeiten kann? Viele Grüße BaFH
Keine Stopbits? Das ... gibt es nicht. Das kann keine UART. Sendet denn das Gerät "volle Lotte", also ohne Pause? Sonst ist es vollkommen wurscht, was als Stopbitanzahl eingestellt wird - das sind ja nur (mindest-) Pausen zwischen den einzelnen Zeichen.
Danke für die schnelle Antowort! Es sendet nur selten... das mit den Stopp-Bits konnte ich auch nicht glauben, steht aber im (zugegeben schlechten) Manual drinne...kann aber auch sein, dass sie 1 Stopp-Bit und 0 zusätzliche Stopp-Bits meinen... Aber nach der Reparatur sendet das Gerät eh auf 9600 7N1 uargh was leichte Probleme seitens der Software erweckt (welche von 1989 ist und KEINE Einstellung der Parameter vorsieht...und 1200 7N1? erwartet) Auch das Start-Bit, welches im Manual besonders erwähnt wird, ist eigentlich Standard, oder?
Start Bit ist Standard. Ohne geht gar nichts. Die Anzahl der Stoppbits ist normalerweise nur für den Sender interessant. Damit verschafft der Sender einfach nur dem Empfänger etwas Luft um das Zeichen zu verarbeiten ohne gleich das Handshake benutzen zu müssen.
Ok, dann scheint es eine etwas eigenwillige Beschreibung zu sein... und ich konnte diese zum Anlass nehmen, mir den RS232-Standard näher anzuschauen... und wieder was gelernt.
super programm, unkompliziert und wirklich sehr praktsisch. kann ich wirklich nur weiterempfehlen jedem programmierer von embedded systemen, wo die serielle schnittstelle einfach immer noch das erste (und letzte) mittel ist womit ein system dem programmierer etwas mitteilen kann. irgendwo ganz weit oben im thread kam noch die frage nach linux/*nix portierung. unter linux benutze ich seit kurzem das cutecom von alexander neundorf: http://cutecom.sourceforge.net/ kann weit nicht so viel wie hterm aber für die meisten sachen reichts schon. minicom ist ja von vorne bis hinten kein programm für mikrokontroller entwickler... cutecom ist ja opensource, vielleicht möchte sich jemand am hterm inspirieren lassen? ;-) einen grossen dank an tobi!
hi, wiklich tolles programm. konnte damit schnell einen fehler in der Baudrateberechnung finden. nette Grüße Andi
Hallo Tobi, sehr gutes Programm. Aber einen kleinen Verbesserungswunsch habe ich noch. Wenn ich die empfangenen Daten in eine Datei schreibe, dann wird das Schreiben offenbar mit den Senden Befehlen abgebrochen. Die empfangenen Daten sollen aber weiterhin aufgezeichnet werden. Evtl. auch die Sendebytes mit aufzeichnen, aber dann wäre wieder eine Unterscheidung im Protokoll erforderlich. Abbrechen ließe sich weiterhin mit Disconnect machen, evtl. wäre aber ein Abbruch der Aufzeichnung durch ein extra Button zweckmäßig, weil man sonst doch erst suchen muß, wie beende ich denn die Aufzeichnung. mfg
Super Programm, eine Linux-Version wäre ein Hit. Cutecom geht zwar ganz gut, kann aber imho nicht mit hterm mithalten.
Hallo Ewald Kantner, passt jetzt zwar nicht ganz zum Thread hier, aber kannst dir ja das auch mal ansehen: Beitrag "Serial-IO" Serial-IO Gruß, Christian
Hallo Tobi, habe gerade festgestellt, daß HTerm beim "Disconnecten" abschmiert, wenn der COM-Port von einer Bluetooth-Schnittstelle bereitgestellt wird. Die Bluetooth Applikation nennt sich da IVT BlueSoleil Ver. 5.0.5.178, das USB Bluetooth Dongle ist von EMTEC und hat einen Cambridge Silicon Radio Chip an Bord. Ein Test mit Hyperterminal velief ohne Absturz. Grüße, TravelRec.
Hallo Treadmitbenutzern ! Alles Super,ich anhänge auch mein Lob an Tobias.In Sache ich bin Voll Grün/Anfänger/.Ist mir trotzdem gelungen einen USB-LCD Konverter Von Jürgen nachbauen.Ich möchte den Ding Überprüfen/Virtuelles port/ aber ich habe keine Ahnung wie das durchführen.Kann jemand mit mehr Ahnung als ich ,Schritt für Schritt Anleitung anhängen oder auf meine Maill Adresse Schicken. Bitte Um Verzehiung für meine Grammatik aber ich bin Ausländer. nette Grüsse : GEORG
Hallo, das is echt ein super Programm, aber leider fehlt mir die Funktion, den Output in regelmäßigen Abständen automatisch zu speichern, ohne dass ich den Button drücken muss. Gruß Stefan
normalerweise wird ins RAM gespeichert und dann kann man mit Output ins File kopieren. Oder suchen nach COM2file . hatte ich hier im Forum mal gefunden. mfg
Falls noch nicht bekannt, Screenshot von HTerm in AN von Atmel: http://atmel.com/dyn/resources/prod_documents/doc8091.pdf Seite 11
Wow, nicht schlecht :D Respekt. Ich benutze das HTerm auch relativ häufig und es ist einfach Spitze.
Im Moment läßt mir das Studium mal wieder ein bisschen Zeit und ich arbeite wieder etwas an HTerm. Erst einmal kaum/keine neuen Funktionen, nur ein neuer Unterbau. Dann wird das Programm, wenn alles klappt, für Windows und Linux zur Verfügung stehen. Screenshots folgen noch in den nächsten Tagen..
Hab grad einen Fehler gefunden, weiß nicht, ob es schon jemand erwähnt hat (hab nicht alles durchgelesen), aber bei mir bewegt sich beim Scrollen im oberen Fenster der Balken nicht mit. Obwohl das Scrollen an sich einwandfei geht. Aber sonst: Klasse Programm, werd mich mal die kommenden Tage intensiver mit beschäftigen... :-)
SRY, halben Text vergessen: meinte beim Scrollen mit dem Rädchen.
Im Anhang ein Screenshot der neuen Version unter KDE. Bis auf ein wenig Feintuning und ein paar zusätzliche Funktionen ist es fast fertig. Vor allem das komplette GUI ist jetzt flexibler: Man kann die Elemente beliebig verschieben, undocken und irgendwo floaten lassen oder komplett schließen wenn man sie nicht braucht. Dadurch sollte die Oberfläche wesentlich übersichtlicher werden. Auf vielfachen Wunsch hin kann man auch die Textgröße in den Ausgabeboxen von 6 bis 32 Punkten verändern. Wann es fertig ist kann ich noch nicht sagen, aber so lange wird es hoffentlich nicht mehr dauern :)
hi tobi, benutze auch dein programm. super das du daran weiterarbeitest.
Wow, gut zu hören das Du HTerm weiter entwickelst ! Ist ein Super Programm, das mir schon gute Dienste geleistet hat !
Hallo Tobi, Dein Terminal sieht genial aus. Leider klappt die höchste Baudrate nicht. Statt 256000 hast Du mit 25600 eine 0 zuwenig eingetragen. Vielleicht kannst Du das noch anpassen. Gruss Matthias
In das Eingabefeld kannst Du 'reinschreiben, was Du willst*. Die Vorbelegung mit festen Werten ist nur eine Komfortfunktion. *) natürlich wird nicht jeder Wert als Baudrate akzeptiert, welche funktionieren, hängt von der Hardware der verwendeten seriellen Schnittstelle ab. Die Onboard-Schnittstellen COM1/COM2 üblicher PCs können beispielsweise maximal 115200 Baud.
Hallo Tobi! Auch hier vorweg: Super-Programm! Lange nach sowas gesucht, endlich HTerm gefunden!!! Tolle Leistung! Vielen Dank!!! Trotzdem würde ich mir auch gerne die Umsetzung des Verbesserungsvorschlags vom 09.05.2007 (16:54) wünschen, DTR und RTS per Sendestring manipulieren zu können. Das brauche ich nämlich auch aktuell gerade und suche ein Programm, dass das kann. Ist die Umsetzung geplant? Gruss Michael
jo ja yes wollt mich an der stelle nur mal für das programm bedanken. sehr gutes tool. jan
Hat jemand von euch evtl. mal probleme mit der Flusssteuerung gehabt? Bei mir schicke ich daten immer zu 5 Byte an den uC und speichere sie dann im internen EEprom. Lass meine Serielle Schnittstelle pausieren bis der "Brennvorgang" von etwa 10ms beendet ist und setze die Übertragung fort. Nun kommt das 1. Byte nach dem Fortsetzen der Übertragung an. Jedoch das 2. geht flöten... Hoffentlich hat jemand von euch nen Ansatz für mich bzw. das gleiche Problem... MfG Flo
Stelle einfach die Baudrate herunter, dann muß der PC nicht warten und keine Bytes gehen verloren. Jedes Byte was im Controller ankommt wird sofort im EEPROM weggespeichert und weiter geht´s.
Hallo mich würde freuen wenn man mit dem Programm auch telefonummern bzw. Mailboxen anrufen kann. Danke
> mich würde freuen wenn man mit dem Programm auch telefonummern bzw. > Mailboxen anrufen kann. Kann man, Du musst nur eingeben ATD123456789<CR> Gibt es heutzutage noch ernstgemeinte Mailboxen?
Hi, sehr schönes Terminal-Programm. Besonders, dass die Zeiten angezeigt werden, finde ich sehr gut. Genau das brauche ich nämlich. Leider werden die Zeiten nicht mit gespeichert, auch nicht als RAW. Nach dem öffnen wird für den gesammten Output nur die Importzeit der Datei angezeigt. Wäre super, wenn du das noch mit rein programmieren könntest. Thx, Butch
Eine weitere tolle Funktion wäre noch der parallele Redirect in ein File. So könnte hätte ich deinem Terminal die für mich unverzichtbaren Zeitstempel und könnte das das File von baretail anzeigen lassen, mit Highlighting für bestimmte Zeilen.
Gibt es eine Möglichkeit, HTerm über CLI vom Port zu trennen bzw. zu verbinden? Würde es gerne schaffen, dass aus WinAVR erst HTerm trennt, dann mit avrdude geflasht wird und anschließend HTerm wieder verbindet. Dann muss ich nichts anklicken, sondern nur umstecken.
Nächste Frage: Kann man den Zeilenumbruch alle N Zeichen mit exportieren?
Nächste Frage: Kann man den Zeilenumbruch alle N Zeichen mit-exportieren?
@falscher Hase (Gast) Wird Zeit, dass die Jagdsaison eröffnet wird.
Version 0.7 ist raus. Hauptsächlich gibts ein neues GUI sowie eine Linux-Portierung (noch nicht zum Download). Ich hoffe es läuft alles :). Wenn nicht, nehm ich Bugreports gern hier oder per Mail entgegen
Wenn man im Sende-Eingabefeld versucht ein Zeichen zu löschen (Rücktaste, Entf, Überschreiben, ...) gibt es eine Schutzverletzung. (Win XP) Grüße Martin
Hallo, ich kann den Bug-Report von Martin bestätigen. OS: WinXP SP3
Danke! Bei mir tritt er auch jedes mal auf. Bin gerad am beheben
Der Absturz sollte jetzt behoben sein. Einfach nochmal neu runterladen
Hier noch ein Screenshot von HTerm: http://www.elv-downloads.de/service/manuals/RDS100/RDS100_KM_G_080303.pdf
funktioniert die neue Version auch unter Windows? Unter Win98 geht die neue Version nicht (falsche Version des Betriebssystems, Fehler 5). Die bisherige Version ging auch mit Win98. Ist da jetzt eine Verschlechterung eingetreten? Oder werden 2 Versionen parallel geführt? Dann müßte eigentlich die Versionsnummer eine andere sein. z.B. Vers. 1 für Linux. mfg Quehl
Die neue Version läuft bisher nur unter Windows, die Linux Version kommt erst noch. Zum Nachstellen des Fehlers fehlt mir eine Testmöglichkeit für Win98. Ich habe zumindest nichts eingebaut, was diesen Fehler verursachen sollte, aber ich werde mal recherchieren, ob wxWidgets irgendwo Probleme macht. Kannst du die genaue Fehlermeldung/Screenshot hier posten? Zwei Entwicklungslinien hatte ich nicht vor weiter zu führen. Die alte Version ist nur übergangsweise verfügbar, bis die neue einwandfrei läuft.
In der Titelleiste Fehler beim Starten des Programms Im Fenster Die Datei erfordert eine neuere Version von Windows Installieren Sie die neue Version von Windows OK OK gedrückt im Fenster Windows-Fehler 5 beim Ausführen von d:/HTerm.exe OK Hilfe Hilfe geklickt Dieses Dialogfeld wird angezeigt, wenn WinZip ein Programm nicht ausführen kann. Folgende Fehlerwerte wurden von Microsoft dokumentiert: Wert Bedeutung 0 Zuwenig Speicher 1 Datei nicht gefunden 2 Datei nicht gefunden 3 Pfad nicht gefunden 4 Zu viele Dateien geöffnet 5 Versuch, einen dynamischen Link zu einer Task einzurichten 6 Library erfordert separate Datensegmente für jede Task 8 Speicher reicht nicht aus, um die Anwendung zu starten 10 Falsche Windows-Version 11 Ungültige .EXE-Datei (keine Windows-.EXE oder Fehler im .EXE-Image) 12 OS/2-Anwendung 13 DOS 4.0-Anwendung 14 Unbekannter .EXE-Typ 15 Versuch im geschützten Modus (Standard-Modus oder erweiterter Modus für 386-PC), eine .EXE-Datei zu laden, die für eine frühere Windows-Version erstellt wurde 16 Versuch, eine zweite Instanz einer .EXE-Datei zu laden, die mehrere, schreibbare Datensegmente enthält 19 Versuch, eine komprimierte .EXE-Datei zu laden. Die Datei muß dekomprimiert werden, bevor sie geladen werden kann. 20 Dynamic Link Library (DLL) war ungültig. Eine der .DLL-Dateien, die zur Ausführung dieser Anwendung erforderlich sind, war defekt. 21 Anwendung erfordert Erweiterungen der 32-Bit-Version von Microsoft Windows. Copyright ¸ 1991-1998 Nico Mak Computing, Inc. und H.C. Topsystems B.V. mfg Quehl
Danke für die ausführliche Beschreibung! Der Schuldige für das Problem ist mittlerweile gefunden: Microsoft hat beim neuen Visual Studio offiziell den Support für Win98 eingestellt. ich schau gerad noch etwas, ob man das umgehen kann. Hier ist das Problem beschrieben, für alle die evtl das gleiche haben: http://www.msfn.org/board/Visual-Studio-2008-and-Windows-9x-t112283.html
ich hab zwar von Visual Studio keine Ahnung, aber wie wäre es, das bisherige Visual Studio zu nehmen und nicht immer ohne Grund MS hinterher zu jagen. mfg Quehl
Der Umstieg hatte recht praktische Gründe: Da mein altes System nicht mehr existiert und ich mittlerweile von Windows abgekehrt bin kompiliere ich HTerm derzeit in einer virtuellen Maschine unter Linux. Weil sowieso das gesamte Windows neu installiert werden musste, hab ich das aktuelle VS genommen, in der Hoffnung, dass es besser/stabiler etc ist, ich hätte es besser wissen müssen ;) Ich probier derzeit den gcc-Compiler für Windows aus. Der sollte von Win95 an alles einwandfrei unterstützen. Wenn alles läuft werd ich diese Version online stellen,
> ich hab zwar von Visual Studio keine Ahnung, aber wie wäre es, das > bisherige Visual Studio zu nehmen und nicht immer ohne Grund MS > hinterher zu jagen. Das hat nichts mit MS hinterherjagen zu tun, sondern damit, daß neuere Visual C++-Compiler endlich standardkonform sind, daß also damit endlich auch C++-Sprachfeatures genutzt werden können, die jünger sind als 15 Jahre*. Und Windows 95 und seine Aufgüsse** sind derart veraltet, daß ich wirklich verstehen kann, warum man dafür keine Unterstützung mehr bieten will. *) gefühlt. **) Schlechter Wein in stinkenden Schläuchen: 98 & Me
Hallo, wieso wird \r bzw. dezimal 13 nicht im ascii modus gespeichert? mit RAW klappt das einwandfrei.
@Ruhfus mir sind funktionierende Programme lieber als Sprachfeatures, obwohl ich das verstehen könnte, wenn man zusätzlich was haben will, das man dann nicht extra programmieren müßte. Aber warum werden diese zusätzlichen Features nicht einfach dazu getan. MS hat doch die alten Features für Win98 gelöscht, hätte doch auch drin bleiben können. @falscher Haase ich hab das jetzt nicht nachvollzogen, aber ich könnte mir vorstellen, daß die hex 13 ausgeführt wird und darum nicht dargestellt werden kann. Finde ich auch gut so, damit die Zeilen übersichtlicher sind. Wenn man hex 13 sehen will, kann man ja den anderen Modus nehmen. Unübersichtlich fand ich die Speichermöglichkeit. Da muß man erst mehrmals probieren, um herauszubekommen, wie das funktioniert. mfg Quehl
Es hat ein paar kleine Bugfixes für Fehler gegeben, die zu fehlerhaften Darstellungen oder Abstürzen führen konnten. Ausserdem steht die Linux-Version jetzt zum Download bereit. Sie sollte auf allen 32 und 64-bit System laufen, auf denen gtk2.0 vorhanden ist. Download wie immer unter http://www.der-hammer.info/terminal/index.htm Die Windows-Version läuft (nicht mehr) unter Windows 98. In diesem Fall sollte auf die ebenfalls zum Download bereitstehende alte Version 0.6.5 zurückgegriffen werden.
Hallo Tobi, Super das Du an dem Terminal Programm weiter arbeitest, es ist ein tolles Programm. Bei der Win98 Unterstützung sehe ich das auch so wie Rufus, irgendwann muß mal Schluß sein., aber das sieht jeder ja anders.
Hey Tobi, wirklich ein sehr gelungenes Terminal-Programm. Das ist doch genau das, was man als Entwickler auf COM-Ebene immer benötigt hat. Besser gehts wirklich nimmer. Obwohl ein Feature hätt ich noch gerne (vielleicht habe ich es auch übersehen). Und zwar sollte es möglich sein, dass das Terminal jeden Character direkt nach der Eingabe sendet, also ohne Enter. Wäre dann etwa Windows Hyper-Terminal-like. Aber auch ohne dieses Feature habe ich mein Terminal-Programm for ever gefunden. Thx für die Arbeit!!
Das Feature wurde schon recht oft angefragt und wird sicherlich noch eingebaut. Zwar nicht in der nächsten Version, aber in der darauffolgenden wahrscheinlich. In der nächsten Versions gibts erstmal die Möglichkeit Zeichenketten dauerhaft abzuspeichern, um sie schneller und einfacher zu senden.
Hallo Tobi, freud mich sehr, dass es mit HTerm weitergeht. Ich musste meine Terminal bzw. Kommunikationstools immer selber schreiben, weil es keine Standardlösung für meine Bedürfnisse gab. Mit HTerm sieht das gans anders aus und ich setze es schon öfter ein als meine Tools. Mit dem von Microsoft mitgelieferten Hyperterminal-Hilgreave-Schrott kommt man nicht weit und er sieht verdammt alt gegen Dein HTerm aus. Ups, jetzt werde ich meinem Leitsatz untreu: NICHT MECKERN SONDERN BESSER MACHEN ! In meinem Tool, das deutlich weniger Funktionen beinhaltet habe ich jedoch eine Funktion, die ich in HTerm nicht gefunden habe und zwar: NEW LINE AFTER TIMEOUT Es gibt µC-Anwendungen die ohne Stoppzeichen Daten senden die unterschiedlich groß sind vobei jedes Byte im String bzw. Paket jeden Wert haben kann. Wenn z.B. in einer Sekunde 3 Pakete unterschiedlicher Länge gesendet werden, ist es sehr praktisch wenn nach jedem Paket ein Zeilenumbruch erfolgt, damit man die Pakete auseinander halten kann. Ich habe das so realisiert: Wenn ein Byte empfangen wird, dann wird ein Timer mit der 2-3-fachen Zeit gestartet, die 10 Bit brauchen um übertragen zu werden.(Abhängig von der Bautrate) Wenn der Timer abläuft, wird in der nächsen Zeile weitergeschrieben. Wenn ich es mal beurteilen darf, dann müsste diese Erweiterung einfach in HTerm zu realisiern sein, weil die Datenpakete bei HTerm ja schon mit dem Timestamp versehen sind und nur noch Timestamp-abhängig in die die nächste Zeile geschrieben werden müssten. (zusätzliche Auswahl in der ComboBox Newline at) Wäre echt toll, wenn HTerm auch diese Funktion hätte. Wenn nicht, dann bleibt es trotzdem das beste Terminal-Programm, dass ich kenne! Mein großes Lob und Dank für diese klasse Arbeit. MfG AKtronik
Hallo nach langem suchen habe ich endlich mal ein Ht gefunden das wirklich seines Gleichen sucht. so genug geschleim :-) muss sagen das das Ht wirklich eine absolut gelungenes Tool geworden ist. und möchte mich Ak Tronik anschliessen weil auch ich suche verzweifelt eine möglichkeit new lines über Timeout zu generieren Grund ist das ich sehr oft Modbus kommunikation analysieren muss und diese deshalb auch mitscheide da aber modbus auch kein stoopzeichen kennt ist es schwer mit Ht die einzelnen Pakete von einander zu unterscheiden. ich denke das die vorgeschlagene erweiterung newline nach timeout hier der richtige ansatz ist..... würde aber gerne auch mal das tool von aktronik testen .... wo und wie bekommt man es. gruss Pedro
Betreff Timeout: Was hält euch davon ab, einen kleinen Controller zwischen die zu loggende Anlage und HTerm zu hängen, der nach einstellbarem Timeout ein >CR oder ein ähnlich verwertbares Zeichen ausgibt? Schon habt ihr euren Zeilenvorschub. Auf längere Sicht kommt man sowieso nicht umhin, ein paar Hardware-Interfaces zu stricken, die mit verschiedensten Protokollen umgehen können.
Hallo, @ Petro Tepe genau genommen ist es kein Tool das ich nur für dieses Problem geschrieben habe, sondern es sind Programme die unter anderem über den COM-Port mit µC oder PCs kommunizieren und diese TIMEOUT-Funktion beinhalten. Die Datenpakete werden dabei Teilweise formatiert in entsprechenden Anzeigefeldern dargestellt und einige bitweise angezeigt. Was wie wohin geschrieben wird ist vom User nicht einstellbar und steckt fest in der Software. Das heist, ich müsste erst die Visualisierung so umschreiben, dass "jeder" etwas damit anfangen kann. So wie es bei HTerm der Fall ist. Sollte ich das tun und Tobi dann diese Funktion im HTerm implementiert, dann würde jeder mein extra umgeschriebenes Tool in die Tonne kloppen und die Arbeit wäre für die Katz. Bitte nicht so verstehen, das ich meine Arbeit nicht teilen möchte! Sollte Tobi diese Funktion nicht implementieren, (was sehr, sehr schade wäre, zumal er aufgrund seiner TIMESTAMP-Funktion schon ein Packende hat)dann denke ich noch mal drüber nach. Aber erst mal abwarten was Tobi sagt (macht). @Travel Rec. 1. Wenn Software Hardware ersetzen kann, dann sollte Software eingesetzt werden. 2. Die Software-Funktion muss nur ein mal "hergestellt" werden, die Hardware für jeden. 3. Der Hauptgrund: Weil es nicht möglich ist ! MfG AKtronik
Hallo, ich möchte mich auch noch mal für W98 aussprechen. Ich betreibe in meiner Hobby-Werkstatt 5 Rechner mit W98SE. Das sind PIII 1GHZ in kleinem Gehäuse, nahezu geräuschlos mit externem Netzteil. Mit W98 ist die Geschwindigkeit für Debugging und Analyse genial. Nicht zu vergleichen mit W2k SP4 oder XP. Und es gibt bestimmt noch einige Bastler mehr, die nicht andauernd in neue Betriebsysteme oder Hardware investieren wollen. Just my 2 cents. Sven P.S.: Neue Funktionen in Compilern müssen nicht immer das non-plus-ultra sein.
> Neue Funktionen in Compilern müssen nicht immer das > non-plus-ultra sein. Wenn man in C++ programmiert, geht es nicht um das "non-plus-ultra", sondern um die Einhaltung von lange etablierten Standards. VC6 hat das nicht getan und war in vielerlei Hinsicht ein Krampf im Arsch.
Zu Win9x: Ich hab mitlerweile den gcc-Kompiler für Windows halbwegs zum funktionieren gebracht. Voraussichtlich werd ich hin und wieder damit kompilierte Versionen online stellen. Die sollte dann unter allen Systemen laufen. Nur wie gesagt werden die Versionen seltener und wohl immer etwas später erscheinen. Sonst muss ich Rufus recht geben. VC6 ist von der Kompatibilität her ein graus und das ist leider auch die letzte Version, die imo alle 32-bit Windows unterstützt. Bei allen folgenden Versionen hat MS absichtlich die Unterstützung für alte Windows-Versionen 'beseitigt'. Zm Timeout für Newline: Sollte wie schon gesagt recht leicht machbar sein. Werd ich auf jeden Fall mal ausprobieren, ob und wie gut das läuft. Wenn es so weit ist könnte ich allerdings jemanden zum Testen brauchen, da ich keine entsprechenden Gegenstellen habe. Wenn es so weit ist, sag ich hier noch bescheid - vllt finden sich ja Freiwillige ;)
Hallo Tobi, möchte mich als 1. freiwillige melden ;-) MfG AKtronik
Hallo Tobi ich bin der 2. freiwillige gerne sogar auf beiden version (win und lin) mfg Pedro
Es gibt mal wieder eine neue Programmversion! Zwar sind keine neuen Funktionen hinzu gekommen, dafür wurden einige Bugs ausgemerzt. Dadurch sollte die Arbeit mit der neuen Benutzerschnittstelle jetzt besser funktionieren. Auch für die Linuxer unter euch gibt es eine Neuerung: Die Kompatibilität wurde stark verbessert, so dass das Programm jetzt auch unter nicht mehr ganz taufrischen Plattformen wie einem Debian-stable starten sollte. Download wie immer unter http://der-hammer.info/terminal/
Hallo Tobi, in der aktuellen Version funktioniert das wiederholte Senden von Files nicht korrekt. Das File wird einmal gesendet, danach zählt nur noch der Repeat-Counter hoch und keine Daten werden mehr übertragen.
Ja super. Geht wieder! Dann ist mir noch aufgefallen, daß im gleichen Dialogfenster der Delayzähler bereits ab Beginn des Sendens der Datei heruntergezählt wird (kann jetzt nicht sagen, ob das schon immer so war). Somit kann es bei größeren Dateien dazu kommen, daß die Übertragung länger dauert, als die eingestellte Wartezeit bis zur nächsten Übertragung und diese dann also sofort nachgereicht wird. Grüße, TravelRec.
Hallo Tobi, ist die Funktion "New line after Timeout" bzw. "New Line for each Timestamp" noch in Planung? HTerm ist zwar jetzt schon unschagbar, allerdings habe ich diese Funktion noch nie woanders gesehen. Ich fände es superklasse, wenn Du das mit rein nimmst. Zwing mich nicht Dich anzubetteln ;-) MfG AKtronik
Ich hätte auch einen Wunsch: Beim Programmieren von µC mit Bootloadern ist es teilweise ziemlich nervig, wenn man immer erst den COM Port schließen muss, ehe man den µC programmieren kann. Von daher fände ich es schön, wenn es eine Option Auto Disconnect gäbe, die automatisch den Port schließt, sobald HTerm im Hintergrund ist, und den Port wieder öffnet, sobald das Programm wieder in der Vordergrund kommt.
Alles noch in Planung. Da ich aber derzeit umziehe muss die Umsetzung noch etwas warten. Zusätzlich werde ich wenn ich Pech habe ein paar Wochen vom Inet abgeschnitten sein. Also nicht wundern, wenn für die nächste Zeit keine Antworten kommen. Ich bin nur zeitweilig vom Rest der Welt abgeschnitten ;)
Tobi, vielen Dank für das Programm, ich benutze es sehr gerne, besonders um Debugausgaben von µCs anzusehen. Hier noch ein paar Anregungen: - Anstatt "nur" COM auch TCP Verbindung, so hat man gleich einen super Telnetclient zum debuggen - Möglichkeit das/die Zeilenende-Zeichen frei einzustellen (z.B. 0x1B60) - Möglichkeit eine CRC berechnen zu lassen, z.B. von markierten Zeichen. Universell lässt sich das recht schön lösen wie es die Jungs von "Hex Workshop" gemacht haben: Man kann die CRC Breite (16/32), das Polynom, Startwert, Reflection in/out und XOR out einstellen und kann so recht viele verschiedene CRC Typen auf einmal erschlagen. - Möglichkeit von "Makrotasten", so dass man schnell verschiedene vorgefertigte "Pakete" absenden kann Weiter so! Gruß Ja mann
... wenn ich Pech habe ein paar Wochen vom Inet abgeschnitten sein. Also nicht wundern, wenn für die nächste Zeit keine Antworten kommen. Ich bin nur zeitweilig vom Rest der Welt abgeschnitten ;) @ Tobi H. Bekommst du einen neuen DSL-Anschluss?
Hier noch ein paar Verbesserungsvorschläge, habe ich vielleicht schonmal genannt: - Eingabezeile sollte Fokus nicht durch Mausklick verlieren - Eingabezeile sollte auch leer sein dürfen wenn <send on enter> aktiv ist - Info-Datum ist 2006, vielleicht eine Anzeige des builds machen: HTerm v0.7.1 01.10.2008 (26 days ago)
Umzug überstanden, Internet wieder da und eine neue Version gibts auch! Zwar immernoch ohne die gewünschten Features aber mit einer anderen großen Neuerung. In v0.8.0 gibt es einen SequenceManager, in dem man häufig verwendete Zeichenketten ablegen kann. Diese können dann mit einem einzigen (Doppel-)klick immer wieder gesendet werden. Zusätzlich gibt es im Option-Menü zwei neue Dialogen, mit denen man die 'Newline At' und 'Send on Enter' Zeichenketten einfach editieren kann, ohne in den Config-Dateien rumpfuschen zu müssen. Viel Spass mit dem Programm und vielleicht ist dieses mal ja kein Bug drin, der sofort für Abstürze sorgt :) tobi
Super, vielen Dank genau sowas brauche ich (Sequenz Manager)! Schön übersichtlich, top. Bei mir wirkt das nachträgliche Ändern des Datentyps einer Sequenz nicht. Steht auch immer auf ascii... edit: Cool wär, den eingegebenen Description-Text als Tool-Tip der Items anzeigen zu lassen.
Hallo Tobi, wir sind begeistert, ein Feature, welches wir genau jetzt gut gebrauchen können. Daumen hoch!
@Ema Tronik Was meinst du mit Datentyp ändern klappt nicht? der Datentyp, der neben der Eingabezeile steht ist nur relevant, wenn du etwas neues eingibst. Du kannst beliebig viele Formate innerhalb einer Sequence mischen. In welchem Format etwas interpretiert wird sieht man an der Farbe des Texthintergrunds.
Tobi H. wrote: > @Ema Tronik > Was meinst du mit Datentyp ändern klappt nicht? der Datentyp, der neben > der Eingabezeile steht ist nur relevant, wenn du etwas neues eingibst. > Du kannst beliebig viele Formate innerhalb einer Sequence mischen. In > welchem Format etwas interpretiert wird sieht man an der Farbe des > Texthintergrunds. @Tobi Ja jetzt wo Du es schreibst, ich hatte es nur mit einer hex-Zahl ausprobiert (meine Kommandos sind nur 1byte), ist logisch... Super Programm!
Hallo Tobi, mit der Version 0.8.0 gibt ja noch mehr und noch bessere Features - Respekt! Aber ich habe auch noch Verbesserungsvorschläge: - ich vermisse auch eine "Newline at"-Funktion in der Transmitted data-Box ("Received Data" soll bei LF+CR ne Newline machen, die "Transmitted Data" nur bei CR(=SendOnEnter)) - ich wünsche mir immer noch das Schalten von RTS (und DTR) per Kommando im Sendestring Kannst Du da was für mich (und sicher auch andere) tun? Vielen Dank! Und nochmals: großes Lob für Deinen HTerm!!! Gruss Michael
Hallo Tobi, ist die Funktion "New line after Timeout" bzw. "New Line for each Timestamp" noch in Planung? MfG AKtronik
Könnte man langsam mal in "Altes Terminal-Programm für Windows" umbenennen ;)
@AKtronik: Ist in Arbeit. Zickt noch ein bisschen und tut nich immer das, was es soll. Wird aber ziemlich sicher in der nächsten Version drin sein. Auch Steuerkommandos in der Eingabezeile werden wohl drin sein. Dann sollte man so etwas wie 'abc dtr=1 def wait=1000;dtr=0' eingeben können
Klasse, freud mich riesig !!! ... und schließe mich Travel Rec´s Aussage an ! MfG AKtronik
Entschuldige dass ich auf einen alten Beitrag antworte. Weil etwas weiter ober geschrieben wurde dass das VS Win98 nicht mehr unterstützt. Das Framework ist der Übeltäter. Das letzte Framework dass Win98 unterstützt ist die 1.1er Version. Wenn's gewünscht wird, könnte ich versuchen es Win98 kompatibel zu kompilieren. (Wenn nicht all zu viele von VS7/FW1.1 nicht unterstützte Funktionen verwendet werden.)
@sepp würde ich natürlich begrüßen. Wäre schön, wenn das ginge. Kann das auch der Grund sein, daß die neueren Atmel Entwicklungsprogramme mit Win98 nicht laufen? Da gab es mal eine Fehlermeldung mit Framework. Atmel konnte mir das nicht beantworten.
Wie ich schon geschrieben habe hängt dass Ganze mit dem sogenannten Framework zusammen. Dass ist eine DLL-Sammlung auf die die die mit Visual Studio erstellt wurden zugreifen. Und ab der Version 2.0 wurde die Unterstützung für Windows 98 eingestellt. Wenn ich mich richtig erinnere, gibt es ab Framework Version 3.0 keine Unterstützung von Windows 2000 mehr. Wenn man also den Programmcode so gestaltet, dass er mit Framework 1.1 kompatibel ist, kann man das kompilierte Programm auch unter Win98 laufen lassen. Wenn man aber das Programm mit Framework 2.0 oder neuer erstellt und nicht darauf achtet dass der Quellcode kompatibel bleibt, kann man eben das Programm nicht mehr so erstellen, dass es auch unter etwas älteren Betriebssysten läuft. Es ist also auch heute noch möglich Win98 kompatible Programme zu erstellen. Man muß nur Zeit und Mühe investieren um den Quellcode kompatibel zu halten. Außerdem kann man dann dann einige graphische Spielereien nicht verwenden.
>Dass ist eine DLL-Sammlung auf die die die mit Visual Studio erstellt
wurden zugreifen.
Richtig:
Dass ist eine DLL-Sammlung auf die die Programme die mit Visual Studio
erstellt wurden zugreifen.
Das Programm ist nicht mit irgendeinem "Framework 1.1" oder so etwas erstellt. Das ist weder eine .Net- noch eine MFC-Applikation, sondern nutzt das (freie) GUI-Toolkit wxWidgets. (einfach mal die Hinweise am Anfang des schon etliche Jahre alten Threads lesen) Der Compiler wird als "reiner" C++-Compiler genutzt, Perversionen wie "managed C++" werden nicht verwendet. Allerdings verwendet die C-Runtimelibrary, die von aktuellen MS-Compilern gelinkt wird, auch irgendwelche Systemfunktionen, die unter steinalten Frickelwindows-Versionen nicht funktionieren. Das Problem sollte sich durch Verwendung eines beliebigen anderen Compilers lösen lassen; wxWidgets kann auch mit diversen anderen (auch freien) Compilern genutzt werden.
Sepp wrote: > Wenn ich mich richtig erinnere, gibt es ab Framework Version 3.0 keine > Unterstützung von Windows 2000 mehr. Da erinnerst Du Dich richtig. Aber HTerm verwendet weder das Framework 1.1 noch das Framework 2.0. Es handelt sich um eine native Anwendung ohne Zugriff auf die CLR.
Entschuldigung. Ich dachte dass ich vor einiger Zeit etwas von Visual Studio gelesen habe.
Sepp wrote: > Ich dachte dass ich vor einiger Zeit etwas von Visual Studio gelesen > habe. Selbst wenn, es bleibt bei Visual Studio != .NET framework. Ich verwende zum Beispiel das Studio, nicht aber zwangsläufig das Framework.
So weit alles richtig. Ich verwendete Visual Studio in der 2008er-Version und das verwendet irgendwo intern Aufrufe zu C-runtimelib-Funktionen, die die alten Windows-Version nicht besitzen. Das ist sicherlich volle Absicht von MS, um die alten Systeme zu verdrängen. Nur zur Wahrung voller Kompatibilität wieder VC6 zu verwenden bedarf schon einer großen Menge leidenswillen. Das Problem ließe sich natürlich mit anderen Compilern für Windows umgehen. Ausprobiert habe ich z.B den gcc für Windows, nur begeistert bin ich nicht von seiner Geschwindigkeit noch von ein paar anderen seltamen Macken, die er hat. Nachtrag: VS wird bei mir als reiner C++-Compiler verwendet, ohne managed-gefrickel oder .net. Schöne Bildchen mach einzig und allein wx
Tag Wenn's um Grafik geht, geht nichts über LabView ;) >Nur zur Wahrung voller Kompatibilität wieder VC6 zu verwenden bedarf >schon einer großen Menge leidenswillen. Ich bin einer von denen. Aktuell arbeite ich mit VS7 / FW 1.1. Der Quellcode wird aber voll kompatibel zu VS6 bis VS9 gehalten. Dass bedeutet zwar dass ein paar Codeabschnitte doppelt vorhanden sind, aber es funktioniert (zur Zeit) noch. >Ich verwendete Visual Studio in der 2008er-Version und das verwendet >irgendwo intern Aufrufe zu C-runtimelib-Funktionen, die die alten Windows->Version nicht besitzen. Diese Version ist aber auch nicht mehr kompatibel zu FV1.1
Du vermengst immer noch das .Net-Geraffel mit nativem Code. Tobi verwendet VS8 als C++-Compiler, um nativen Code zu erhalten, und das benutzt kein .Net-Framework, egal in welcher Version. Wie aber schaffst Du es, Quellcode zwischen VS6 und neueren Versionen kompatibel zu halten, wenn Du das .Net-Geraffel nutzt? VS6 ist ein reiner nativer C/C++-Compiler, das kennt kein .Net-Framework.
Hallo Tobi, ein persönlicher Wunsch für eine kommende Version: Ein Sequenzer für die Sequenzen, also ein Baukasten, der die vorher gebastelten Sequenzen mit einstellbarer Verzögerung einer bestimmbaren Reihe nach abfährt und ggf. wiederholt. Somit kann man zum Beispiel komplette Szenarien mit angeschlossener Peripherie durchspielen und quasi dabei zusehen, wie alles funktioniert (oder auch nicht). Nochmals danke für das nützliche Programm!
Travel Rec. wrote: > ein persönlicher Wunsch für eine kommende Version: > > Ein Sequenzer für die Sequenzen, also ein Baukasten, der die vorher > gebastelten Sequenzen mit einstellbarer Verzögerung einer bestimmbaren > Reihe nach abfährt und ggf. wiederholt. Somit kann man zum Beispiel > komplette Szenarien mit angeschlossener Peripherie durchspielen und > quasi dabei zusehen, wie alles funktioniert (oder auch nicht). ACK! > Nochmals danke für das nützliche Programm! Auch von mir ein herzliches Dankeschön für Deine hervorragende Arbeit! Gruß Christian
Hatte ich auch schon dran gedacht. Ich denk ich werd das so lösen, dass man in Sequenzen andere Sequenzen aufrufen kann (wer Endlosschleifen baut ist selbst schuld ;). Zusammen mit der neuen Möglichkeit Sendepausen anzugeben sollte damit genau das machbar sein.
>Wie aber schaffst Du es, Quellcode zwischen VS6 und neueren Versionen >kompatibel zu halten, wenn Du das .Net-Geraffel nutzt? >VS6 ist ein reiner nativer C/C++-Compiler, das kennt kein >.Net-Framework. Indem ich nur native C/C++ programmiere und gelegentlich MFC bzw. ATL verwende. Von managed Code habe ich bis jetzt die Finger gelassen. Und die paar Änderungen der Funktionen und Parameter die es zwischen den VS Versionen gibt, bekommt man mit Deffinitionen in Verbindung mit #if, #ifdef und #ifndef Abfragen hin. Da hat man zwar einzelne Abschnitte mehrfach zu programmieren, aber im Großen und Ganzen klappt das Portieren zwischen den Versionen ohne Probleme. Mann muß nur aufpassen dass bei den Projekt-Dateieine der verschiedenen Versionen die Änderungen übernommen werden. Leider kommt man trotzdem nicht ohne Famework aus, was aber nur auffällt wenn man unter Verwendung von Framework 1.1 programmiert. bzw. die Programme auf Win98 / W2K laufen lassen will und das Framework dynamisch einbinden lässt.
> Indem ich nur native C/C++ programmiere
Und was hat das dann mit dem von Dir hartnäckig so genannten "Framework"
zu tun?
Rufus t. Firefly wrote: > Und was hat das dann mit dem von Dir hartnäckig so genannten "Framework" > zu tun? Eigentlich nix, aber vielleicht hat er nur so zum Trotz und ohne es zu benötigen den Schalter /clr gesetzt. :-)
Ich war fleißig und deshalb gibt es schon wieder eine neue Version :) Dieses mal wurden viele Funktionen eingebaut, die auch hier angefragt wurden: * Es gibt unter 'Options' ein 'Clear all', dass alle Counter/Fenster löscht * Auch unter 'Options' kann aktiviert werden, dass automatisch die Schnittstelle freigegeben wird, wenn das Programmfenster den Fokus verliert. Wenn es ihn wiederbekommt wird die Verbindung automatisch wiederhergestellt * Jetzt kann Enter auch bei einer leeren Eingabezeile verwendet werden. Wenn eingestellt wird dann der 'Send on enter'-String rausgeschickt * Zeilenumbrüchen können im Empfangsfenster jetzt auch an den Stellen eingefügt werden, an denen zwischen zwei empfangenen Bytes eine Pause von mindestens einer bestimmten Länge ist * Und als große Neuerung unterstützt die Eingabezeile einen neuen Eingabemodus namens 'Command' bzw CMD. Damit können (einfache) Steuerbefehle direkt eingegeben werden. Das funktioniert natürlich auch bei Sequences. Bisher gibt es drei Kommandos: - 'wait' für eine Pause in Millisekunden - 'dtr' um die entsprechende Leitung zu manipulieren - 'rts' entsprechend dtr Zu verwenden ist das ganze nach dem Schema 'Command=Value'. z.B wartet 'wait=100' ca. 100 Millisekunden. Oder 'dtr=1' setzt die entsprechende Leitung auf high-Pegel. Mehrere Kommandos können mit ';' getrennt werden. Folgendes Kommando wäre dementsprechend möglich: 'dtr=0; rts=0; wait=500; rts=1;wait=100;dtr=1' Viel Spaß mit den Neuerungen und ich hoffe es läuft alles so, wie es soll. Bug wie immer hier melden. Download wie gewohnt unter http://der-hammer.info/terminal/
Hallo Tobi, ich habe die Funktion mit dem pauenabhängigen Zeilenumbruch getestet und bin begeistert!!! Es funktioniert bei mir mit kurzen Pausen von 15ms zwichen den vom µC gesendeten Strings problemlos!!! Sollte ich einen Bug feststellen, dann lass ich es Dich wissen. Vielen Dank für Deine Arbeit!!! MfG Ak Tronik
Hallo Tobi Supertoll! Ich bin echt total begeistert! Vielen Dank! Einen kleinen Bug hab ich gefunden (oder ist es ein Feature?)! Bei "Focus loss disconnect" kommt der automatische Re-Connect erst, wenn ich auf das ReceivedData- oder TransmittedData-Fenster (oder in das Eingabefeld) klicke. Der ReConnect kommt nicht, wenn ich HTerm einfach nur in der Taskleiste "reaktiviere". Das sollte geändert werden, oder? Gruß Michael
Hallo Tobi, gibt es irgendwie eine Bedienunganleitung zu Deinem Programm ? Ich scheitere schon daran, nur einen einzelnen Tastendruck auszusenden und danach etwas zu empfangen. Vielen Dank, Yogi
Hallo Tobi, darf ich noch Wünsche äußern? Kannst Du die Flusskontrolle noch um eine Software-Flußkotrolle mit STX/ETX erweitern? Alternativ wäre es auch super, wenn das Programm Einzelbytes auf den Com-Port sendet und erst das nächste Byte ausspuckt, wenn das empfangene Echo dem gerade gesendeten Byte entspricht. Auf diese Weise könnte man sehr einfach Firmware-Updates auf externe Hardware über Bootloader realisieren, gerade wenn die Schnittstelle auf eine hohe Baudrade eingestellt ist und man nicht laufend umstellen will.
Hallo Tobi, es gibt einen Bug im Sequenz-Fenster: ab einer gewissen Menge an Einträgen klappt der Scrollbalken nicht mehr, wenn man nach der Eingabe der Sequenzen das Programm geschlossen und wieder geöffnet hat. Ausschlaggebend ist wahrscheinlich die Größe des darstellbaren Hauptfensters. Bei abgedocktem Sequenz-Fenster funktioniert der Scrollbalken ebenfalls nicht. Somit erreicht man nur die oberen Sequenzeinträge. Ab und an gibt es nicht reproduzierbare Programmabstürze.
Hallo Tobi, mit der neuen Funktion "New line after .. ms" ist man (endlich) in der Lage, einzelne Strings unterschiedlicher Länge in Zeilen abzulegen. Bei HTerm ist der Zeilenumbruch nicht abschaltbar, was bei langen Strings dazu führt, daß sie in der nächsten Zeile weitergeschrieben werden und somit schlecht gezählt werden können. Toll wäre: - Zeilenumbruch zu/abschaltbar - horizontaler Scrollbalken - Zeilennummern zu/abschaltbar (wie bei Tabellenkalkulationsprogrammen) Wäre super, wenn Du das bei der nächsten Version implementieren würdest!!! MfG Ak Tronik
Hallo Tobi Habe gerade dein Terminalprogramm getestet - sehr viele Funktionen in der Oberfläche, aber durch klare Bezeichnungen sicher nützlich. Ich habe ein Datenempfangsprogramm mit C#, VS2008 geschrieben. Für ein Meßgerät. Wenn man bei einem Seriell USB Konverter den Stecker zieht, entfällt Windows die COM-Schnittstelle. Dein HTerm zeigt aber weiter verbunden an. Man muß es wissen, und manuell auf disconnect / connect verbinden. Da reagiert es wie MS Hypertem. "Mein" Programm wartet ggf. auf die Schittstelle. Durch Stecker ziehen und wieder stecken gibt sowohl Hyperterm als auch HTerm die Schnittstelle frei. Ich habe llerdings ein Problem mit einer exception nach dem 3. Reconnect. Ein MS-Fehlerfenster kommt, das Programm macht aber was es soll. Ich werde dieses Fenster leider noch nicht los. Wäre es nicht sinnvoll, den "richtigen" Status anzuzeigen? Und nach wiedergültig werden automatisch zu verbinden? MfG Frank
> - Zeilenumbruch zu/abschaltbar Zuschaltbar sind die doch, oder was meinst du? hterm merkt sich leider die Einstellungen des Zeilenumbruchs nicht, oder ich bin zu blöde. ;-) > Ab und an gibt es nicht reproduzierbare Programmabstürze. Ich vermute, die treten auf, wenn hterm zu lange läuft. Mir fiel auf, dass nach langem hterm-Betrieb es abstürzt. @Tobi Gibt es eigentlich Logfiles mit denen wir dir helfen könnten? Ansonsten fiel mir das unter Vista SP1 und hterm 0.8.0beta auf, die 0.8.1beta habe ich gerade erst entdeckt. ;-)
Ich habe einen kleinen Fehler in der neuesten Version gefunden. Ich habe Focus Loss Disconnect aktiviert, HTerm war verbunden. Dann habe etwas in meinem Code geändert (so dass HTerm den Port geschlossen hat), und habe dann wieder auf HTerm geklickt, und sah diesen Fehler. Der scheint allerdings nicht neu zu sein: Beitrag "Re: Neues Terminal-Programm für Windows" Ich verwende zwar auch einen USB-Seriell Adapter, allerdings wurde dieser nicht ausgesteckt. Nach einem Klick auf Connect lief wieder alles wie vorher. Anscheinend hat HTerm da beim automatischen Disconnect irgendwas zugemacht, was beim Reconnect wieder gebraucht wurde. Reproduzieren konnte ich den Fehler bisher leider/zum Glück nicht.
Ich hatte obigen Fehler noch ein paar mal, vor allem wenn ich mal schnell mittels Alt+Tab auf ein anderen Fenster wechsele und wieder zurück. Aber nur manchmal kommt dann der Fehler. Ich habe aber noch einen anderen Fehler gefundne: Wenn man Autosend verwendet und Autodisconnect, dann macht er einen Disconnect sobald man im Autosend Fenster auf Start klickt.
Danke für die ganzen Hinweise. Ich werd in den nächsten Wochen mal schaun, dass ich die gröbsten Bugs behoben bekomme. Für neue Features fehlt mir im Moment leider die Zeit :/
Habe den Absturz jetzt mal reproduzieren können: bei einer markierten Stelle in der Eingabezeile und bei Sequenz -> "Insert to input line" macht das Programm ´nen Fisch. Ein angedocktes Sequenzfenster hat bei zu vielen Einträgen keine Scrollbalken und/oder verliert ab und an Daten, wenn das Sequenzfile gespeichert wird. Dies passiert bei abgedocktem Sequenzfenster nicht. Nochmal danke für Deine wertvolle Zeit und das Gehinschmalz ;-).
Htherm unter Debian installieren. Habe hier nur die ältere Version für Win Me installieren können, bei dem Linux Debian etch 4, KDE 3.5 bin ich mir bei den Codes nicht ganz sicher. Bitte um Anweisung, wie man den tarball installiert. Gruß Hans
Ich fühle mich verpflichtet das mal hier zu posten : Super Programm, hilft mir im Moment wirklich weiter ;) Dankeschön :)
Hey, ich kann da nur zustimmen, das Programm ist echt praktisch. Großen Dank an den Entwickler!!!!!!
Konnte die Linuxversion inzwischen einrichten, keine Hilfe mehr nötig.
Den Beitrag von "Peter" habe ich gelöscht, da er Hinweise auf "eine gecrackte Version" enthielt.
hab mri das mal installier, und es ist wirklich ein gutes Programm. Mit Hyperterminal nich zu vergleichen :D Vielen Dank dafür!!!
hi,falls das Programm noch weiterentwickelt wird, dann möchte ich einen Bug bzw. ein Ärgernis melden, was mich ne ganze Menge an Zeit für die Fehlersuche gekostet hat: wenn das Fenster nicht maximiert ist, und man Daten empfängt, dann entspricht die Darstellung nicht den tatsächlichen Daten. Maximiert man das Fenster dann, wird alles nochmal neu gezeichnet und es stimmt(ohne neuen Datenempfang) Ich habe einen Datensatz von 115 Zeichen von einer RFID Karte empfangen und per RS232 ausgegeben. Dabei ist der Fehler aufgetreten. Habe mich dann ewig gewundert und gesucht, mit Oszi gemessen udn dann durch Zufall mal das Fenster maximiert und schwupps war alles korrekt :D Ansonsten ein super Programm und Hyperterminal wirklich deutlich überlegen!!
Jo, schließe mich an, ist ein echt gutes Programm. Ich hätte noch ne Frage bzgl. Steuerung des Programms via Schnittstelle. Werden so Sachen wie ClearScreen, etc. unterstützt? Ralf
Nein, das ist ein reiner Schnittstellenanalysator. Der Name "Terminalprogramm" ist irreführend gewählt.
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.