i2c-tiny-usb

Phần mềm chụp màn hình:
i2c-tiny-usb
Các chi tiết về phần mềm:
Phiên bản: 2009-02-10 Cập nhật
Ngày tải lên: 7 Mar 16
Nhà phát triển: Till Harbaum
Giấy phép: Miễn phí
Phổ biến: 46

Rating: 5.0/5 (Total Votes: 1)

I2C-nhỏ-usb là một / dự án phần cứng mở mã nguồn mở.
Đính kèm bất kỳ chip I2C khách hàng (nhiệt cảm biến, chuyển đổi AD, màn hình, điều khiển relais, ...) với PC qua USB ... nhanh chóng, dễ dàng và rẻ! Trình điều khiển cho Linux, Windows và MacOS có sẵn.
Các dự án I2C-nhỏ-usb là một / dự án phần cứng mở mã nguồn mở. Mục tiêu của I2C-nhỏ-usb là để cung cấp một giao diện I2C generic giá rẻ để được gắn vào usb. Nó có nghĩa là một sự thay thế cho những cổng máy in đơn giản và rẻ tiền để adapter I2C. Một giải pháp USB có nhiều ưu điểm bao gồm. được xây dựng trong cung cấp điện và một giao diện tương lai chứng minh nhiều hơn nữa.
Hơn nữa không có cpu bitbanging mãnh liệt được yêu cầu trên phía chủ nhà. giải pháp USB này thậm chí đòi hỏi phần ít hơn so với một số giải pháp cổng máy in.
Trong khi I2C-nhỏ-USB được phát triển dưới và cho Linux nó cũng hoạt động trên Windows và MacOS X. Một điều khiển cửa sổ demo và ứng dụng demo được bao gồm để giúp bạn bắt đầu ngay lập tức.
Các dự án I2C-nhỏ-USB được dựa trên:
Các dự án USB Linux và thực hiện I2C Linux
Các trình điều khiển cửa sổ và ứng dụng thử nghiệm dựa trên libusb-win32
AVR-USB, một phần mềm thực hiện tinh khiết của USB cho nền tảng AVR
USBtiny, một phần mềm thực hiện usb cho AVR
Các phần cứng của giao diện I2C-nhỏ-usb bao gồm các Atmel AVR ATtiny45 CPU, một vi điều khiển giá rẻ và dễ dàng để có được với 4 KBytes flash (trong đó ~ 2k được sử dụng trong ứng dụng này) và 256 Bytes RAM. Các bộ xử lý được bao quanh bởi vài bộ phận khác.
Giao diện USB
Các giao diện USB của giao diện I2C-nhỏ-USB được dựa trên một phần mềm thực hiện tinh khiết và sử dụng hai chân của AVR (PB0 và PB2). thực hiện phần mềm này chỉ hỗ trợ USB tốc độ thấp mà là báo hiệu cho PC bằng điện trở R1.
Giao diện I2C được thực hiện bằng cách sử dụng phương pháp tiếp cận bitbanging. Các phần cứng được hỗ trợ giao diện Twi của attiny45 là ràng buộc để ghim phần cứng ở các chip được yêu cầu cho hoạt động USB và do đó có thể không được sử dụng cho I2C. Giao diện I2C bitbanging đang được sử dụng thay vì có thể không hoàn toàn tương thích I2C và do đó không phải mọi con chip khách hàng I2C có thể hoạt động một cách chính xác tại bến xe này. Không có sự không tương thích đã được báo cáo cho đến nay. Các I2C-nhỏ-USB cung cấp một phần mềm có thể điều chỉnh chậm trễ đồng hồ I2C cho phép cấu hình đồng hồ I2C. Việc chậm trễ mặc định là 10us. Do sự chậm trễ thêm trong mã I2C bitbanging kết quả này trong một chiếc đồng hồ I2C khoảng 50kHz.
Đối với lý do đơn giản tất cả các chuyển USB được thực hiện thông qua các thiết bị đầu cuối kiểm soát. Kể từ thư viện avr usb không chỉ hỗ trợ các thiết bị tốc độ thấp, nó không thể sử dụng chuyển số lượng lớn được quy định cho các thiết bị chỉ tốc độ cao và đầy đủ. thiết bị tốc độ thấp hỗ trợ cái gọi là chuyển ngắt được giới hạn trong một băng thông sẵn khi chuyển điều khiển có thể sử dụng bất kỳ băng thông miễn phí (nếu có bất kỳ ở tất cả).
do đó thiết bị này sử dụng chuyển giao quyền kiểm soát cho tất cả các thông tin liên lạc của nó. Điều này đòi hỏi một số hạn chế nữa để ngăn chặn phần mềm nhiều trình điều khiển (ví dụ như các trình điều khiển hạt nhân và các libusb dựa trên ứng dụng thử nghiệm) để truy cập các thiết bị cùng một lúc. Trong Linux này có thể đạt được bằng cách chọn loại yêu cầu truy cập nhất định. Đây là loại điều khiển truy cập có thể không thể dưới hệ điều hành khác.
Công suất tiêu thụ
Toàn bộ thiết bị là một chiếc xe buýt trợ nên gọi là thiết bị. Điều này có nghĩa là các thiết bị hoàn chỉnh được cung cấp trực tiếp từ USB. Do đó, AVR và một hoặc nhiều chip khách hàng I2C được cấp nguồn từ tín hiệu USB VBUS.
Các bộ chuyển đổi tự nó thu hút ít hơn 10mA và các báo cáo này đến máy chủ thông qua mô tả USB của mình. Thiết bị này có khả năng chip khách hàng điện I2C là tốt. Nhưng kể từ khi các chip khác nhau về tiêu thụ điện năng nó không phải là có thể bao gồm một cách chính xác nhu cầu của họ vào các mô tả thiết bị. Đó là trách nhiệm của bạn để giữ một mắt trên tổng nguồn cung và đặc biệt là để đảm bảo rằng toàn bộ thiết bị không vượt quá tổng hạn mức của USB 500mA.
Đây là kế hoạch cho các phiên bản firmware tương lai để làm cho phần mềm tiêu thụ điện năng báo cáo cấu hình vì vậy giá trị có thể dễ dàng được thông qua với những đòi hỏi quyền lực thực sự của toàn bộ thiết bị.
điều khiển hạt nhân
Các I2C-nhỏ-usb là có nghĩa là để được sử dụng với Linux. Nó đi kèm với một trình điều khiển hạt nhân Linux mà cầu giữa USB và I2C hệ thống con trong nhân Linux. Người lái xe sau đó gắn vào thiết bị USB và làm cho các xe buýt I2C có sẵn cho các hệ thống phụ I2C. Như vậy toàn bộ thiết lập là minh bạch cho các ứng dụng của khách hàng như các khuôn khổ lm_sensors và không có trình điều khiển con chip khách hàng đặc biệt được yêu cầu. Thay vì các trình điều khiển đã có trong hạt nhân Linux được sử dụng với I2C-nhỏ-USB là tốt. Với ví dụ các cảm biến nhiệt độ ds1621 sử dụng trong nguyên mẫu đầu ra của cảm biến có thể ví dụ giống như thế này:
ds1621-I2C-2-48
Adapter: I2C-nhỏ-usb ở bus 003 thiết bị 017
Nhiệt độ: 21,50

Phần mềm tương tự

AROS
AROS

3 Jun 15

BSD Router Project
BSD Router Project

17 Feb 15

FR1
FR1

3 Jun 15

Firefox LiveCD
Firefox LiveCD

3 Jun 15

Phần mềm khác của nhà phát triển Till Harbaum

NanoVM
NanoVM

2 Jun 15

Ý kiến ​​để i2c-tiny-usb

Bình luận không
Nhập bình luận
Bật hình ảnh!