문제

나는 최근에 Arduino 's에 대해 읽고있었습니다 안녕하세요 세계 응용 프로그램, 그리고 나는 나 자신에게 "내가 지금 가지고있는 하드웨어로 그렇게 할 수 있는지 궁금합니다."

나는 Arduino가 없기 때문에, 나는 주변에 누워있는 USB 플래시 드라이브를 잡고 정보에 대한 정보를 얻기 시작했습니다. 이 분야에서 많은 도움이되는 정보를 찾지 못했기 때문에 지금 여기에 묻습니다. USB 드라이브 하드웨어 (예 : LED)에 액세스하고 일부 프로그래밍 환경을 통해 상호 작용할 수 있습니까 (C#이 필요하다고 생각하고있었습니다. 아마 이것을 할 방법이있을 것입니다)?

또한이 주제와 관련하여 USB가 어떤 종류의 명령을 사용하는지 아는 사람이 있습니까? 예를 들어, SCSI 저장 장치에는 표준화 된 명령 세트가 있습니다. ATA 장치는 비슷한 프로토콜을 가지고 있습니다. USB 저장 장치에 간단한 읽기/쓰기 명령과 같은 것들이 어떻게 발행됩니까?

도움이 되었습니까?

해결책

USB 프로토콜은 상당히 일반적이지만 주변 장치는 실제로 기능적이며 호스트의 일부 장치 드라이버가 제대로 작동하도록 요구합니다.

USB 플래시 드라이브에는 마이크로 컨트롤러가 있지만 대부분의 USB 저장 장치는 공통 프로토콜을 따릅니다. 그렇기 때문에 Windows에 연결하는 모든 드라이브에 대해 다른 장치 드라이버를 설치할 필요가 없습니다.

대량 저장 공정 프로토콜에 "Turn Led On"메시지가 없다고 확신합니다. :) 그리고 USB 드라이브를 구현 한 회사는 실제로이를 수행하도록 특별한 명령을 가질 수 있지만 (아마도 디버깅을 위해) 의심 할 것입니다. 출판 될 것입니다.

Windows에서는 전문가는 아니지만 USB 스택에 직접 액세스하려면 자신의 장치 드라이버를 작성하고 커널에 플러그로드해야한다고 생각합니다. 정기적 인 응용 프로그램이 "형식의 형식"명령을 임의의 USB 장치로 보낼 수 있는지 상상할 수 있습니까?

다른 팁

다음은 DIY USB 제어 LED 램프에 대한 링크입니다. 작은 더 많은 작업이 USB 스틱을 연결합니다.

USB 하드 드라이브의 조명을 켜고 싶다면 해당 드라이브의 파일에 데이터를 작성하면 일부 드라이브가 항상 표시등을 남길 것이라고 생각합니다. 쓰기.

따라서 USB 드라이브가 f :로 장착 된 경우 f : lights.txt와 같은 파일 만 만들고 몇 k의 데이터를 작성한 다음 파일을 지우고 다시 시작할 수 있습니다.

한 가지 단점은 플래시 드라이브가 잠시 후 마모된다는 것입니다. 드라이브에서 데이터를 읽어 볼 수도 있습니다.

보다 정확한 제어를 원한다면 USB Data Aquition Device와 같은 것을 얻을 수 있습니다. 이것들 이를 통해 특정 전기 출력을 구동하고 전구 또는 LED를 포함하여 원하는대로 전원을 공급할 수 있습니다. 그들은 원래 과학자들이 실험실 장비의 입력을 측정하기 위해 사용되며, 나는 우리가 RS-232를 사용했지만 대학 물리학 수업에서 그런 것들을 사용했습니다.

나는보고 싶다 여기. 그들은 대량 저장소라고 불리는 것을 사용합니다.

Linux의 USB 드라이브는 SCSI 드라이브처럼 보이므로 문의, 읽기, 쓰기 등을 수행 할 수 있습니다. 일반적으로 Flash Drive의 컨트롤러 제조업체에는 일반 대중에게 알려지지 않은 공급 업체 별 "백도어"가있을 수 있습니다.

RS232와 같이 USB를 제어 할 수 있습니다. Port이 MSDN 링크가 더 도움이되기를 바랍니다.http://www.microsoft.com/downloads/details.aspx?familyid=075318ca-e4f1-4846-912c-b4ed37a1578b&displaylang=en

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top