Tại sao chúng ta cần điện trở kéo bên ngoài khi vi điều khiển có điện trở kéo bên trong?


15

Vi điều khiển không có điện trở kéo lên xuống bên trong nhưng hầu hết các mạch đều có điện trở kéo bên ngoài.

Tôi đã tìm trên Google để tìm câu trả lời và một vài trang web nói rằng những điện trở đó không mạnh nhưng tôi nghĩ chúng đủ tốt để hoạt động. Tôi đã nghĩ rằng họ có thể cần bên ngoài vì các điện trở bên trong cần được kích hoạt bằng lập trình.

Vì vậy, đối với một số tình huống ngoài ý muốn, họ cũng gắn các điện trở bên ngoài. Nhưng tôi không chắc về nó.

Lý do thực sự đằng sau việc sử dụng bên ngoài khi chúng ta có nội bộ là gì?


6
Một số vi điều khiển có điện trở trong. Và những điện trở đó không có kích thước chính xác cho tất cả các ứng dụng (chúng thường được tối ưu hóa cho công suất thấp).
Dave Tweed

2
Điều gì xảy ra nếu tôi bỏ qua các điện trở pullup trên các đường I2C? Chủ đề này là một phân tích về một nỗ lực sử dụng điện trở kéo lên bên trong với I2C.
Nick Alexeev

"Vì vậy, đối với một số tình huống ngoài ý muốn, họ cũng gắn các điện trở bên ngoài." Đôi khi tình huống có kế hoạch quá. Thông thường, dễ dàng hơn / nhanh hơn / rẻ hơn trong môi trường sản xuất chỉ đơn giản là di chuyển điện trở từ nơi này sang nơi khác hơn là phải flash lại phần sụn để đạt được kết quả tương tự. Làm điều đó trong phần sụn có thể sẽ liên quan đến bản phát hành thứ hai của cùng phần sụn cần duy trì. Với một sửa đổi hàn tất cả những gì cần thiết là một hướng dẫn công việc có điều kiện.
Wossname

Câu trả lời:


30

Có một vài lý do có thể, chẳng hạn như

  • Cần có điện trở để có mặt trong quá trình bật nguồn, vì vi điều khiển sẽ chưa bắt đầu thực thi.
  • Cần một điện trở chính xác hơn so với điện trở bên trong. Điện trở kéo lên / xuống bên trong có dung sai rất rộng.
  • Cần một điện trở lớn hơn hoặc nhỏ hơn so với cung cấp nội bộ. Ví dụ, I 2 C thường sử dụng pullups mạnh hơn, trong khi bạn có thể muốn một pullup rất yếu để theo dõi một công tắc, để tiết kiệm năng lượng.
  • Cần phải kéo đến một điện áp khác với điện áp cung cấp hoặc mặt đất của vi điều khiển.
  • Sử dụng điện trở kéo lên / xuống cùng với ADC trên vi điều khiển. Một số bộ vi điều khiển vô hiệu hóa điện trở bên trong của chúng trên bất kỳ chân nào mà ADC được kết nối.
  • Cần một điện trở kéo xuống trên một vi điều khiển chỉ có pullups.

Tôi không thể hiểu điểm thứ hai cuối cùng ... Tại sao các bộ vi điều khiển sẽ vô hiệu hóa chúng trên các điện trở bên trong với ADC
Gunjan Gangwani

3
@GunjanGangwani Tôi không nghĩ đó là một quyết định thiết kế tốt, nhưng ý tưởng là thông thường bạn không muốn ADC rút ra bất kỳ dòng điện nào từ thứ mà nó đo được, vì vậy bạn muốn có kết nối trở kháng cao. Tôi đoán một số nhà thiết kế không tin tưởng các nhà phát triển phần sụn luôn vô hiệu hóa các điện trở bên trong.
Abe Karplus

7
Tôi nghĩ đó là bình thường bởi vì kéo / kéo xuống được liên kết với bộ đệm đầu vào kỹ thuật số và cho phép ADC đôi khi có thể vô hiệu hóa hoàn toàn mạch đệm kỹ thuật số (và với nó, điện trở kéo lên / xuống).
Sói Connor

3
@Ashutosh Nếu bạn muốn có trở kháng cao, tất nhiên bạn không sử dụng bất kỳ pullup nào. Một số bộ vi điều khiển thực thi điều này bằng cách tự động tắt các pullups bên trong của chúng, đây là một vấn đề trong những tình huống mà bạn không muốn trở kháng cao.
Abe Karplus

1
Các đầu vào ADC @GunjanGangwani nên được cách ly với tất cả các mạch khác để cung cấp mức nhiễu thấp nhất. Đầu vào kỹ thuật số thường tiêu thụ nhiều dòng điện hơn mong muốn khi được điều khiển giữa điện áp "cao" và "thấp". Các bộ vi điều khiển cũ hơn đã sử dụng một công tắc bên trong để ngắt kết nối đầu vào khỏi phần kỹ thuật số khi chân đó được sử dụng cho ADC và đó là phần kỹ thuật số có khả năng kéo lên. Điều này bị ngắt kết nối với cả cách ly ADC và hạ thấp độ ồn, cũng như ngăn chặn khả năng rút thêm hiện tại (hoặc trong các chip rất cũ, chốt cmos).
Adam Davis

9

Một số (hoặc có lẽ nhiều) vi điều khiển có điện trở kéo lên bên trong, nhưng đây thường là những giá trị khá cao. Nhiều ứng dụng sẽ yêu cầu pull-up giá trị thấp hơn.

Các điện trở kéo lên cũng có thể được yêu cầu ở đầu vào cho các mạch logic thông thường (cổng, bộ đếm, v.v.) không có bộ kéo bên trong (và đôi khi chúng tôi muốn có điện trở kéo xuống, thay vào đó ...)


1
Các điện trở kéo lên bên trong, nhưng đây thường là những giá trị khá cao Tôi đã xây dựng một ứng dụng năng lượng thấp gần đây và thấy rằng các điện trở kéo lên khoảng 50 k mà tôi thấy là khá thấp dẫn đến việc sử dụng quá nhiều hiện tại. Vì vậy, tôi đã sử dụng một điện trở bên ngoài giá trị cao hơn. Cuối cùng, nó phụ thuộc vào nhu cầu của bạn là gì.
Bimpelrekkie

3

Ngoài ra, bạn sẽ sử dụng một điện trở bên ngoài mỗi khi bạn cần một giá trị điện trở thực. MCU thường không có điện trở kéo lên thực tế mà thay vào đó là các MOSFET chìm một dòng điện nhỏ, do đó giá trị điện trở tương đương của chúng có thể thay đổi tùy theo tín hiệu bạn áp dụng cho pin.

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.