Làm thế nào để tôi có được một Arduino (5 V) và MPR121 (3,3 V) để nói chuyện?


8

Tôi có bảng đột phá cảm biến điện dung Sparkfun MPR121 I2C

Tôi đã đọc rằng nó sử dụng 3,3 V, tôi biết rằng tôi không thể kết nối đầu ra nguồn 3,3 V từ Arduino vì các đường truyền thông cũng sẽ cần 3,3 V. Làm thế nào để tôi kết nối lên các dòng khác?

Tôi đã tìm thấy một hướng dẫn tại trang web của Sparkfun . Sơ đồ thứ 3 sử dụng diode - đó có phải là cách tốt nhất để giao tiếp cảm biến với Arduino?

Bất kỳ ý tưởng hoặc thông tin sẽ là tuyệt vời, kiến ​​thức của tôi là khá thấp.


3
Kết nối cảm biến I2C (khác nhau) 3.3V với thiết bị điện tử
Arduino.stackexchange.com/questions/708/iêu

Câu trả lời:


14

Bạn có thể làm điều đó bằng cách sử dụng chính xác hai bóng bán dẫn, khá trơn.

văn bản thay thế

Điều này xuất phát trực tiếp từ một ghi chú ứng dụng Philips .


Đó là appnote Phillips thực tế là một cổ điển.
Kevin Vermeer

@reemrevnivek vâng, và thực sự rất thông minh
Abbeyatcu

Tôi đếm 2 lần pull-up nhiều hơn bình thường. Không hoàn toàn chính xác: P
Nick T

4

Tùy thuộc vào mức vẽ hiện tại của thiết bị được đề cập, đầu ra 3,3V của arduino sẽ đủ. Đối với các đường truyền thông, bạn sẽ cần một số loại shifter cấp. Có vẻ như SparkFun cũng có một giải pháp cho điều đó:

http://www.sparkfun.com/products/8745


Tôi có một trong những người ở nhà, chỉ không chắc chắn về cách nối nó vì I2C có nhiều hơn một dòng. và là hai chiều
Ashley Hughes

Theo một số bình luận của người dùng trên trang đó, các dòng 'TX' được cho là hai chiều. Vì vậy, tôi giả sử bạn kết nối SDA với TX1 và SCL với TX2 chẳng hạn.
Craig

1
Nếu bạn nhìn vào bảng Dữ liệu Nó gần giống như Sơ đồ mà cha mẹ đã đăng trong câu trả lời của mình. Và theo kinh nghiệm, họ là hai chiều.
jsologistski
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.