이 SD 카드 리더기를 RaspberryPi에 어떻게 연결합니까?


11

www.samplerbox.org 프로젝트를 위해 Raspberry Pi에 두 번째 SD 카드 리더를 추가해야합니다 (RPi는 상자에 내장되므로 사용자 SD 카드 리더 가 필요합니다 ).

여기에 내가 사용하고 싶은 것이 있습니다 :

여기에 이미지 설명을 입력하십시오

이것을 RaspberryPi에 연결하는 방법? GPIO를 통해? (그렇다면 어떻게?) USB 포트를 통해? (그렇다면이 핀을 표준 USB 플러그에 연결하는 방법은 무엇입니까?)

업데이트 : 2 * 8 핀은 다음과 같습니다 GND, 3V3, 5V, CS, MOSI, SCK, MISO, GND.

여기에 이미지 설명을 입력하십시오


외부 SD 카드로 부팅 할 계획입니까? 또는 내부 SD 카드에서 Pi를 부팅합니다. 외부 SD 카드는 무엇에 사용됩니까?
joan

@joan 아니요 부팅 할 계획이 없습니다. 외부 SD 카드는 사용자가 데이터를로드 / 저장할 수 있도록합니다. 사용자는 내부 SD 카드 (박스에 내장 된 RPM)에 액세스 할 수 없습니다. 사진으로 이해하기 쉽다 : www.samplerbox.org
Basj

1
사용자에게 데이터 용 USB 스틱을 제공하면 많은 문제를 해결할 수 있습니다. 두 번째 SD 카드 인터페이스를 구현하는 것은 매우 어렵습니다. USB 포트를 상자 외부로 가져 오기만하면됩니다.
joan

1
SDCard to USB 어댑터를 더 사용할 수 있으며,이 둘 사이의 상충 관계입니다. 그냥 구글 SDCard USB adapter.
user236012

4
USB 스틱을 사용하는 것이 더 쉽다는 데 동의하지만 SD 카드를 인터페이스하는 것은 어렵지 않습니다. 모든 SD 지원 SPI및 3.3V에서 실행 (이러한 보드에는 5V에 인터페이스하기위한 레벨 변환기가 있습니다). Arduino에서 비슷한 어댑터를 사용했으며 Pi를 사용해 보려고합니다. Arduino 용 FAT 소프트웨어가 있습니다. (참고 : 표준 커널 드라이버를 통해 액세스 할 것으로 예상되지 않습니다.)
Milliways

답변:


6

SPI 장치 인 것 같습니다. 먼저 raspi-config를 사용하여 SPI를 활성화해야합니다. 그런 다음 배선해야합니다.

(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
그러한 기술로 1 메가 바이트 / 초보다 나은 전송 속도를 얻는 방법에 대한 아이디어가 있습니까? 10MB / 초를 허용하는 USB SD 리더 이외의 다른 방법이 있습니까?
Basj

고속은 SD 카드 데이터의 경우 한 줄 이상이며, 여기에없는 것으로 보이며 SPI 인터페이스를 통한 간단한 배선 설정이 아닙니다.
Alexey Vesnin

6

라즈베리 파이 핀아웃

pi의 해당 핀에 GND, 5V 및 3V3을 연결해야합니다. 그런 다음 MOSI 및 MISO도 그림에 표시되어 있으며 SCK는 SCLK에 연결해야하며 (이는 파이로 구동되어야하는 10MHz 클럭) CS 핀을 CS0에 연결합니다 (Chip-Select, 2 SD 또는 다른 SPI 호환 장치).

이 스레드 의 첫 번째 응답에 따르면 3.2.20보다 큰 커널 버전을 실행하는 경우 보드에서 SPI 하드웨어를 지원해야하며 CPU로드가 거의없이 1MB / s의 처리량을 제공해야합니다.

커널이 더 높은 버전이지만 SPI 장치 지원없이 컴파일 된 경우 적절한 구성으로 다시 컴파일해야합니다 (언급 된 스레드를 다시 참조하십시오).


2
이 답변에 감사드립니다! 그러나 1MB / s가 너무 낮아 (USB 리더와 비교하여) 프로젝트의 경우 매우 짧은 시간에 100MB를로드해야합니다 (RPi microSD 리더에서 가능, USB SD 카드 리더에서 가능) 이 PCB SD 리더와 동일해야합니다.)
Basj

이 SD 리더와 파이 조합을 사용하면 더 빠른 속도를 볼 수 없습니다. 1MB / s는 pi의 특수 SPI 인터페이스 하드웨어를 사용하여 달성됩니다. 다른 GPIO 커넥터를 사용하는 경우 약 180KB / s로 훨씬 낮은 속도를 달성하여 CPU로 구현해야합니다. 더 빠른 속도가 필요하다면 다른 사람들이 제안한 것처럼 USB 리더를 사용하십시오.
Yigal

1
Arghh ... 슬프게도이 리더로 1MB / s 이상을 얻을 수 없습니다. 이 리더를 USB SD 리더로 추가 할 수 있습니까 (추가 구성 요소 포함)
Basj

1
SPI (및 다른 프로토콜)를 USB와 같은 USB로 약 20 달러에 처리 할 수있는 모듈을 얻을 수 있습니다 : digikey.co.il/product-search/en?v=768&mpart=VA800A-SPI 그러나 나는 그렇게하지 않을 것입니다. 나는 스펙을 읽지 못했기 때문에 모듈이 Mass Storage 클래스 또는 다른 일반적인 USB 클래스로 식별되는지 여부를 알 수없는 경우 자신의 드라이버로 랩핑해야합니다. 간단한 USB SD 카드 리더를 얻는 것이 훨씬 쉬울 것입니다.
Yigal

1
물론 PCB에 장착 할 수있는 USB SD 카드 리더가 필요합니다 (나뿐만 아니라 내 프로젝트 samplerbox.org 는 오픈 소스가 될 것이므로 누구나 쉽게 소스를
얻을 수 있기를 바랍니다


1

카드 리더 자체에 대해 많이 알지 못하면 최선을 다하겠습니다.

리더는 GPIO 핀 옆에 표시가있는 것 같습니다. 일부 여성-여성 점퍼 케이블을 사용하여 RPI의 해당 핀에 연결하십시오 (또는보다 영구적 인 응용 방법). 해당 핀이없는 경우 pi의 빈 핀에 연결하고 메모 해 두십시오.

리더 용 API는 다른 핀을 통한 파일 전송을 허용하기 위해 추가 구성이 필요할 수 있지만이 부분을 도와 드릴 수는 없습니다.

잘만되면 이것이 작동해야한다!


질문에 핀 레이블과 사진을 추가했습니다. 이 핀에서 GPIO 또는 USB로 갈 수 있습니까?
Basj

1

필요에 대한 설명과 프로젝트 페이지 방문을 기반으로 RPi를 USB 스틱에서 부팅하고 내부 카드 리더를 사용하여 사용자의 카드를 수락하는 방법이 있습니다.


답변 주셔서 감사합니다. 아이디어가 될 수 있습니다. 우리는 그것에 대해 생각해야합니다. microSD 카드 삽입 / 제거는 매일 사용하기에 너무 작거나 어려울 수 있습니다. 프로젝트의 경우 디지털 카메라에서 SD 카드를 삽입 / 제거하는 것만 큼 편리해야합니다. PS : 나중에 참조 할 수 있도록 RPi의 "USB 스틱을 부팅하는 방법"에 대한 링크를 추가 할 수 있습니까?
Basj
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.