Ich brauche gerade für einen Test eine Oszilloskop-Funktion für die serielle Schnittstelle (Daten vom Mikrokontroller) und bin in der Vorüberlegung für die Erstellung einer passenden Software. Meine hier bereits vorgestellte Software SerialComGrapher passt nicht, da ich eine Triggerfunkion benötige und auch sonstige Scope-Funktionen fehlen. Die Maximalrate für die äquidistant eintreffenden Daten sollte mind. 100 KSamples/s betragen. Es sind 1 oder 2 Kanäle geplant. Meine Fragen hierzu: Gibt es sowas als Freeware, dann brauch ich mir die Mühe nicht machen. Gefunden habe ich nur relativ langsame Software. Wenn nicht, habt ihr Interesse an sowas? Für mich alleine würde ich es nur quick and dirty erstellen, ansonsten etwas netter und umfangreicher :)
Albert M. schrieb: > Die Maximalrate für die äquidistant eintreffenden Daten sollte mind. 100 > KSamples/s betragen. Es sind 1 oder 2 Kanäle geplant. Ich denke mal 100KSamples/s wirst du über eine serielle Schnittstelle (ich denke mal du meinst RS-232) nicht hinbekommen. Standard bei PCs ist max 115200Baud. Also höchstens ca. 15 bis 20 KSamples/s auf einem Kanal. Es sei denn du nimmst USB-RS232-Wandler, die höhere Baudraten können. Oder können PCs auch noch höhere Baudraten? Viele Grüße Michael
Es gab hier diverse Threads zur software dso201 ohne verwertbare Ergebnisse. ich habe mir das dso201 gekauft ohne den Funktionsumfang mangels brauchbarer Anleitung vollständig nutzen zu können. Deswegen kam mir die Idee, den dso201 auf einem lpc1769 nachzubauen. Der lpc-adc schafft bei 12 Bit Auflösung rund 180.000 Messungen in der Sekunde (bei 100mhz, möglich sind 120 MHz). Wenn man einen separaten adc-ic mit geringerer Auflösung nimmt, müsste man diesen Wert noch verbessern können. Ich habe an einen ca3304 gedacht. Damit müsste ein brauchbarer Eigenbau mit relativ wenig Aufwand zu realisieren sein. Ich würde mich an einem solchen Projekt gerne beteiligen.
@michael Die bekomme ich locker hin. Nicht Standard RS232 sondern UART/USB Converter am Mikrokontroller. Und ja PC's können noch wesentlich höhere Baudraten.
@leluno Ähm - es geht mir rein um die Software-Erstellung. Wo die Daten dann herkommen ist ziemlich egal.
Albert M. schrieb: > Meine Fragen hierzu: > Gibt es sowas als Freeware, Evtl. ein NULL-Modem? Dann weißt Du wenigstens was wieder ankommt und lernst dabei die "Geschwindigkeit" Deiner seriellen Schnittstelle kennen. http://de.wikipedia.org/wiki/Nullmodem-Kabel
oszi40 schrieb: >> Gibt es sowas als Freeware, > Evtl. ein NULL-Modem? Dann weißt Du wenigstens was wieder ankommt und > lernst dabei die "Geschwindigkeit" Deiner seriellen Schnittstelle > kennen. http://de.wikipedia.org/wiki/Nullmodem-Kabel Was soll dieser sinnlose Beitrag? Was möchtest Du damit sagen?
Anstelle von 1 Byte je USB Datenpakte zu senden, sende 64 Datenpakete je Endpoint. Also bei 1mS Servicezeit und 64Bytes sind es 512Kbits oder 64Kbytes Datentransfer je Endpoint und Sekunde. Je nach uC hast du eine Limitierung der Endpunkte.
chris schrieb: > Anstelle von 1 Byte je USB Datenpakte zu senden, sende 64 Datenpakete je > Endpoint. Also bei 1mS Servicezeit und 64Bytes sind es 512Kbits oder > 64Kbytes Datentransfer je Endpoint und Sekunde. Je nach uC hast du eine > Limitierung der Endpunkte. Und was willst Du damit sagen? Mit meiner eigenen Software SerialComGrapher, in der aktuellen Version 0.6.6, schaffe ich ja bereits 100 KSamples/s. Und das mit Werten im ASCII Format. Mit reiner Binär-Übertragung geht das noch schneller. Beitrag "Daten von der seriellen Schnittstelle einfach darstellen"
ah, jetzt hab ich den Thread zu SerialGrapher gefunden. Sieht echt gut aus. Hast du Zugang zu LabView? Damit müsste man sowas auch recht leicht "malen" können. Studentenversionen gibts echt günstig: http://edustore.mstore.de/software/div.hersteller/294/ni-labview-download-student-edition-win Meine LabView Erfahrungen sind jetzt auch schon ein paar Jahre alt, aber wenn ich das richtig in Erinnerung habe, gibt es ein Oszilloskop-VI, dass du einfach noch mit Daten aus einer geeigneten Datenquelle füttern musst. Viele Grüße Michael
michael schrieb: > ah, jetzt hab ich den Thread zu SerialGrapher gefunden. Sieht echt gut > aus. Hast du Zugang zu LabView? Damit müsste man sowas auch recht leicht > "malen" können. Mein ehemaliges Unternehmen, Datalog Systeme zur Messwerterfassung ( firmiert jetzt unter measX ), dass ich 1992 verkauft habe, arbeitet heute viel mit LabView. Ich finde LabView nicht so prickelnd, aber es hat sich wohl als Quasi-Standard etabliert. Ich programmiere als Hobby und Zeitvertreib lieber mein eigenes Ding.
Albert M. schrieb: > chris schrieb: >> Anstelle von 1 Byte je USB Datenpakte zu senden, sende 64 Datenpakete je >> Endpoint. Also bei 1mS Servicezeit und 64Bytes sind es 512Kbits oder >> 64Kbytes Datentransfer je Endpoint und Sekunde. Je nach uC hast du eine >> Limitierung der Endpunkte. > > Und was willst Du damit sagen? > > Mit meiner eigenen Software SerialComGrapher, in der aktuellen Version > 0.6.6, schaffe ich ja bereits 100 KSamples/s. Und das mit Werten im > ASCII Format. Mit reiner Binär-Übertragung geht das noch schneller. > Beitrag "Daten von der seriellen Schnittstelle einfach darstellen" Full Speed USB devices laufen üblicherweise mit USB Interrupt-Paketen. Dies ist je ein Paket je ms und Endpoint bei Full Speed. Also wenn man nur einen Endpoint hat um Daten zu schicken, dann kann man maximal 1000 Pakete je Sekunde schicken. Diese Pakete kommen dann auch garantiert an. Ob man da nur 1 Byte je Paket schickt, oder 64 Bytes ist egal. Interrupt Transfer garantiert die Bandbreite und das Ankommen der Pakete. Es gibt auch andere Möglichkeiten Daten zu schicken die auch schneller sind, dabei ist die Bandbreite oder das Ankommen der Daten nicht garantiert. Deshalb wird meisten diese Betriebsart gewählt, welche dann bei Full Speed 1000-64000 Bytes je Sekunde und Endpoint unter normalen Bedingungen garantiert.
@ chris Chris, ich habe ehrlich gesagt von irgendwelchen Endpoints keine Ahnung. Wie bereits gesagt, erreiche ich mit meiner bestehenden Software (siehe oben) bereits mehr als 100.000 Messwerte/s über ein normales UART/USB Konverter-Modul, welches im PC als vitueller ComPort erscheint. Ungeachtet aller Endpoints funktioniert das ohne Datenverlust wunderbar. Ich benutze da so ein oder ein ähnliches Teil von einem deutschen Hersteller: http://www.ebay.de/itm/USB-2-0-zu-UART-TTL-6PIN-Anschluss-Modul-serieller-/400537649540?pt=DE_Computing_USB_Kabel_Hubs_Adapter&hash=item5d41e78184
chris schrieb: > Full Speed USB devices laufen üblicherweise mit USB Interrupt-Paketen. Müssen sie aber nicht. Ab Full-Speed steht (lt. Standard) auch Bulk und Isochronuous zur Wahl. Das übliche RS232-USB-Wandler-Gedöns jedenfalls läuft allerdings meist tatsächlich nur mit Interrupt-Transfers. Insofern hast du auf jeden Fall recht.
Danke für eure Beiträge, aber die USB-Innereien sind hier gar nicht die Frage. Der Datentransfer funktioniert schliesslich in der von mir gewünschten Geschwindigkeit problemlos. Vielleicht antwortet ja noch jemand auf meine ursprüngliche Fragestellung.
Außer LabView fällt mir jetzt auch nichts ein. Es gibt, gegen Aufpreis, bei LabView einen EXE-Builder, der eine SW erzeugt, die ohne Lizenz auf jedem PC läuft. Wenn Du jemanden hast, der Dir Dein LabView-Programm (wenn Du Dich zu diesem Schritt entschließt) finalisiern kann, hast Du Deine gewünschte SW. Sonst bleibt nur der Weg, es mit C/C++/C# (oder Delphi) und dem MS-API selbst schreiben. Ist aber mühsam und genau das wolltest Du umgehen. Blackbird
ScanLogic oder andere diverse Serial-"Datenlogger" fallen mir noch ein, mansche haben eine Oszilloskop-Funktion für die seriellen Daten. Auch Burkhard Kainke hat mal sowas mit einem 2. Autor für eine Serielle Oszilloskop-Funktion auf dem PC realisiert. Mit VB und Delphi. Sowohl für eine ältere Stand-alone-Haedware-Lösung als auch für den Renesas-R8C13-Mikrocontroller. Diese SW steuerte auch noch die HW, aber vielleicht kann man das ignorieren oder anpassen. Blackbird
evtl. ist LogView was für Dich ? Oder kann angepasst werden ?
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.