ARDUINO als usb stick

Persönliche Seite #5208022
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
Gast #5880888
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.
(Firma: TU Chemnitz) #5881160
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.
Gast #5881352
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.
Gast #5882125
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.

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