USB Schnittstelle von Arduino, etc. als Serielles Port nutzen - in C

OP #4297577
Lesenswert?

Liebe Experten hier,

ich habe in Google lange gesucht um etwas zu finden zu dem Thema, aber 
es kommt nichts Ordentliches, weil da nur Arduino Sprache Beispiele 
zurückkommen, oder diverse Platinen auf denen ein USB seriell Interface 
drauf ist. Ich kann mir aber nicht vorstellen, dass das nicht schon 
jemand in C durchgezogen hat.

Gehen tut es darum. Der ISP ist ja im Prinzip eine serielle 
Schnittstelle. Dieser ISP kann so viel ich weiß auch dazu verwendet 
werden um Daten an den PC zu senden. In Aruduino Language geht das ganz 
einfach mit den entsprechenden Befehlen.

Hat das schon einmal jemand in C gemacht? Oder wonach muss ich da 
googeln, damit ich da ein ordentliches Resultat finde?

Für Hilfe wäre ich dankbar :-)

LG
JK
#4298031
Lesenswert?

Hallo,

USB auf den üblichen Arduinos (Uno, Nano usw.) ist doch nur ein 
USB-Serial-Adapter, entweder mit Mega16U2 oder FTDI oder CH340 oder....
RxD und Txd hängen ganz normal am AVR-Uart.
Natürlich kann man damit machen, was man will, auch ohne C++.

Einzige Ausnahme ist, daß DTR über einen Kondensator a,m Reset des AVR 
hängt um den Bootloader zu starten. Wenn keiner drauf ist gibt es eben 
nur einen Reset wenn man die serielle am PC entsprechend öffnet.

Oder habe ich Deine Frage nicht richtig verstanden?

Gruß aus Berlin
Michael
#4298054
Lesenswert?

Fuerte S. schrieb:
> Hat das schon einmal jemand in C gemacht? Oder wonach muss ich da
> googeln, damit ich da ein ordentliches Resultat finde?

ich verstehe noch nicht mal dein Anliegen!

was genau willst du?

Ich gehöre zu denen die sehr wohl in C vom Arduino an den PC seriell 
über USB senden und empfangen.
Das mache ich in der Arduino IDE und könnte es theoretisch auch in C 
über AVR Studio, nur was hat die ISP damit zu tun?
Der ISP ist zwar eine serielle Schnitte aber die vom PC nur mit viel 
Software sowie Hardwareunterstützung umgesetzt werden kann z.B. mit ISP 
Programmer + Treiber.

Aber man könnte die ISP Pins als soft Serielle nutzen und per MAX3232 
auch an eine PC Com schicken.
OP #4299243
Lesenswert?

Lieber Tom, Joachim, Ion und Michael,
zuerst Danke!

Ich bin einem Irrtum aufgesessen, der daher kommt, dass ich bisher immer 
direkt über den ISP programmiert habe.

Deshalb klingt meine Frage jetzt im Nachhinein zugegebenermaßen  etwas 
blöd. Und ich weiß jetzt auch wieso ich im Internet nichts gefunden 
habe. Ich habe gedacht, der USB geht über einen Chip auf den ISP und die 
hängen direkt zusammen.

Jetzt habe ich nach der ersten Antwort von Michael den Schaltplan 
gecheckt und gesehen dass dem nicht so ist. Da hängt nur der UART an dem 
USB. Ich habe weitergelesen und weiß jetzt auch wofür der Bootloader 
genau gut ist ;-).

Sorry, dass ich die Aufregung verursacht habe.

Und Arduino Sprache ist schon C - nur ohne spezielle Arduino Library im 
AVR Studio gibt es ein paar Übersetzungsfehler.
Das wollte ich mir nicht antun für die einfache Aufgabe....hätte gedacht 
ich hack es direkt rein ohne irgend welche Zusatzinstallationen. Das 
werde ich jetzt wohl machen - Vielen Dank noch einmal.

LG
JK

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren