i2c-tiny-usb

소프트웨어 스크린 샷:
i2c-tiny-usb
소프트웨어 정보:
버전: 2009-02-10 업데이트
업로드 날짜: 7 Mar 16
개발자: Till Harbaum
라이센스: 무료
인기: 114

Rating: 3.0/5 (Total Votes: 2)

I2C-작은-USB는 오픈 소스 / 오픈 하드웨어 프로젝트이다.
빠르고 쉽고 저렴한 USB ... 통해 PC에있는 I2C 클라이언트 칩 (온도 센서, AD 컨버터, 디스플레이, 릴레 드라이버, ...)를 연결합니다! 리눅스, 윈도우 및 사용 가능한 맥 OS 용 드라이버.
는 I2C-작은-USB 프로젝트는 오픈 소스 / 오픈 하드웨어 프로젝트이다. I2C-작은-USB의 목적은 USB에 부착 될 수있는 저렴한 일반 I2C 인터페이스를 제공하는 것이다. 그것은 I2C 어댑터에 그 간단하고 저렴한 프린터 포트를 대체 의미한다. 의 USB 솔루션은 여러 가지 장점에 포함이 있습니다. 내장 된 전원 공급 장치와 더 미래 증거 인터페이스를 제공합니다.
또한 어떤 CPU 강렬한 bitbanging는 호스트 측에 필​​요하지 않습니다. 이 USB 솔루션은 심지어 일부 프린터 포트 솔루션보다 적은 부품을 필요로한다.
는 I2C-작은-USB 아래에 개발 된 리눅스 용 그것은 또한 윈도우와 맥 OS X의 아래에있는 A 작동하는 동안 창 데모 드라이버 및 데모 애플리케이션은 즉시 시작할 수 있도록 포함되어 있습니다.
는 I2C-작은-의 USB 프로젝트의 기반이되는 :
리눅스 USB 프로젝트와 리눅스 I2C 구현
Windows 드라이버 및 테스트 응용 프로그램은 libusb를-는 Win32를 기반으로
AVR-USB는 AVR 플랫폼을위한 USB의 순수한 소프트웨어 구현
USBtiny의 AVR에 대한 다른 소프트웨어의 USB 구현
는 I2C-작은-USB 인터페이스의 하드웨어는 Atmel의 AVR의 ATtiny45 CPU (~ 2K이 응용 프로그램에 사용되는의) 4 킬로바이트 플래시와 256 바이트 RAM과 함께 저렴하고 구하기 쉬운 마이크로 컨트롤러로 구성되어 있습니다. 프로세서는 몇 가지 다른 부분으로 둘러싸여 있습니다.
USB 인터페이스
는 I2C-작은-USB 인터페이스의 USB 인터페이스는 순수 소프트웨어 구현에 기반하고 AVR 두 핀 (PB0과 PB2)을 사용한다. 이 소프트웨어 구현은 저항 R1에 의해 PC에 신호 만 저속 USB를 지원합니다.
는 I2C 인터페이스는 bitbanging 방식을 사용하여 구현된다. 의 ATtiny45의 하드웨어 지원 트위어 인터페이스가 USB 동작에 필요한 I2C 때문에 사용할 수없는 칩에서 하드웨어 핀에 결합된다. bitbanging I2C 인터페이스는 완전히 I2C 호환되지 않을 수 있습니다 대신 사용하므로하지 모든 I2C 클라이언트 칩이 버스에서 제대로 작동 할 수 있습니다. 비 호환성은 지금까지보고되지 않았다. 는 I2C-작은-USB는 I2C 클럭을 구성 할 수 있도록 소프트웨어 조절 I2C 클럭 지연을 제공한다. 기본 지연은 10US입니다. 때문에 I2C의 bitbanging 코드에서 추가 지연이 약 50kHz의의 I2C 클럭 발생합니다.
단순 이유로 모든 USB 전송은 제어 엔드 포인트를 통해 수행됩니다. AVR의의 USB 라이브러리는 저속 장치를 지원 않기 때문에 그것은 높은 최고 속도 장치 만 지정되어 대량 전송을 사용할 수 없습니다. 저속 장치 때문에 (어떤 모두가 있다면) 제어 전송이 어떤 무료 대역폭을 사용할 수있는 동안 미리 설정 한 대역폭 제한됩니다 인터럽트 전송을 호출을 지원합니다.
이 장치는 따라서 자사의 통신의 모든 제어 전송을 사용합니다. 이것은 다수의 드라이버 소프트웨어를 방지하는 추가적인 제한을 요구 (예를 들어, 커널 드라이버와 libusb를 기반 테스트 애플리케이션)이 동시에 장치에 액세스한다. 리눅스에서이 특정 액세스 요청 유형을 선택함으로써 달성 될 수있다. 액세스 제어의이 종류는 다른 운영 체제에서 가능하지 않을 수 있습니다.
전력 소비
전체 장치는 소위 버스 전원 장치이다. 이것은 완전한 장치가 USB에서 직접 전원이 공급되는 것을 의미한다. 따라서 AVR 하나 이상의 I2C 클라이언트 칩은 USB의 VBUS 신호로부터 전력을 공급한다.
어댑터 자체는 10mA 및 USB 디스크립터를 통해 호스트에보고이보다립니다. 장치뿐만 아니라 전력 I2C 클라이언트 칩 수있다. 이러한 칩 전력 소모가 다양하지만 이후 올바르게 디바이스 디스크립터에 자신의 요구를 포함 할 수 없다. 이는 전체 전력 공급에 눈을 유지하고, 특히 전체 장치가 500mA의 총 USB 한도를 초과하지 않도록하는 것은 귀하의 책임입니다.
그것은 값이 쉽게 전체 장치의 실제 전력 수요에 채택 될 수 있도록보고 전력 소모 소프트웨어를 구성 할 수 있도록 향후 펌웨어 버전 예정입니다.
커널 드라이버
는 I2C-작은-USB는 리눅스에서 사용하기위한 것입니다. 그것은 리눅스 커널에서 USB 및 I2C 서브 시스템 사이에 다리를 리눅스 커널 드라이버와 함께 제공됩니다. 드라이버는 USB 장치에 연결하고, I2C 서브 시스템 I2C 버스를 사용할 수 있도록. 따라서 전체 설치는 lm_sensors 프레임 워크와 특별한 클라이언트 칩 드라이버가 필요하지 않습니다 같은 클라이언트 응용 프로그램에 투명합니다. 대신에 리눅스 커널에 이미 존재하는 드라이버뿐만 아니라 I2C-작은-USB와 함께 사용됩니다. 로 예를 들면, 센서의 출력은 예컨대 수 프로토 타입에 사용 ds1621 온도 센서 같이 :
ds1621-I2C-2-48
어댑터 : 버스 003 장치에서 I2C-작은-USB 017
온도 : 21.50

유사한 소프트웨어

CpuHog
CpuHog

2 Jun 15

Nanvix
Nanvix

17 Feb 15

개발자의 기타 소프트웨어 Till Harbaum

NanoVM
NanoVM

2 Jun 15

코멘트 i2c-tiny-usb

댓글을 찾을 수 없습니다
코멘트를 추가
이미지를 켜십시오!