Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Kommunikation mit uC über virt. USB->RS232 mitlesen

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Profi-Forum
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
-schumi-



Anmeldungsdatum: 28.10.2009
Beiträge: 131
Wohnort: Südbayern

BeitragVerfasst am: 04.07.2010, 15:08    Titel: Kommunikation mit uC über virt. USB->RS232 mitlesen Antworten mit Zitat

Hallo Community!

Eine Bemerkung im voraus: Ich hab schon viel GeGoogelt, und schon viele Programme ausprobiert und keines war im stande meine Erwartungen zu befriedigen (bzw. Jedes hat grausam versagt weinen )

Das Problem:
Ich hab einen RP6 (Roboter), auf den über eine virtuelle RS232 (USB to RS232 wandler) mithilfe einer Java-Anwendung Programme übertragen werden können.
Ich und ein paar andere Leute möchten jetzt ein eigenes Flash-programm schreiben, weil das original z.B. keine Kommandozeilenparameter unterstützt.
Leider haben wir Probleme mit dem Protokoll der Übertragung und Verschlüsselung der Daten und das original Programm ist nicht open-source..

Lange Rede, kurzer Sinn:
Ich möchte ein Programm schreiben, das mir in einer Textdatei haarkleingenau aufschreibt welche Daten (Byte für Byte) versendet und empfangen wurden.
Dabei siehts folgendermaßen aus:
Reset-Leitung (Damit der uC neu bootet): RTS
Sende-Leitung: TxD
Empfangsleitung: RxD
Mehr brauchts nicht.
Der Port hat hierbei folgende Eigenschaften:
- 38400 Baud (<- später auch 500000, aber das ist noch nicht so wichtig)
- keine Parität
- 8 Datenbits
- 1 Stopbit

So, RTS auslesen ist das geringste Problem, aber:
Wie krieg ich die Daten von Tx und Rx??? mit INP geht das ja soweit ich weis nicht..
Das auslesen mit diversen Programmen aus dem I-net funzt desshalb nicht, weil die Anwendung wie gesagt in Java geschrieben ist und desshalb die Windowsbibliothek nicht benutzt. (So hab ich das zumindest mitbekommen)

[EDIT]
Ich hab grad gelesen, das INP mit USB->RS232 Wandlern nicht mehr funzt mit dem Kopf durch die Mauer wollen
Das macht die Sache natürlich nicht gerade leichter..
Vor allem kann ich jetzt auch RTS nicht mehr so auslesen wie ich mir das gedacht hab..
[/EDIT]

Danke für bis hier her lesen!
Freue mich schon auf Antworten
-schumi-
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Cherry



Anmeldungsdatum: 20.06.2007
Beiträge: 249

BeitragVerfasst am: 04.07.2010, 17:48    Titel: Antworten mit Zitat

http://www.serial-port-monitor.com/free-serial-port-monitor-downloads.html

Das verwende ich (für fast genau das selbe).
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
-schumi-



Anmeldungsdatum: 28.10.2009
Beiträge: 131
Wohnort: Südbayern

BeitragVerfasst am: 04.07.2010, 18:22    Titel: Antworten mit Zitat

Der macht nicht das was er soll.

Für com7 hat er bei den Ein&-Ausgabefenstern absolut gar nichts angezeigt. Wie ich es dann noch mal probieren wollte hat er nur noch com1 erkannt...
Sprich: im Prinzip der selbe Mist wie mit den anderen Programmen

Bin irgendwie ein bischen ratlos.. missbilligen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Cherry



Anmeldungsdatum: 20.06.2007
Beiträge: 249

BeitragVerfasst am: 05.07.2010, 18:42    Titel: Antworten mit Zitat

Naja, du musst zuerst ein Programm haben, was den Port öffnet.

Und ganz allgemein: es ist ratsam, für solche Dinge in den Anschlusseinstellungen das Gerät auf COM1, COM2, COM3 oder COM4 (keine höheren Nummern!) zu legen, damit lösen sich manche seltsame Probleme von allein. (Gerätemanager -> Anschlüsse -> Dein Adapter (COMxx) -> Eigenschaften -> Anschlusseinstellungen -> Erweitert -> COM-Anschlussnummer. Und dann neu starten UND Gerät aus und wieder einstecken! Mit manchen Adaptern gibt es sonst Probleme!)

Hast du das Programm auch als Administrator gestartet? (oder hast du XP?)

Bei mir funktioniert es nämlich bestens...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2507
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 05.07.2010, 19:41    Titel: Antworten mit Zitat

Ich denke halt, diese USB-Adapter für RS-232-Anwendungen sind für "normales" Protokoll ausgelegt, also wenn im QB ganz normal mit
Code:
OPEN "com1:.."

gearbeitet wird und korrekt Zeichen gesendet und empfangen werden. -> So betrachtet stellt das direkte Setzen und Lesen von Lo/Hi-Zuständen an den einzelnen Signalleitungen bereits eine Zweckentfremdung dar. Aber bekanntlich gibt es doch noch recht viele Hardware-Anwendungen, die nicht mit Terminalprogramm-konformem RS-232 arbeiten, z.B. billige DCF77-Zeitsignalempfänger, diverse USVs usw. Nur dort beginnen halt die Grenzen dieser modernen USB-Lösungen, weshalb ich in solchen Fällen lieber eine Gebrauchthardware im EBay ersteigern würde, welche noch richtige Onboard-COM-Ports besitzt.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
-schumi-



Anmeldungsdatum: 28.10.2009
Beiträge: 131
Wohnort: Südbayern

BeitragVerfasst am: 05.07.2010, 20:49    Titel: Antworten mit Zitat

