mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR, ISP, USB


Autor: lorenz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen

Ich weiss, dass in diesem Forum zum Thema AVR und USB schon einige 
Beiträge existieren.
Ich möchte folgendes realisieren:
1. Einen AVR von Atmel (ATmega8, ATmega32) per USB an einen PC 
anschliessen.
2. Auf dem PC soll kein viertueller COM-Port entstehen. Ich suche nach 
einen Möglichkeit mit einem eigenen Problemm, welches ich unter java 
entwickeln möchte, binär mit dem AVR zu kommunizieren. Dies soll einmal 
primär auf Linux funktionieren. Wenn es dann sogar platformunabhängig 
oder mit nur geringem Aufwand auch unter Windows funktioniert, 
umsobesser.
3. Ich stelle mir einen IC vor, an dem man auf der einen Seite USB 
anschliesst und auf der anderen den AVR.
4. Das Naheligenste wäre sicherlich die UART des AVR zu verwendet. 
Könnte man jedoch auch das ISP-Interface verwenden? Denn dieses ist bei 
mir häufig noch frei, während ich die UART für anderes (GPS, GSM-Modem 
etc.) brauche.
5. Wenn dies alles funktionieren würde, wäre es doch dann nur noch eine 
Software-Geschichte das Flash (ohne Bootloader) neu zu programmieren, 
oder?

Hat jemand schon etwas ähnliches realisiert? Habt ihr sonst Ideen?

Vielen Dank für eure Hilfe!
Grüsse Lorenz

Autor: Neubi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
usb auf rs232 umsetzer von FTDI, MAXIM, ...

Autor: Michael Iller (iller101)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stellt sich mir nur die Frage wenn du schon weißt das es zu AVR und USB 
viele Beiträge gibt
warum du anscheinend keinen davon gelesen hast.

Wenn du Soft-Uart nimmst kannst du problemlos die SPI Pins nehmen

Autor: lkoe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Michael: Nein, das ist eigentilch genau, das was ich nicht will. Ich 
möchte wirklich die SPI ansteuern. Genau damit ich dann auch über das 
USB-Kabel das Ding neu programmieren kann (ISP). Also Reset drücken und 
dann die Software schicken.

Die Controller von FTDI haben ja Teriber dabei um unter Windows einen 
virtuellen Com-Port zu erstellen. Ist es möglich die Controller auch 
ohne Treiber von FTDI mit vertretbarem Aufwand (<40h) anzusteuern? Am 
liebsten unter java.

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Ist es möglich die Controller auch
ohne Treiber von FTDI mit vertretbarem Aufwand (<40h) anzusteuern?

Du hast nicht nur die Artikel zu den AVRs nicht gelesen, sondern auch 
scheinbar keinen Plan was Du hier fragst!

Was hat Java mit den Treibern von FTDI zu tun?

Die einen erzeugen einen virtuellen Com-Port und Java greift via
Java Communications API auf die dann entstandene Schnittstelle zurück.
http://java.sun.com/products/javacomm/index.jsp
Aber letztes ist hardwareabhängig, also eine Lösung für Win32, eine für 
Solaris SPARC, Solaris x86, and Linux x86,....


Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die einzige Variante wäre, sich selbst mit JNI was zu stricken, das 
direkt auf den USB Port geht.
Viel Spaß dabei ...

Autor: lorenz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die einzige Variante wäre, sich selbst mit JNI was zu stricken, das
direkt auf den USB Port geht.

Ganz genau das meine ich. Ich möchte diesen virtuellen Port umgehen.
Ich mache das bis jetzt mit einem fertigen Adapter, welcher genau auch 
einen virtuellen Com-Port anleget. Nur leider funktioniert das nicht 
sehr zuverlässig unter Windows XP. Unter Linux habe ich es gar nicht zu 
laufen gekriegt.

Daher meine Frage. Ist es mit vertretbaren aufwand möglich einen FTDI 
zum beispiel über das jUSB (ein USB Api für Java) anzuzeuern. Also das 
es möglich ist ist ganz klar. Nur so wie ich es bis jetzt abschätze geht 
das für mich zur Zeit definitiv zu weit und der Aufwand ich 
wahrscheinlich für jeden zu gross. Doch es könnte ja sein, dass das 
schon jemand geschrieben hat...

Autor: TheMason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
den ftdi kann man unter windows direkt ansprechen. ftdi hat für delphi 
und c++ ein paar demos. du mußt halt nur den ftdi-treiber installieren, 
und in deinem programm die ftdxxx.dll laden die dir dann erlaubt per 
api-aufruf daten per usb an den ftdi zu schicken.
les dir mal die doku zum ftdi durch ...
ob das ganze java-tauglich ist weiß ich nicht ...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.