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:

Microcontroller via USB mit PC verbinden

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Ahnungslos



Anmeldungsdatum: 29.10.2007
Beiträge: 13
Wohnort: oben, bei Mutti

BeitragVerfasst am: 10.04.2008, 16:16    Titel: Microcontroller via USB mit PC verbinden Antworten mit Zitat

Hallo,
habe so einen C8051F340 Microcontroller von SILABS.
Der kann USB.
Wenn ich den mit dem PC verbinde, was muss ich tun, was beachten?

Muss ich auf dem PC unter XP einen Treiber instalieren?
Wie spreche ich den Microcontroller unter Freebasic an?
Mir würde für den Anfang das Steuern einer Leuchtdiode schon reichen.

Wer kann helfen? Leider bin ich AHNUNGSLOS traurig
_________________
In einem Club, der Leute wie mich aufnimmt, da möchte ich nicht Mitglied sein!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Elektronix



Anmeldungsdatum: 29.06.2006
Beiträge: 742

BeitragVerfasst am: 10.04.2008, 16:19    Titel: Antworten mit Zitat

Dann solltest Du es gleich lassen.
USB-Projekte gehören zur höheren Schule der Elektronik und Programmierung. Den USB-Bus des Rechners kannst Du nicht direkt ansprechen, nur über Treiber.
_________________
Und die Grundgebihr is aa scho drin- DOS is jo nett.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Ahnungslos



Anmeldungsdatum: 29.10.2007
Beiträge: 13
Wohnort: oben, bei Mutti

BeitragVerfasst am: 10.04.2008, 16:29    Titel: Antworten mit Zitat

Elektronix hat Folgendes geschrieben:
Dann solltest Du es gleich lassen.
USB-Projekte gehören zur höheren Schule der Elektronik und Programmierung. Den USB-Bus des Rechners kannst Du nicht direkt ansprechen, nur über Treiber.


Das baut mich jetzt unheimlich auf und hilft mir weiter.
Das ich einen Treiber brauche, habe ich schon vermutet. Meine Frage ist, wie spreche ich den Treiber unter Freebasic an.
Für's erste würde mir reichen, wenn mir jemand die Tool-chain erläutern würde. Für's zweite währe ein bischen Hilfestellung nett, z.B. Leuchtdiode steuern bzw. einen Taster am Microcontroller abfragen.

Das ich Ahnungslos bin ist nur "bescheiden tun".
Ich programmiere die Microcontroller 8051 und ARM7TDMI in Assembler und C.
_________________
In einem Club, der Leute wie mich aufnimmt, da möchte ich nicht Mitglied sein!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Elektronix



Anmeldungsdatum: 29.06.2006
Beiträge: 742

BeitragVerfasst am: 10.04.2008, 17:00    Titel: Antworten mit Zitat

Ahnungslos hat Folgendes geschrieben:
Elektronix hat Folgendes geschrieben:
Dann solltest Du es gleich lassen.
USB-Projekte gehören zur höheren Schule der Elektronik und Programmierung. Den USB-Bus des Rechners kannst Du nicht direkt ansprechen, nur über Treiber.


Das baut mich jetzt unheimlich auf und hilft mir weiter.

Sorry, aber was besseres kann ich Dir kaum sagen. Wer Ahnungslos ist, ist mit solchen Projekten u. U. schnell überfordert.
Zitat:

Das ich einen Treiber brauche, habe ich schon vermutet. Meine Frage ist, wie spreche ich den Treiber unter Freebasic an.
Für's erste würde mir reichen, wenn mir jemand die Tool-chain erläutern würde. Für's zweite währe ein bischen Hilfestellung nett, z.B. Leuchtdiode steuern bzw. einen Taster am Microcontroller abfragen.

Das ich Ahnungslos bin ist nur "bescheiden tun".
Ich programmiere die Microcontroller 8051 und ARM7TDMI in Assembler und C.

In der Systemsteuerung kannst Du den IRQ und den E/A-Bereich abfragen. Wie Du den Treiber ansprichst, hängt aber vom Treiber ab, dazu kann ich Dir nichts sagen.
_________________
Und die Grundgebihr is aa scho drin- DOS is jo nett.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 10.04.2008, 23:36    Titel: Antworten mit Zitat

Hallo

