Hallo, ich bin seit geraumer Zeit daran mit einem PIC18f4550 und der von Microchip in C programmierten Firmware ein USB Datenlogger zu entwickeln. (Praktikum) Gibt es Jemanden in diesem Forum der sich schon mit einem ähnlichen Projekt beschäftigt hat oder gerade dabei ist? Ich bin momentan auf ein paar Fragen gestoßen auf die einfach keine Antwort finde. Da ich mit diesem Projekt meinen Einstieg in die Mikrocontrollerwelt gewagt habe bin ich noch nicht in der Lage die Firmware selber zu schreiben. Ich versuche an der von Microchip die Arbeitsweise zu verstehen und diese entsprechend anzupassen. Problematisch ist nur, dass ich über keinen BUS- oder USB- Analysator verfüge. Das tatsächliche Geschehen auf dem Bus lässt sich so nur schwer nachvollzihen. Gerade beim debuggen der Software. Momentan liegt mein Problem in der Behandlung der Control Transfers. Freu mich auf jeden Kommentar!!! MfG robert
Hi. Ich versuche auch schon seit einiger Zeit das USB Modul des PIC18F4550 anzusprechen,jedoch habe ich es noch nie geschaft.. nicht einmal mit dem Beispielprogramm von Microchip. Die Hardware ist so ähnlich aufgebaut wie das Demoboard von Microchip. Ich hab auch schon versucht das Datenblatt zu lesen und es selbst anzugehen.. aber dafür fehlen mir dir grundlegenden sachen über USB selbst... Also im grossen und ganzen... es ist nicht einfach.. und ich wünsche dir viel Erfolg und hoffe du schafst es und postest nachher deine Erfolge... würde mich freuen. http://burger-web.com/Projects/PIC18F4550USB/de_PIC18UsbBoard.htm
Ich habe mir auch ein Board mit dem 4550 und dem 2550 auf Lochraster aufgebaut und arbeite mit der HID-Firmware. Allerdings fand ich die Implementierung des ganzen USB-Gerüsts doch sehr verwirrend und alles habe ich nicht verstanden. Vielmehr habe ich die Firmware erweitert mit meinen eigenen Routinen und das funktioniert eigentlich sehr gut. Zur Zeit ist es ein AD-Wandler mit mehreren Kanälen, war auch schon ein USB-gesteuerter Dimmer. Microchip hat jetzt auch eine Mass-Storage Frmware veröffentlicht, mal sehen was die so kann. Gruß Thorsten
Hallo! Ist zwar nicht PIC, aber auf der PC-Seite sind sie eh alle gleich. Mit der Dokumentation sollte euch zumindest mal bei der Programmierung des PC's geholfen sein. http://www.ime.jku.at/tusb mfg Weichinger Klaus www.weinga-unity.at.tt www.weinga-unity-uni.at.tt
Ich habe mir an dem Demoboard von Microchip auch einige Ideen abgeschaut jedoch hat sich recht wenig für mein Projekt geeignet. Im Großen und Ganzen wird ein AD Wandler betrieben der von vier kleinen Eingangsverstärkern seine Eingangssignale bekommt. Mit ein paar kleinen Änderungen ist die originale Firmware eigentlich auf jedes Board anwendbar. Die Belegung der Pins muß geändert, und die Konfigurationsbits angepasst werden. Über die PC Demosoftware kann man nun schon die Firmware auslesen. Diese Routinen habe ich für die ersten Versuche den PICinternen Wandler auszulesen genutzt und sie entsprechend geändert. Da der Treiber ebenfalls von Microchip bereitgestellt ist und wie ich finde auch recht gut dokumentiert ist stellt die PC Seite für mich kein Problem dar. Ich danke trotzdem für Deinen Beitrag Klaus! (Hoffe Vorname ist OK???) Und ich will mich auch gleich noch mal bedanken, da Deine Ausarbeitung das erste war was ich zu diesem Thema überhaupt gelesen habe. War ein guter Einstieg! Ich habe auch lange über den TUSB nachgedacht aber in der Firma ist der PIC das Mittel der Wahl und die entsprechenden Werkzeuge sind auch vorhanden. Von der Vorstellung das USB Modul einfach zu benutzen bin ich bei Zeiten abgekommen. Um die Fähigkeiten von USB wirklich nutzen zu können muß man glaub ich sehr tief in die Materie eindringen. Die Spezifikation vom USB Konsortium ist wirklich nicht umsonst über 600 Seiten lang. Ich habe recht präzise Vorgaben was das Gerät können soll und da stößt das Modifizieren der Firmware an seine Grenzen. Mein eigentliches Problem ist, dass ich nicht in "echtzeit" debuggen kann da Vorgänge wie die Enumeration ja in Millisekunden ablaufen und das debuggen zu lange dauert. Ich sehe quasi nicht wirklich was auf dem Bus passiert und ebensowenig was in der Firmware an einigen stellen passiert. Wäre schön wenn hier noch ein paar Beiträge dazu kommen würden. Vielleicht hilft ja auch schon das drüber schreiben. Bei Fragen, soweit ich sie beantworten kann, bin ich jederziet bereit sie zu beantworten.
Hallo! Jo, Klaus passt. Das Debuggen hab ich eigenlich per UART problemlos durchgeführt. Der Anfang war etwas doof, da ich auch beim Tusb alles ausprogrammieren musste, aber über UART konnte ich z.B. die eingehenden Setup-Requests usw. ausgebenlassen und somit festellen, wo der Enumerationsprozess stehen bleibt oder probleme hat. Mit fertigen Debuggersystemen hab ich eher weniger Erfahrungen, aber die UART hat mir immer geholfen. mfg Weichinger Klaus
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.