Forum: Mikrocontroller und Digitale Elektronik ARDUINO als usb stick


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Christian (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Hallo allerseits

Ich mochte mit dem arduino ein usb stick emulieren mit datein, der aber 
erkennt wenn mam ein datei offnet und eine led eischaltet je nach datei.

Gruß Christian

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
1 lesenswert
nicht lesenswert
Christian schrieb:
> Ich mochte mit dem arduino ein usb stick emulieren mit datein,

Mit einem Arduino auf Basis eines der mit USB-Device-Fähigkeit 
ausgestatteten AVRs ist das durchaus möglich.

Der Arduino Micro mit ATmega32U4 ist ein Kandidat dafür.

https://store.arduino.cc/usa/arduino-micro

> der aber erkennt wenn mam ein datei offnet

Das wird schwierig; ein USB-Mass-Storage Device weiß nicht, was Dateien 
sind, es kennt nur Speicherblöcke.

Du musst also statt MSD das "picture transfer protocol" (PTP) umsetzen, 
dann hast Du Chancen, Deine Idee umzusetzen.

https://de.wikipedia.org/wiki/Picture_Transfer_Protocol

Als Softwaregrundlage kannst Du LUFA einsetzen.

http://www.fourwalledcubicle.com/LUFA.php

Das hat auch schon jemand auf Arduino portiert.

https://github.com/Palatis/Arduino-Lufa

von Christian (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Danke dir viel mals für deine hilfe.

Ich werde es mit folgenden tools versuchen, danke.

von Henrik Haftmann (Gast)


Bewertung
1 lesenswert
nicht lesenswert
Hallo,
ich habe nun MTP/PTP (Media Transport Protocol) auf ATmega32U4 
erfolgreich implementiert und auf 4 KByte eingedampft. LUFA kommt mir 
nicht ins Haus, und als Urlader dient ubaboot. 24 KByte vom Flash dienen 
in der Demo als Massenspeicher, 256 Byte vom EEPROM zur FAT-ähnlichen 
Verwaltung.

Hier ist es:
http://www.tu-chemnitz.de/~heha/pc/Programmiergeräte/Wild%20GIF12/#7.1
Es ist effektiv ein 24-KByte-USB-Stick.

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Danke für Deine wie üblich hochinteressante Arbeit.


Henrik Haftmann schrieb:
> LUFA kommt mir nicht ins Haus

Was sind die Gründe dafür?

von Henrik H. (Firma: TU Chemnitz) (heha)


Bewertung
0 lesenswert
nicht lesenswert
Frameworks sind hervorragend dazu geeignet, Kode aufzublähen und 
undurchschaubar zu machen. Dazu gehören Arduino (Software) und eben 
LUFA, die obendrein verflochten sind. Mit Frameworks etwas zu lösen, 
wofür sie nicht gemacht sind, ist umso mehr ein Graus. (Hier würde es 
vermutlich ausnahmsweise irgendwie gehen. Aber warum 1000 Fetzen LUFA 
studieren, wenn's 50 Seiten Atmel-Doku viel genauer tun?) Es ist IMHO 
eine Katastrophe, Arduino Anfängern vorzusetzen: Letztlich wissen sie 
nicht was sie tun. Können sie auch nicht! Frameworks, insbesondere mit 
lückenhafter, nichtmuttersprachlicher Dokumentation gehören auf den 
Müll, nicht ins Schulbuch.

Ich habe LUFA niemals zum Laufen gebracht. (Ob es je mit WinAVR2010 
geht?)
Brauche ich auch nicht; usb.cpp ist (mir) ein viel schönerer 
Ausgangspunkt für eigene Projekte: Alle Einstellschräubchen (bspw. 
Deskriptoren) in einer Datei. Außerdem compiliert's viel schneller.

Übrigens, schon mal aufgefallen, dass bei Intel alle Prozessoren mit 80 
anfangen? DOS-Programmierer kennen Int21 (hex) ohne dass es dafür jemals 
eine symbolische (selbstredend: englische) Konstante gab: Zahlen müssen 
eben nicht übersetzt werden! Daher gibt's bei mir fast keine 
symbolischen Konstanten für numerische Konstanten, sondern Kommentare.

Beitrag #5881197 wurde von einem Moderator gelöscht.
von Stefan ⛄ F. (stefanus)


Bewertung
1 lesenswert
nicht lesenswert
Henrik H. schrieb:
> Es ist IMHO eine Katastrophe, Arduino Anfängern vorzusetzen

Zum Programmieren Lernen ist es suboptimal. Aber mit Arduino können 
Anfänger schnell ausprobieren, wozu Mikrocontroller gut sind und so zu 
ihren ersten positiven Aha-Erlebnissen kommen. Diese wiederum können 
Motivierend wirken, weiter zu gehen.

Man lernt nicht, Autos zu bauen, indem man sie fährt. Aber man erlebt, 
warum wir Autos bauen: z.B. Freude am Fahren.

von Veit D. (devil-elec)


Bewertung
1 lesenswert
nicht lesenswert
Henrik H. schrieb:
> Frameworks sind hervorragend dazu geeignet, Kode aufzublähen und
> undurchschaubar zu machen. ...

Selten solchen pauschalisierten Schwachsinn gelesen.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Henrik H. schrieb:
> Ob es je mit WinAVR2010 geht?

Wen interessiert das 9 Jahre später? Ich würde lieber eine aktuelle 
Toolchain verwenden.

> Übrigens, schon mal aufgefallen, dass bei Intel alle
> Prozessoren mit 80 anfangen?

Das stimmt nicht. Einer der ersten war der Intel 4004, gefolgt von 4040. 
Dann gab es zum Beispiel diverse Pentium Varianten, von denen nur einer 
die Nummer 80586 trug, weiter geht es mit Celeron, Core 2, diverse Core 
i Varianten usw. Nur sehr wenige haben eine 80 in der Nummer.

: Bearbeitet durch User
von Jörg E. (jackfritt)


Bewertung
0 lesenswert
nicht lesenswert
Irgendwie finde Ich auf Anhieb keinen 24kb USB Stick Code wenn Ich dem 
link folge. Was mach Ich falsch?

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Jörg E. schrieb:
> Irgendwie finde Ich auf Anhieb keinen 24kb USB Stick Code wenn Ich dem
> link folge. Was mach Ich falsch?

Wie bitte?

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]
  • [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.