Come posso collegare questo lettore di schede SD a RaspberryPi?


11

Devo aggiungere un secondo lettore di schede SD al mio Raspberry Pi per il progetto www.samplerbox.org (l'RPi sarà incorporato in una scatola, quindi ho bisogno di un lettore di schede SD- user ).

Ecco cosa vorrei usare:

inserisci qui la descrizione dell'immagine

Come collegarlo a RaspberryPi? Tramite GPIO? (se sì, come?) Tramite la porta USB? (in tal caso, come collegare questi pin a una presa USB standard?)

AGGIORNAMENTO : Ecco i pin 2 * 8 GND, 3V3, 5V, CS, MOSI, SCK, MISO, GND::

inserisci qui la descrizione dell'immagine


Prevedi l'avvio dalla scheda SD esterna? O è il Pi da avviare dalla scheda SD interna. A cosa servirà la scheda SD esterna?
joan

@joan No Non ho intenzione di avviarlo, la scheda SD esterna sarà lì per consentire all'utente di caricare / salvare alcuni dati. L'utente non accederà alla scheda SD interna (RPi incorporato in una scatola). Più facile da capire con un'immagine:
www.samplerbox.org

1
Puoi risparmiare un sacco di problemi se dai semplicemente all'utente una chiavetta USB per i dati. L'implementazione di una seconda interfaccia per schede SD sarà molto difficile. Basta portare una porta USB all'esterno della confezione.
joan

1
È inoltre possibile utilizzare un adattatore da SDCard a USB, che è un compromesso tra entrambi. Solo google SDCard USB adapter.
user236012

4
Anche se concordo sul fatto che potrebbe essere più semplice utilizzare una chiavetta USB, non dovrebbe essere difficile interfacciare una scheda SD. Tutto il supporto SD SPIe funziona a 3.3V (molte di queste schede hanno convertitori di livello per interfacciarsi a 5V). Ho usato un adattatore simile su Arduino e ho intenzione di provare Pi. Esiste un software FAT per Arduino. (NOTA Non mi aspetto di accedervi tramite i driver del kernel standard.)
Milliways

Risposte:


6

Sembra che sia un dispositivo SPI. Dovresti prima abilitare SPI usando raspi-config. Quindi dovrai cablare:

(Reader) GND  --  GND       (GPIO-Raspberry Pi2) 
         3V3  --  3.3 V (Pin 1)
         5V   --  NC
         CS   --  GPIO8 (Pin24)
         MOSI --  GPIO10 (Pin 19)
         SCK  --  GPIO11 (Pin 23)
         MISO --  GPIO9 (Pin 21)
         GND  -- NC

2
Qualche idea su come avere una velocità di trasferimento migliore di 1 megabyte / sec con tale tecnica? Esiste un altro modo rispetto al lettore USB SD che può consentire 10 MB / sec?
Basj

le alte velocità sono circa più di una linea per i dati di una scheda SD, sembra che tu non li abbia qui, e non è una configurazione di cablaggio semplice sull'interfaccia SPI
Alexey Vesnin,

6

Pinout Raspberry Pi

È necessario collegare GND, 5V e 3V3 ai pin appropriati sul pi. Quindi MOSI e MISO sono anche contrassegnati nell'immagine, SCK dovrebbe connettersi a SCLK (questo è l'orologio a 10 MHz che dovrebbe essere guidato dal pi) e infine collegare il pin CS a CS0 (Chip-Select, in modo da poter collegare 2 SD o altri dispositivi conformi a SPI).

Secondo la prima risposta su questo thread , se stai eseguendo una versione del kernel superiore alla 3.2.20 dovrebbe supportare l'hardware SPI sulla scheda e dovrebbe darti un throughput di 1 MB / s con un carico di CPU ridotto, il che è impressionante.

Se il tuo kernel ha una versione successiva ma è compilato senza il supporto del dispositivo SPI, dovresti ricompilarlo con una configurazione appropriata (vedi di nuovo il thread menzionato).


2
Grazie per questa risposta! Ma 1 MB / s è troppo basso (rispetto a un lettore USB), e per il mio progetto, devo caricare 100 MB in pochissimo tempo (questo è possibile dal lettore microSD RPi, possibile da un lettore di schede SD USB, quindi Ho bisogno della stessa cosa da questo lettore di PCB SD)
Basj

Non vedrai un ritmo più veloce con questo lettore SD e la combinazione pi. 1 MB / s viene raggiunto utilizzando l'hardware dell'interfaccia SPI specializzata sul pi. Se usi qualsiasi altro connettore GPIO dovrai implementarlo con la CPU, raggiungendo velocità molto più basse, circa 180 KB / s. Se hai bisogno di velocità più elevate, usa un lettore USB come suggerito da altri, che a quanto ricordo mi ha portato a circa 4 MB / s, ma forse altri possono fornire numeri più precisi.
Yigal,

1
Arghh ... Così triste non possiamo ottenere più di 1 MB / s con questo lettore. È possibile trasformare questo lettore in un lettore SD USB (con componenti aggiuntivi?)
Basj

1
Puoi ottenere un modulo che gestisce SPI (e altri protocolli) su USB come quello per circa $ 20: digikey.co.il/product-search/en?v=768&mpart=VA800A-SPI Ma non vorrei andare così. Non ho letto le specifiche, quindi non so se il modulo si identifica come classe di archiviazione di massa, o qualche altra classe USB più generica, nel qual caso dovrai avvolgerla con il tuo driver. Sarà molto più facile ottenere un semplice lettore di schede SD USB.
Yigal,

1
Certo, ma ho bisogno di un lettore di schede SD USB che possa essere montato su PCB (non solo per me, ma il mio progetto samplerbox.org sarà open source, quindi voglio che sia facile per chiunque
procurarsi


1

Senza sapere molto del lettore di schede stesso, darò la migliore risposta possibile.

Il lettore sembra avere dei segni accanto ai pin GPIO. Collegali ai pin corrispondenti sull'RPI usando alcuni cavi jumper femmina-femmina (o un metodo più permanente per la tua applicazione). Se non hanno un perno corrispondente, collegarli a un perno libero sul pi e prenderne nota.

L'API per il lettore potrebbe richiedere alcune configurazioni extra per consentire il trasferimento di file attraverso gli altri pin, ma non posso aiutarti con questa parte.

Spero che questo dovrebbe funzionare!


Ho aggiunto le etichette dei pin e la foto alla domanda. È possibile passare da questi pin a GPIO o USB?
Basj

1

In base alla descrizione delle tue necessità e alla visita della pagina del tuo progetto, un'alternativa sarebbe quella di rendere il tuo RPi avviato da una chiavetta USB e utilizzare il lettore di schede interno per accettare le carte dall'utente.


La ringrazio per la risposta. Potrebbe essere un'idea, dobbiamo pensarci. L'inserimento / rimozione della scheda microSD potrebbe essere troppo piccolo / difficile per un uso quotidiano. Per il mio progetto, ho bisogno che sia utile come inserire / rimuovere una scheda SD da una fotocamera digitale. Ci penserò ... PS: potresti aggiungere un link su "come avviare una chiavetta USB" su un RPi nella tua risposta, per riferimento futuro?
Basj,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.