Làm thế nào để đối phó với nhiều điện trở kéo lên trên các mô-đun


9

Tôi đã suy nghĩ về việc thực hiện một mô-đun cho một bảng phát triển mà tôi đã làm cách đây vài ngày sẽ bao gồm các giao diện spi / i2c.

Vấn đề là tôi đã không bao gồm các điện trở kéo lên trong các chân MCU trong bo mạch chính và đã suy nghĩ thêm chúng vào các mô-đun để làm cho chúng trở nên "chung chung" hơn để mọi người dùng có thể sử dụng chúng mà không cần thêm điện trở bổ sung vào bảng nguyên mẫu.

Nhưng sau đó tôi phải đối mặt với vấn đề tiếp theo. Nếu tôi thêm các điện trở kéo lên trong các mô-đun bổ sung và tôi kết nối ví dụ hai hoặc nhiều mô-đun vào cùng một xe buýt, tôi sẽ nhận được các điện trở đó song song để điện trở giảm và sẽ không thực hiện được chức năng của chúng.

Nhưng nếu tôi thêm các điện trở kéo lên vào bo mạch chính, tôi sẽ có các chân đó trong MCU luôn hoạt động ở mức thấp.

Vì vậy, câu hỏi chính là:

Làm thế nào để có nhiều mô-đun được kết nối với cùng một xe buýt có trên mỗi điện trở kéo lên nhưng không có được chúng song song khi bạn có nhiều hơn một mô-đun? Điều đó có thể không?

Hoặc giải pháp tốt nhất ở đây là kích hoạt các điện trở pullup trong MCU và không đưa chúng vào các mô-đun?

Cảm ơn.-


Tạo mô-đun riêng biệt chỉ chứa điện trở kéo lên :)
Alexandr Zarubkin

Câu trả lời:


14

Tôi sẽ cho rằng tổng chiều dài của mỗi chiếc xe buýt của bạn dưới 1 mét, điển hình cho đồng bằng I 2 C và SPI. Ngoài ra, điện dung xe buýt là trong spec.

Chỉ nên có một (1) bộ điện trở kéo lên. Kết quả là, nơi tốt nhất cho họ là trên bảng điều khiển chính. Đừng đặt pull-up lên các mô-đun.

Nếu bạn muốn có pull-up trong một số trường hợp và không có chúng trong các trường hợp khác.

  • Không được lắp đặt các điện trở kéo lên khi bạn không cần chúng.
  • Thiết kế bảng điều khiển chính sao cho các pull-up được kết nối với các đường tín hiệu thông qua các bộ nhảy. Xóa các khối ngắn, khi bạn không cần kéo.

chỉnh sửa: Thành thật mà nói, tôi nghĩ rằng đó là một sai lầm khi Sparkfun đặt pull-up lên các mô đun nô lệ I 2 C. Thật không may, không phải ai mua mô-đun cũng nhận ra rằng việc kéo lên quá mức có thể là một vấn đề. Sẽ tốt hơn nếu các bảng điều khiển (thay vì các bảng ngoại vi nô lệ) có kéo lên với các nút nhảy hàn. Oh ... Đợi đã ... Arduino không mang theo (tùy chọn) pull-up (mặc dù có lẽ nó nên). Vì vậy, hãy để schlep pull-up ở khắp mọi nơi. Trải nghiệm ban đầu dễ dàng hơn ban đầu. Nhưng thêm một vài mô-đun nô lệ và xe buýt sẽ ngừng hoạt động.

cập nhật (tháng 5 năm 2015):
- Thảo luận liên quan trong các bình luận trong một chủ đề khác.
- Trong các mô-đun gần đây của họ, SparkFun bắt đầu thêm các nút nhảy blob hàn giữa Vcc và điện trở kéo lên I 2 C ( ví dụ ). Điều đó cho phép ngắt kết nối pull-up dễ dàng hơn.

update (Tháng 12 năm 2015):
Các câu hỏi tương tự về khắc phục sự cố I 2 C với nhiều mô-đun tiếp tục xuất hiện trên bảng tin. Cố gắng đáp ứng chung mở rộng.


Có thực sự trường hợp của tôi fwas cho một ví dụ. Ví dụ, tất cả các mô-đun rtc được bán trong một số cửa hàng đều bao gồm các bộ chỉnh lưu pullup vì vậy ... làm thế nào để đối phó với các mô-đun đó trong trường hợp đó. Đó là lý do tại sao tôi đánh dấu in đậm câu hỏi chính. :)
Sein Oxygen

1
@SeinOxygen Nếu bạn có các mô-đun có điện trở kéo lên, cộng với bộ điều khiển có bộ kéo riêng, thì tất cả các điện trở này sẽ xuất hiện song song và xuất hiện lực kéo cứng hơn (điện trở nhỏ hơn). Giả sử, bạn có tổng cộng 3 (ba) điện trở 2.2kΩ dưới dạng pull-up. Tổng điện trở kéo lên là 733Ω. Điều đó vi phạm thông số I2C. Phải làm sao Loại bỏ các pull-up thêm từ các mô-đun (có lẽ, chúng không nên ở đó ngay từ đầu).
Nick Alexeev

@SeinOxygen Thêm về các giá trị kéo lên I2C trong chuỗi này .
Nick Alexeev

4

Một tùy chọn là sử dụng các gói điện trở SIL hoặc DIL và lắp chúng vào các ổ cắm trên mỗi mô-đun. Khi xây dựng một hệ thống có nhiều mô-đun, hãy kéo chúng ra khỏi mọi mô-đun trừ cái cuối cùng. Điều này tiết kiệm một ít không gian bảng trên jumper.

Biến thể trong chủ đề này có thể bao gồm các công tắc FET để kết nối hoặc ngắt kết nối các điện trở, được điều khiển bởi một bước nhảy duy nhất hoặc một pin dự phòng trên đầu nối (để nếu một mô-đun khác được cắm vào, các điện trở sẽ tự động ngắt kết nối)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.