Muss es denn per USB sein? Ich habe mir bisher für die Kommunikation zwischen PC und Mikrocontroller (C-Control, PICs) einfach selbst kleine Übertragungsprotokolle geschrieben und einen oder mehrere Pins des Controllers mit der seriellen Schznittstelle des PCs verbunden. Allerdings mit QuickBasic. Auch eine Übertragung per I²C-Zweidrahtleitung habe ich schon in QB Programmiert. Ebenfalls für den COM. Vieleicht wäre das auch eine Möglichkeit für dich.

Wenn es nur darum geht, Schalter abzufragen oder LEDs zu schalten, braucht man aber keinen Mikrocontroller. Das ist sogar ganz ohne zusätzliche Elektronik möglich.

Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Dr. Bakterium



Anmeldungsdatum: 13.09.2007
Beiträge: 13

BeitragVerfasst am: 11.04.2008, 05:53    Titel: Antworten mit Zitat

Wenn der Mikrocontroller USB kann, müßte im Datenblatt drinstehen, wie das geht.

Leider hab ich mit USB auch noch nix gemacht. In den allermeisten Steuerungsfällen reicht COM völlig aus und zur Ansteuerung einer COM-Schnittstelle gibt es auch Unmengen Programmierbeispiele.

Wenn du möglichst schnell und möglichst einfach zum Ziel kommen möchtest, würd ich dir empfehlen, einfach einen fertigen USB/COM-Adapter für ein paar Euro zu kaufen, die COM-Buchse herauszulöten und direkt mit deinem Mikrocontroller zu verkabeln.

Von außen sieht es dann aus wie ein USB Gerät und du hast keinen Treiberstreß mit den Augen rollen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Ahnungslos



Anmeldungsdatum: 29.10.2007
Beiträge: 13
Wohnort: oben, bei Mutti

BeitragVerfasst am: 14.04.2008, 16:25    Titel: USB und Mikrocontroller Antworten mit Zitat

Erstmal schönen Dank an alle die mir geantwortet haben.

In meiner Anfrage habe ich geschrieben, das mir erstmal das Ansteuern einer Leuchtdiode und die Abfrage eines Tasters reichen würde. Das sind allerdings nur Teilziele, aber wenn ich das mit USB schaffen würde, währe ich ein grosses Stück weiter gekommen.

Da ich bis zu zehn ARM7 Microcontroller in meiner Schaltung habe, muss ein Microcontroller, der USB hat, die Oberaufsicht haben und die Kommunikation mit dem PC übernehmen.

Mit so einem USB-RS232-Converter-Cable habe ich schon rumprobiert.
115200 Baud und mehr sind mit Hyperterminal kein Problem. Das Problem ist, das dieses USB-RS232-Converter-Cable bei meinem PC "COM4" heisst und ich es unter Freebasic nicht geschafft habe, es anzusprechen. Das Betriebssytem währe Windows 2000, XP, Vista
_________________
In einem Club, der Leute wie mich aufnimmt, da möchte ich nicht Mitglied sein!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

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

10 ARM7!!!!! ... sry, aber du bist Krank! was zum geier willst du damit ansteuern?!?!?

Selbst in meinm Raketenleitsystem hab ich nichtmal auch nur annähernd 10 ARM7 verbaut, und das Leitsystem frisst enorm an leistung.


eventuell solltest du dir überlegen einen anderen Controler zu verwenden als 10 ARM7. Wir wär es vieleicht mit einem AMDK63DNow ? ... oder einem Intel ähnlicher klasse ?



MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Elektronix



Anmeldungsdatum: 29.06.2006
Beiträge: 742

BeitragVerfasst am: 14.04.2008, 16:51    Titel: Re: USB und Mikrocontroller Antworten mit Zitat

Ahnungslos hat Folgendes geschrieben:

Mit so einem USB-RS232-Converter-Cable habe ich schon rumprobiert.
115200 Baud und mehr sind mit Hyperterminal kein Problem. Das Problem ist, das dieses USB-RS232-Converter-Cable bei meinem PC "COM4" heisst und ich es unter Freebasic nicht geschafft habe, es anzusprechen. Das Betriebssytem währe Windows 2000, XP, Vista
Für solche emulierten COM-Ports gilt unter Win2K/XP das gleiche wie mit physischen Ports: Man kann Hardware NICHT direkt ansteuern, das verbietet das OS. Man braucht einen Treiber, z. B. InPout32.dll oder das Programm Userport.
_________________
Und die Grundgebihr is aa scho drin- DOS is jo nett.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Ahnungslos