@Cherry:

>>Naja, du musst zuerst ein Programm haben, was den Port öffnet. <<
Was meinst du genau damit? Der RP6Loader (so nennt sich das Teil) schreibt ein Programm auf den uC, dabei versendet und empfängt er natürlich Daten.
Und dazu muss ja der Port geöffnet sein, also müsste es ja eigentlich funzen..

>>Gerät auf COM1, COM2, COM3 oder COM4 (keine höheren Nummern!) zu legen<<
Es ist jetzt auf COM2 (COM1 ist die "richtige" RS232)

>> neu starten UND Gerät aus und wieder einstecken!<<
hab ich gemacht

>>Hast du das Programm auch als Administrator gestartet? (oder hast du XP?)<<
Beides, als Nutzer mit Admin-rechten unter XP Prof. SP 1+2+3
(Wenn ich aus irgendeinem Grund mit Win7 arbeiten muss, neige ich dazu agressiv zu werden durchgeknallt )

>>Bei mir funktioniert es nämlich bestens...<<
Bei mir eben nicht. Kann es sein, das es daran liegt, dass der RP6Loader als JAVA-prog auf die USB->RS232 zugreift?


@dreal:

>>Ich denke halt<<
Denkst du nicht nur, ist auch so.

>>OPEN "com1:.."<<
Funzt bestens mit FB. Kann problemlos mit dem Robby kommunizieren


>>bereits eine Zweckentfremdung dar.<<
Dazu bin ich ja gezwungen, ich kann ja eine Port ums verecken nicht 2 mal öffnen (ist ja irgendwo logisch).
Des weiteren: Ich möchte ja auch wissen welche Daten gesendet werden, und bis ich den Ausgangspuffer gelesen hab (Wenn es sowas überhaupt gibt / möglich ist) sind die Daten evtl. teilweise schon wieder versendet


In ein paar Tagen sollten dann auch unter anderem auch die RS232 PC-Pegel zu TTl-Pegel Wandler (nennen sich MAX232) kommen (+ noch jede menge anderes AVR/uC-Zeug). Dann kann ich nochmal probieren den uC per "reeller" RS232 anzusprechen.
Vlt. geht es ja dann mit dem "mitlesen"

Trotzdem währe ich dankbar wenn noch eine andere Lösung von euch kähme. Um die "reelle" RS232 mit dem RP6Loader nutzen zu können muss ich erst wieder nen Treiber schlachten (bischen umständlich das Ganze)


MfG
-schumi-

PS: Bitte nicht böse sein dass der Quotient von Textmenge/Inhalt bei mir so groß ist grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 12.07.2010, 00:23    Titel: Antworten mit Zitat

Hallo schumi!

Warum so umständlich? Kauf dir noch so einen USB/RS232-Wandler und klemm diesen an die Verbindungsstrecke Roboter/PC.

Das geschieht folgendermaßen:

- Funzt nur, wenn ENTWEDER Roboter ODER PC senden (nie gleichzeitig):
RxD- und TxD-Leitungen OR-Verknüpfen (74LS32) und an die RxD-Leitung des zweiten USB/RS232-Wandlers anschließen

- Falls obiges nicht möglich ist, weil beide gleichzeitig senden, muss man halt eines nach dem anderen auslesen, also beide Leitungen nacheinander an den zweiten Wandler anschließen...oder noch einen dritten Wandler kaufen. grinsen

Wenn der zweite Wandler die gleichen Einstellungen (Baudrate, Stoppbits,..) wie der erste hat, kannst du nun z.B. in Hyperterminal die Übertragung mitschnüffeln.

Gruß,
Paul (der nicht schlafen kann und nach 10000 Jahren mal wieder in dieses Forum guckt)
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
-schumi-



Anmeldungsdatum: 28.10.2009
Beiträge: 131
Wohnort: Südbayern

BeitragVerfasst am: 12.07.2010, 16:11    Titel: Antworten mit Zitat

Hi ho hello (Ich bin grad ein wenig crazy wegen mündlicher Deutschprüfung morgen lächeln )

Zitat:
Kauf

Kommt nicht in Frage grinsen

Aber ich bin grad auf nem anderen Lösungspfad:

echte serielle Schnittstelle <-> Max232N <-> Roboter

Falls hier das ganze auch nicht klappen sollte hab ich ja dann noch den Wandler, den ich normal benutze übrig, um mit dem dann zu Schnüffeln
Hier würde dann deine Idee zum Zuge kommen...

Zitat:
und nach 10000 Jahren mal wieder in dieses Forum guckt

Geht nicht, weil:
Zitat:
1. Nov. 2005 Seite geht online

(laut Begleitseite) Zunge rausstrecken

Danke für deine Hilfe und viel Glück beim Lösen deines Schlafproblems
-schumi-
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 12.07.2010, 16:43    Titel: Antworten mit Zitat

-schumi- hat Folgendes geschrieben:
Zitat:
und nach 10000 Jahren mal wieder in dieses Forum guckt

Geht nicht, weil:
Zitat:
1. Nov. 2005 Seite geht online

(laut Begleitseite) Zunge rausstrecken

Die Begleitseite ging 2005 zum zitierten Termin online, nicht das Forum! zwinkern Das jetzige phpBB-QB-/FB-Forum gibt es bereits seit 2004 und davor gab es zwei alte Foren, die dann 2004 zu diesem hier zusammengelegt wurden ("QB-Forum" und "W-Forum", falls sich der ein oder andere noch erinnert zwinkern ).
_________________

Der Markt regelt das! | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Profi-Forum Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz