Cân nhắc khi sử dụng điện trở kéo lên / xuống bên trong


11

Tôi đang làm việc với bộ điều khiển vi mô STM32. Các bộ điều khiển vi mô này có tùy chọn để đặt chân đầu vào là kéo lên hoặc kéo xuống:

nhập mô tả hình ảnh ở đây

Trước đây tôi thường sử dụng điện trở kéo lên hoặc kéo xuống bất cứ nơi nào cần thiết nhưng bây giờ tôi tự hỏi liệu tôi có thể loại bỏ các thành phần bên ngoài và sử dụng tính năng kéo xuống của chính bộ điều khiển vi mô hay không.

Đó sẽ là một điều tốt để làm?

Có một số trường hợp sử dụng mà tôi nên đề phòng thêm hoặc không sử dụng tính năng này?


2
Tôi sử dụng pu / pd nội bộ bất cứ khi nào tôi có thể và không gặp vấn đề gì. Vì vậy, trừ khi bạn có một lý do hợp lệ để không sử dụng kéo lên / xuống tích hợp, bạn chỉ có thể sử dụng chúng. Một lý do không dựa vào pu / pd nội bộ có thể là đầu vào có một dây dài kết nối với nó có thể kết hợp với các dòng khác gây ra hành vi không mong muốn. Pu / pd bên trong khá yếu (để tiết kiệm dòng điện) và dễ bị nhiễu hơn so với điện trở 10 kohm.
Bimpelrekkie

21
Một lưu ý nhỏ: nó có thể không hoạt động như một pullup trong khi vi điều khiển được đặt lại. Vì vậy, nếu có mạch bên ngoài tùy thuộc vào nó bị kéo xuống mọi lúc, bạn có thể gặp vấn đề khi khởi động. Nếu nó chỉ được đọc bởi micro, thì đây không phải là vấn đề.
pjc50

1
@ pjc50 bạn nên đăng nó như một câu trả lời, tôi đã không nhận thấy bình luận của bạn cho đến khi tôi đăng câu trả lời của mình.
Jason S

1
Nếu bạn không thể tin tưởng vào điện trở kéo lên trong một vi điều khiển, bạn không thể tin bất cứ điều gì vào bộ điều khiển đó. Những gì bạn muốn biết là nếu nó hữu ích mặc dù
Passerby

1
@Whiskeyjack: Bạn nên xem xét việc thay đổi tiêu đề câu hỏi. Có thể "Cân nhắc khi sử dụng điện trở kéo lên / xuống bên trong" hoặc đại loại như thế.
Rev1.0

Câu trả lời:


15

Có ... Bạn có thể ... Đó là một tính năng đã được chứng minh. Nếu bạn thấy cấu trúc pin trong hướng dẫn tham khảo STM32, bạn có thể thấy rằng nó có các thành phần bắt buộc -

Cấu trúc pin STM32

Nếu điều này thỏa mãn yêu cầu của bạn, thì, bạn có thể loại bỏ các thành phần bên ngoài.

Chỉnh sửa Hãy nhớ rằng tại Power up, Ghim sẽ được tristated. Nếu nó không cản trở ứng dụng của bạn, thì tốt! Đó là lý do tại sao nên khởi tạo phần IO trước và sau đó tiếp tục với các thiết bị ngoại vi khác.


1
Phải, nhưng vẫn trong quá trình thiết lập lại nó bị trist phải không?
seetharaman

1
Tôi đã trả lời cho câu hỏi "Tôi có nên tin tưởng tính năng kéo xuống của bộ điều khiển vi mô không?" và bây giờ câu hỏi đã thay đổi: - / Và với câu hỏi mới, câu trả lời của Bence Kaulics chính xác hơn!
Swanand

Câu hỏi: việc sử dụng một loạt các điện trở pullup / down bên trong sẽ khiến chip nóng lên?
Caleb Reister

16

Nói chung, hoàn toàn ổn khi sử dụng điện trở kéo lên hoặc kéo xuống bên trong.

Nhược điểm là bạn có thể quên kích hoạt nó từ phần mềm, điều này có thể gây ra một chút đau đầu. Các pull-up bên ngoài sẽ luôn ở đó. Vì vậy, đừng quên kích hoạt những cái bên trong và tiết kiệm rất nhiều diện tích PCB bằng cách giảm số thành phần.

30 kΩ50 kΩ

nhập mô tả hình ảnh ở đây

Bạn phải luôn kiểm tra xem ứng dụng của bạn có cần một giá trị điện trở kéo lên hoặc kéo xuống trước khi sử dụng các điện trở bên trong hay không. Ví dụ: không sử dụng chúng với I 2 C , vì các giá trị này sẽ quá cao cho điều đó.


11

Trừ khi các điện trở kéo và kéo xuống hoạt động trong khi thiết lập lại (tôi nghi ngờ chúng không có, nhưng tôi không quen với các thiết bị STM32), có một trạng thái pin không xác định khi đặt lại. Đây là một lý do chính để sử dụng điện trở kéo hoặc kéo xuống bên ngoài.


10

Như những người khác đã nói, pull-up nội bộ và kéo xuống là tốt miễn là:

  • bạn nhớ cấu hình chúng,
  • họ đủ mạnh,
  • cuối cùng bạn không chiến đấu với chúng bằng một cú kéo bên ngoài, và
  • điện áp khi khởi động và thiết lập lại là không quan trọng.

Ở điểm cuối cùng, hãy nhớ rằng các đầu vào CMOS ở mức trung áp có thể gây ra dòng điện bắn qua đáng kể trên cặp đầu vào của chúng. Điều này có thể gây ra sự cố trong hệ thống năng lượng thấp trong quá trình khởi động.

Nói chung, điện trở kéo bên ngoài sẽ mang lại một thiết kế bảo thủ hơn.


1
Liên quan đến dòng điện bắn, có thể hữu ích khi đặt mọi thứ vào viễn cảnh bằng cách lưu ý rằng đối với hầu hết các bộ vi điều khiển, mức độ thường thấp hơn bất kỳ thứ gì có thể gây hư hại cho thiết bị, nhưng chúng có thể có độ lớn hơn mức tốt nhất của thiết bị trường hợp dòng ngủ. Trong một số trường hợp, dòng điện như vậy không quan trọng; ở những người khác họ là một kẻ giết người tuyệt đối.
supercat

1
+1 cho "điện áp khi khởi động và đặt lại là không quan trọng". Bạn cần đảm bảo rằng phần còn lại của mạch của bạn ở trạng thái an toàn và không hoạt động trong khi micro đang khởi động. Điều này khó hơn so với vẻ ngoài của bạn, khi bạn xem xét rằng thiết lập lại hoặc chu kỳ năng lượng nhanh có thể khiến phần còn lại của mạch của bạn ở trạng thái không xác định hoặc để nó hoạt động và chạy mà không có vi mô để mắt đến nó.
Graham

3

Ngoài các trường hợp ngoại lệ tốt khác được liệt kê trong tất cả các câu trả lời, điện trở kéo lên bên trong quá yếu so với I²C trong nhiều trường hợp.



Tất nhiên, một số (nhiều?) Bộ vi điều khiển có các chân thoát mở dành riêng cho I2C mà bạn có thể định cấu hình
Thomas

1
Tôi chưa thấy gì ngoài những lần tăng / giảm yếu, @Thomas
Scott Seidman
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.