Anmeldungsdatum: 29.10.2007
Beiträge: 13
Wohnort: oben, bei Mutti

BeitragVerfasst am: 16.04.2008, 12:16    Titel: Antworten mit Zitat

ThePuppetMaster hat Folgendes geschrieben:
10 ARM7!!!!! ... sry, aber du bist Krank! was zum geier willst du damit ansteuern?!?!?


Die Interrupt-Latenzzeit der meisten Mikrocontroller ist einfach zu hoch.
Der ARM7TDMI hat ein (sorry das ich das so direkt sage) geradezu hirnrissiges Interruptsystem. Er hat nur IRQ und FIQ also 2 Prioritäten.
Wenn jetzt ein Interrupt kommt oder am besten mehrere gleichzeitig, muss das Programm pollen, wo kommt der Interrupt her und wenn ja wie viele, und welchen bedien ich als erstes. Um von solchen Einschränkungen unabhängig zu sein, habe ich eine ganze Fussballmannschaft von MCU's. Bei deinem Raketendings bist du wahrscheinlich jede ms, also tausendmal pro Sekunde gefragt, ein paar Sensoren auszuwerten und ein paar Aktoren zu verstellen. Bei meinem System sind es 1-2 us also 500000 bis 1000000 Aktivitäten pro Sekunde. Zunge rausstrecken
_________________
In einem Club, der Leute wie mich aufnimmt, da möchte ich nicht Mitglied sein!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

BeitragVerfasst am: 16.04.2008, 14:27    Titel: Antworten mit Zitat

Naja.. mich würde interessieren, as das für ein system wird .. kannst du das mal Beschreiben?

"Raketendings" ... Nun .. alle ms is etwas wenig .. ichnutze die Interuptleitugnen für die interne Datenkommunikation (eigenes Protokoll) ... und dort brauch ich hohe datenraten bis zu 1MBit und mehr ... folglich arbeite ich auch im us bereich.

Mich würde wirklich brennend interessieren, was du da so rasant regeln willst.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Elektronix



Anmeldungsdatum: 29.06.2006
Beiträge: 742

BeitragVerfasst am: 16.04.2008, 15:50    Titel: Antworten mit Zitat

Nimm doch nen Pentium-4 oder neuer und programmiere ihn mit Assembler... happy USB und FreeBasic sind dafür sowieso zu langsam grinsen
_________________
Und die Grundgebihr is aa scho drin- DOS is jo nett.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

BeitragVerfasst am: 16.04.2008, 15:56    Titel: Antworten mit Zitat

Naja .. n P4 is auch nicht besonders schneller, als n ARM ... ich weis schon, worauf er hinaus will, aber wozu er das braucht, würde mich mal interessieren.

den P4 kannst interrupt-technisch nicht mit nem ARM vergleichen .. der ARM is hier bedeutend shcneller, zuumal der P4, bzw andere Prozis noch einen Interrupt-Manager besitzen, um die Interruptleitungen zu vervielfachen. Und da smacht ihn Interrupt-technisch langsam. Für hochgeschwindigkeits messwertanalyse is son prozi wohl nicht wirklich geeignet.


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
RockTheSchock



Anmeldungsdatum: 04.04.2007
Beiträge: 138

BeitragVerfasst am: 16.04.2008, 17:30    Titel: USB Programmierung Antworten mit Zitat

Guck doch mal bitte ob du damit etwas anfangen kannst.

http://libusb-win32.sourceforge.net/

du müsstest das header file usb.h, das in c vorliegt nach freebasic übersetzen. Dazu gibt es auch ein Tool was das etwas automatisiert.
Dann müsstest du die Funktionen auch in FreeBasic verwenden können, sogar Plattform-Übergreifend unter Windows und unter Linux

eine Doku zur API gibts hier

http://libusb.sourceforge.net/doc/


ich hab mir dieses Dokument zum MicroController kurz angeguckt und verstehe nur Bahnhof

http://www.silabs.com/public/documents/tpub_doc/dsheet/Microcontrollers/USB/en/C8051F34x.pdf

also noch viel spaß noch mit deinem Projekt!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. 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