PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Atmega 2560 USB USART Erkennung



sportfreak
10.09.2009, 19:38
Hallo,

ich habe irgendwo vor einiger Zeit mal die Info gefunden, wie ich im Mikrocontroller erkennen kann, ob ein USB-Kabel angeschlossen ist. Leider finde ich sie jetzt nicht wieder.

Ich habe ein RN-2560 module von Roboternetz, also ein kleines Board mit Atmega2560 und USB Anschluss.

In der Doku http://www.robotikhardware.de/download/rnmega2560.pdf steht drin, dass es eine solche Möglichkeit geben muss, denn auf Seite 15 im Quelltext steht


If Usb = 1 Then 'Wenn USB erkannt dann

-> Aber das kann ich so nicht umsetzen, da ich in C mit WinAVR und einem JTAG arbeite.

Also bitte helft mir damit, wie ich vom Mikrocontroller aus mitbekommen kann, ob ein USB-Kabel dran steckt.

USB über UART funktioniert schon super, wenn ich aber momentan meinen MC ohne USB-Kabel laufen lasse, dann blinkt einfach nur die rote LED und nichts passiert.

Jaecko
17.09.2009, 20:58
Es gibt bei dem Modul hierfür einen Pin. Wenn du Pin 5 von Port E liest, müsstest du erkennen können, wenn das Modul per Kabel an nem PC hängt.

sportfreak
18.09.2009, 09:25
Danke für die Antwort, werde ich ausprobieren. Weißt du, wo das dokumentiert ist?

... nicht das ich dir nicht glaube, aber ich würd das gern nochmal nachlesen und dabei auch nachvollziehen, was ich überlesen habe.

danke

Jaecko
18.09.2009, 11:07
Hab das in der PDF zum Modul gefunden.
auf Seite 7, in der Liste der Pins:
"Pin 7 PE5 / OC3C / INT5
Mit USB verbunden und darf nur gelesen werden. Ist High wenn USB-Bus Host angeschlossen. Kann per Software abgefragt werden."

Dann gibts noch auf S. 15 ein Codebeispiel:


Config Pine.5 = Input
Usb Alias Pine.5