Mục lục:

Chiết áp kỹ thuật số MCP41HVX1 cho Arduino: 10 bước (có hình ảnh)
Chiết áp kỹ thuật số MCP41HVX1 cho Arduino: 10 bước (có hình ảnh)

Video: Chiết áp kỹ thuật số MCP41HVX1 cho Arduino: 10 bước (có hình ảnh)

Video: Chiết áp kỹ thuật số MCP41HVX1 cho Arduino: 10 bước (có hình ảnh)
Video: This component can control tons of circuits! Digital Potentiometer Guide! EB#51 2024, Tháng bảy
Anonim
Chiết áp kỹ thuật số MCP41HVX1 cho Arduino
Chiết áp kỹ thuật số MCP41HVX1 cho Arduino

Dòng chiết áp kỹ thuật số MCP41HVX1 (hay còn gọi là DigiPots) là thiết bị bắt chước chức năng của chiết áp tương tự và được điều khiển thông qua SPI. Một ứng dụng ví dụ sẽ thay thế núm âm lượng trên dàn âm thanh của bạn bằng một DigiPot được điều khiển bởi Arduino. Điều này giả định rằng điều khiển âm lượng trên dàn âm thanh của bạn là một chiết áp chứ không phải một bộ mã hóa quay.

MCP41HVX1 có một chút khác biệt so với các DigiPots khác ở chỗ chúng có thiết kế đường ray phân chia. Điều này có nghĩa là trong khi bản thân DigiPot có thể được điều khiển bởi điện áp đầu ra của Arduino, tín hiệu được truyền qua mạng điện trở hoạt động với dải điện áp lớn hơn nhiều (lên đến 36 volt). Hầu hết các DigiPots có thể được điều khiển bằng 5 vôn được giới hạn ở 5 vôn trên mạng điện trở, điều này hạn chế việc sử dụng chúng để trang bị thêm một mạch hiện có hoạt động trên điện áp cao hơn như những gì bạn sẽ tìm thấy trong ô tô hoặc thuyền.

Họ MCP41HVX1 được tạo thành từ các chip sau:

  • MCP41HV31-104E / ST - 100k ohm (7 bit)
  • MCP41HV31-503E / ST - 50k ohm (7 bit)
  • MCP41HV31-103E / ST - 10k ohm (7 bit)
  • MCP41HV31-502E / ST - 5k ohm (7 bit)
  • MCP41HV31-103E / MQ - 10k ohm (7 bit)
  • MCP41HV51-104E / ST - 100k ohm (8 bit)
  • MCP41HV51-503E / ST - 50k ohm (8 bit)
  • MCP41HV51T-503E / ST - 50k ohm (8 bit)
  • MCP41HV51-103E / ST - 10k ohm (8 bit)
  • MCP41HV51-502E / ST - 5k ohm (8 bit)

Các chip 7 bit cho phép 128 bước trong mạng điện trở và chip 8 bit cho phép 256 bước trong mạng điện trở. Điều này có nghĩa là chip 8 bit cho phép nhiều gấp đôi giá trị điện trở từ chiết áp.

Quân nhu

  • Chọn chip MCP41HVX1 thích hợp từ danh sách trên. Chip bạn chọn dựa trên phạm vi điện trở cần thiết cho ứng dụng của bạn. Có thể hướng dẫn này dựa trên phiên bản gói TSSOP 14 của chip vì vậy để làm theo hướng dẫn này, hãy chọn bất kỳ chip nào trong danh sách ngoại trừ MCP41HV31-103E / MQ là gói QFN. Chúng tôi khuyên bạn nên mua thêm một vài chip vì tôi đã gặp phải một con chip xấu và chúng không đắt. Tôi đã đặt hàng của tôi từ Digi-Key.
  • Nguồn điện DC thứ cấp từ 10 đến 36 volt. Trong ví dụ của tôi, tôi sử dụng nguồn điện DC có dây nối 17 volt từ hộp nguồn cũ của tôi.
  • Thông lượng hàn
  • Hàn sắt
  • Hàn
  • Nhíp và / hoặc tăm
  • Bo mạch đột phá TSSOP 14 chân - Amazon - QLOUNI 40 cái PCB Proto Bo mạch SMD sang DIP Bộ chuyển đổi tấm chuyển đổi TQFP (32 44 48 64 84 100) SOP SSOP TSSOP 8 10 14 16 20 23 24 28 (Nhiều loại kích cỡ. Có sẵn rất nhiều cho nhiều dự án)
  • Định lượng đầu cắm 2 - 7 chân - Amazon - DEPEPE 30 Chiếc 40 Đầu cắm pin nam và nữ 2,54mm cho Arduino Prototype Shield - (Cần cắt theo kích thước. Có rất nhiều trong gói cho nhiều dự án)
  • Arduino Uno - nếu bạn chưa có, tôi khuyên bạn nên mua một bảng chính thức. Tôi đã gặp may mắn lẫn lộn với các phiên bản không chính thức. Digi-Key - Arduino Uno
  • Đồng hồ đa năng có thể đo điện trở và cũng kiểm tra tính liên tục
  • Dây nhảy
  • Breadboard
  • Rất khuyến khích nhưng không hoàn toàn bắt buộc là kính lúp rảnh tay vì chip TSSOP rất nhỏ. Bạn sẽ cần cả hai tay để hàn và kiểm tra với đồng hồ đa năng. Tôi sử dụng một cặp Kính lúp 3x Clip-On của Harbour Freight trên kính thuốc của tôi và một kính lúp có khớp nối đứng tự do. Các lựa chọn khác là một cặp đầu đọc rẻ tiền từ cửa hàng giảm giá hoặc đô la. Bạn thậm chí có thể đeo đầu đọc trên kính thuốc của mình hoặc có hai cặp đầu đọc (một trong hai đầu kia) tùy thuộc vào thị lực của bạn tốt (hay xấu) như thế nào. Nếu bạn đang đeo kính gấp đôi, hãy cẩn thận vì tầm nhìn của bạn sẽ rất hạn chế, vì vậy hãy nhớ tháo kính trước khi làm bất cứ điều gì khác. Cũng phải hết sức cẩn thận khi hàn.
  • Một mục khác không bắt buộc nhưng rất được khuyến khích là Bàn tay trợ giúp vận chuyển hàng hóa tại cảng. Chúng là những chiếc kẹp cá sấu được gắn vào một đế kim loại. Chúng có sẵn từ nhiều nhà cung cấp khác trên internet cũng như dưới các tên thương hiệu khác nhau. Những điều này rất hữu ích khi hàn chip vào bảng đột phá.

Bước 1: Hàn chip TSSOP vào một bảng đột phá

Image
Image
Hàn chip TSSOP vào một bảng đột phá
Hàn chip TSSOP vào một bảng đột phá
Hàn chip TSSOP vào một bảng đột phá
Hàn chip TSSOP vào một bảng đột phá

Chip TSSOP cần được hàn vào bảng đột phá để bạn có thể sử dụng nó với bảng mạch chính hoặc trực tiếp với jumper DuPont. Đối với công việc tạo mẫu, chúng quá nhỏ để làm việc trực tiếp.

Do kích thước nhỏ của chúng, hàn chip TSSOP có thể là phần thách thức nhất của dự án này nhưng biết thủ thuật để thực hiện điều này khiến nó trở thành một nhiệm vụ mà bất kỳ ai cũng có thể hoàn thành. Có một số kỹ thuật, kỹ thuật dưới đây là những gì tôi đã làm.

Chiến lược là chảy chất hàn vào các dấu vết của bảng đột phá trước tiên.

  • Không đặt con chip vào bảng đột phá cho đến khi được hướng dẫn.
  • Điều đầu tiên cần làm là đặt một lượng lớn chất trợ dung lên bảng đột phá.
  • Tiếp theo, sử dụng mỏ hàn của bạn làm nóng một số chất hàn và chảy nó vào các vết.
  • Đặt thêm một ít chất trợ dung lên trên chất hàn mà bạn đã chảy ra trên các vết cũng như dưới cùng của chân chip.
  • Đặt con chip lên trên các vết mà bạn vừa đặt chất hàn và chất trợ dung. Nhíp hoặc tăm là những công cụ tốt để đặt chip vào vị trí chính xác. Đảm bảo căn chỉnh chip đúng cách để tất cả các chân đều nằm ngay trên các vết. Căn chỉnh chân một trong các chip với đánh dấu cho chân một trên bảng ngắt.
  • Sử dụng mỏ hàn của bạn làm nóng một trong các chân ở cuối chip (hoặc chân 1, 7, 8 hoặc 14) ấn nó vào vết. Chất hàn mà bạn đã áp dụng trước đó sẽ tan chảy và chảy xung quanh chốt.

Xem video ở bước này để xem trình diễn về cách hàn chip vào bo mạch chủ. Một gợi ý mà tôi có khác với video là sau khi bạn đã hàn điểm dừng chân đầu tiên và kiểm tra lại sự căn chỉnh của toàn bộ chip để đảm bảo rằng tất cả các chân vẫn ở trên đầu các dấu vết. Nếu bạn hơi chệch hướng thì có thể dễ dàng sửa lại vào thời điểm này. Khi bạn cảm thấy thoải mái, mọi thứ đều ổn, hãy hàn một chốt khác ở đầu đối diện của chip và kiểm tra lại sự liên kết. Nếu điều đó có vẻ tốt, hãy tiếp tục và thực hiện phần còn lại của các ghim.

Sau khi bạn đã hàn tất cả các chân, video đề xuất sử dụng kính lúp để xác minh các kết nối của bạn. Một phương pháp tốt hơn là sử dụng đồng hồ vạn năng để kiểm tra tính liên tục. Bạn nên đặt một đầu dò vào chân ghim và đầu dò còn lại vào phần của bảng nơi bạn sẽ hàn tiêu đề (xem hình thứ hai trong bước này). Bạn cũng nên kiểm tra các chân liền kề để đảm bảo rằng chúng không được kết nối do hàn nối ngắn nhiều chân với nhau. Vì vậy, ví dụ nếu bạn đang xác minh chân 4, hãy kiểm tra chân 3 và chân 5. Chân 4 sẽ hiển thị liên tục trong khi chân 3 và chân 5 sẽ hiển thị một mạch hở. Ngoại lệ duy nhất là gạt nước P0W có thể hiển thị kết nối với P0A hoặc P0B.

LỜI KHUYÊN:

  • Như đã đề cập trong danh sách vật liệu có sẵn một số độ phóng đại để bạn rảnh tay làm việc sẽ rất hữu ích trong bước này.
  • Sử dụng kẹp cá sấu giúp bàn tay giữ tấm ván đứt khiến việc hàn mọi thứ dễ dàng hơn một chút.
  • Viết số chip trên một miếng băng dính và dán vào dưới cùng của bảng phá vỡ (xem hình thứ ba trong phần này). Nếu trong tương lai bạn cần xác định con chip thì việc đọc băng che sẽ dễ dàng hơn nhiều. Kinh nghiệm cá nhân của tôi là tôi có một chút thông lượng trên chip và con số đã tắt hoàn toàn nên tất cả những gì tôi có là băng.

Bước 2: Đấu dây

Đấu dây
Đấu dây

Bạn sẽ cần kết nối Arduino và Digipot như trong sơ đồ nối dây. Các chân đang được sử dụng dựa trên cách bố trí của Arduino Uno. Nếu bạn đang sử dụng Arduino khác, hãy xem bước cuối cùng.

Bước 3: Lấy Thư viện Arduino để điều khiển DigiPot

Nhận Thư viện Arduino để điều khiển DigiPot
Nhận Thư viện Arduino để điều khiển DigiPot

Để đơn giản hóa việc lập trình, tôi đã tạo một thư viện có sẵn trên Github. Truy cập github.com/gregsrabian/MCP41HVX1 để tải thư viện MCP41HVX1. Bạn sẽ muốn chọn nút "Sao chép" và sau đó chọn "Tải xuống Zip". Đảm bảo lưu tệp Zip vào một vị trí mà bạn biết vị trí của nó. Máy tính để bàn hoặc thư mục tải xuống là những vị trí thuận tiện. Sau khi nhập nó vào Arduino IDE, bạn có thể xóa nó khỏi vị trí tải xuống.

Bước 4: Nhập Thư viện mới vào Arduino IDE

Nhập thư viện mới vào Arduino IDE
Nhập thư viện mới vào Arduino IDE

Trong IDE Arduino, đi tới "Phác thảo", sau đó chọn "Bao gồm Thư viện", sau đó chọn "Thêm Thư viện ZIP..". Một hộp thoại mới sẽ xuất hiện cho phép bạn chọn tệp. ZIP mà bạn đã tải xuống từ GitHub.

Bước 5: Ví dụ về Thư viện

Ví dụ về Thư viện
Ví dụ về Thư viện

Sau khi bạn đã thêm thư viện mới, bạn sẽ nhận thấy rằng nếu bạn đi tới "Tệp", sau đó chọn "Ví dụ", rồi chọn "Ví dụ từ Thư viện tùy chỉnh", bây giờ bạn sẽ thấy một mục nhập cho MCP41HVX1 trong danh sách. Nếu bạn di chuột qua mục nhập đó, bạn sẽ thấy WLAT, Wiper Control và SHDN là các bản phác thảo ví dụ. Trong phần Có thể hướng dẫn này, chúng tôi sẽ sử dụng ví dụ Điều khiển gạt nước.

Bước 6: Kiểm tra mã nguồn

#include "MCP41HVX1.h" // Xác định các chân được sử dụng trên Arduino # xác định WLAT_PIN 8 // Nếu được đặt thành Thấp "truyền và sử dụng" #define SHDN_PIN 9 // Đặt cao để kích hoạt mạng điện trở # xác định CS_PIN 10 // Đặt thành thấp để chọn chip cho SPI // Xác định một số giá trị được sử dụng cho ứng dụng thử nghiệm # xác định FORWARD true # xác định REVERSE sai # xác định MAX_WIPER_VALUE 255 // Bộ gạt nước tối đa có giá trị MCP41HVX1 Digipot (CS_PIN, SHDN_PIN, WLAT_PIN); void setup () { Serial.begin (9600); Serial.print ("Vị trí bắt đầu ="); Serial.println (Digipot. WiperGetPosition ()); // Hiển thị giá trị ban đầu Serial.print ("Set Wiper Position ="); Serial.println (Digipot. WiperSetPosition (0)); // Đặt vị trí gạt nước thành 0} void loop () {static bool bDirection = FORWARD; int nWiper = Digipot. WiperGetPosition (); // Lấy vị trí gạt nước hiện tại // Xác định hướng. if (MAX_WIPER_VALUE == nWiper) {bDirection = REVERSE; } else if (0 == nWiper) {bDirection = FORWARD; } // Di chuyển gạt nước digipot if (FORWARD == bDirection) {nWiper = Digipot. WiperIncrement (); // Hướng về phía trước Serial.print ("Increment -"); } else {nWiper = Digipot. WiperDecrement (); // Hướng ngược lại Serial.print ("Decrement -"); } Serial.print ("Vị trí gạt nước ="); Serial.println (nWiper); trì hoãn (100);}

Bước 7: Tìm hiểu mã nguồn và chạy phác thảo

Image
Image

Mã nguồn này có sẵn trong Arduino IDE bằng cách chuyển đến menu Ví dụ và tìm MCP41HVX1 mà bạn vừa cài đặt (xem bước trước). Trong MCP41HVX1, hãy mở ví dụ "Wiper Control". Tốt nhất là sử dụng mã đi kèm với thư viện vì nếu có bất kỳ bản sửa lỗi nào thì nó sẽ được cập nhật.

Ví dụ về Wiper Control trình bày các API sau từ thư viện MCP41HVX1:

  • Khối tạo MCP41HVX1 (int nCSPin, int nSHDNPin, int nWLATPin)
  • WiperGetPosition ()
  • WiperSetPosition (byte byWiper)
  • WiperIncrement ()
  • WiperDecrement ()

Trong mã nguồn mẫu, hãy đảm bảo đặt MAX_WIPER_VALUE thành 127 nếu bạn đang sử dụng chip 7 bit. Giá trị mặc định là 255 dành cho chip 8 bit. Nếu bạn thực hiện các thay đổi đối với mẫu, Arduino IDE sẽ buộc bạn chọn một tên mới cho dự án vì nó sẽ không cho phép bạn cập nhật mã mẫu. Đây là hành vi được mong đợi.

Mỗi lần qua vòng lặp, cần gạt nước sẽ tăng lên một bước hoặc giảm một bước tùy thuộc vào hướng nó đi. Nếu hướng đi lên và đến MAX_WIPER_VALUE, nó sẽ quay ngược hướng. Nếu nó chạm 0, nó sẽ đảo ngược một lần nữa.

Khi bản phác thảo chạy, màn hình nối tiếp được cập nhật với vị trí gạt nước hiện tại.

Để xem sự thay đổi điện trở, bạn sẽ cần sử dụng bộ đồng hồ vạn năng để đọc Ohms. Đặt đầu dò đồng hồ vào P0B (chân 11) và P0W (chân 12) trên digipot để xem điện trở thay đổi khi ứng dụng đang chạy. Lưu ý rằng giá trị điện trở sẽ không giảm xuống hết mức 0 vì có một số điện trở bên trong chip nhưng nó sẽ gần bằng 0 ohms. Nó rất có thể sẽ không đạt đến giá trị tối đa nhưng sẽ gần.

Khi bạn xem video, bạn có thể thấy đồng hồ vạn năng hiển thị điện trở tăng cho đến khi nó đạt đến giá trị tối đa và sau đó bắt đầu giảm. Chip đang được sử dụng trong video là MCP41HV51-104E / ST, là chip 8 bit với giá trị tối đa 100k ohm.

Bước 8: Khắc phục sự cố

Nếu mọi thứ không hoạt động như mong đợi, đây là một số điều cần xem xét.

  • Xác minh hệ thống dây điện của bạn. Mọi thứ phải được kết nối chính xác. Đảm bảo rằng bạn đang sử dụng sơ đồ đi dây đầy đủ như được nêu trong Tài liệu hướng dẫn này. Có các sơ đồ nối dây thay thế được trình bày trong README, mã nguồn thư viện và dưới đây trong Có thể hướng dẫn này nhưng hãy tuân theo những gì được ghi ở trên trong bước Đấu dây ở trên.
  • Đảm bảo rằng mọi chốt trên chốt số của bạn được hàn vào bảng đột phá. Sử dụng kiểm tra trực quan là không đủ tốt. Đảm bảo rằng bạn xác minh bằng cách sử dụng chức năng liên tục của đồng hồ vạn năng để xác minh rằng tất cả các chân trên digipot đều được kết nối điện với bảng ngắt điện và không có kết nối chéo nào của các chân từ vật hàn có thể bắc cầu qua các vết.
  • Nếu màn hình nối tiếp hiển thị rằng vị trí cần gạt nước đang thay đổi khi bạn chạy bản phác thảo nhưng giá trị điện trở không thay đổi thì đó là chỉ báo cho thấy WLAT hoặc SHDN không kết nối đúng với bảng ngắt hoặc cần gạt nước nhảy cho WLAT hoặc SHDN không được kết nối đúng cách với Arduino.
  • Đảm bảo rằng bạn đang sử dụng nguồn điện thứ cấp DC từ 10 đến 36 volt.
  • Đảm bảo rằng nguồn điện 10 đến 36 vôn đang hoạt động bằng cách đo điện áp bằng đồng hồ vạn năng của bạn.
  • Hãy thử sử dụng bản phác thảo ban đầu. Nếu bạn thực hiện bất kỳ thay đổi nào, bạn có thể đã tạo ra lỗi.
  • Nếu không có bước khắc phục sự cố nào hữu ích, hãy thử một chip digipot khác. Hy vọng rằng bạn đã mua nhiều và hàn chúng cùng một lúc vào bảng đột phá TSSOP, vì vậy việc hoán đổi cái này cho cái kia chỉ là vấn đề. Tôi đã có một con chip xấu khiến tôi khá thất vọng và đây là cách khắc phục.

Bước 9: Nội bộ & Thông tin bổ sung

Sơ đồ nối dây thay thế
Sơ đồ nối dây thay thế

Thêm thông tin:

Thông tin thêm có thể được tìm thấy trong bảng dữ liệu MCP41HVX1.

Tài liệu đầy đủ về toàn bộ thư viện MCP41HVX1 có sẵn trong tệp README.md là một phần của tải xuống thư viện. Tệp này được viết dưới dạng đánh dấu và có thể được xem với định dạng thích hợp trong Github (xem ở cuối trang) hoặc bằng trình xem có dấu xuống / biên tập.

Giao tiếp giữa Arduino và DigiPot:

Arduino giao tiếp với DigiPot bằng SPI. Sau khi thư viện gửi một lệnh vị trí gạt nước như WiperIncrement, WiperDecrement hoặc WiperSetPosition, nó sẽ gọi WiperGetPosition để lấy vị trí gạt nước từ chip. Giá trị được trả về từ các lệnh Wiper này là vị trí của gạt nước khi chip nhìn thấy nó và có thể được sử dụng để xác minh rằng gạt nước đã di chuyển đến vị trí dự kiến.

Chức năng nâng cao (WLAT & SHDN)

Các chức năng nâng cao này không được trình bày trong ví dụ "Điều khiển gạt nước". Có sẵn các API trong thư viện để kiểm soát WLAT & SHDN. Ngoài ra còn có các bản phác thảo ví dụ WLAT và SHDN (ở cùng vị trí với bản phác thảo Wiper Control) với thư viện.

SHDN (Tắt máy)

SHDN được sử dụng để tắt hoặc bật mạng điện trở. Đặt SHDN thành mức tắt thấp và mức cao sẽ bật mạng điện trở. Khi mạng điện trở bị vô hiệu hóa, P0A (chân DigiPot 13) bị ngắt kết nối và P0B (chân DigiPot 11) được kết nối với P0W (chân DigiPot 12). Sẽ có một lượng nhỏ điện trở giữa P0B và P0W để đồng hồ của bạn không đọc 0 ohms.

Nếu ứng dụng của bạn không cần điều khiển SHDN, bạn có thể nối dây trực tiếp đến HIGH (xem sơ đồ đấu dây thay thế). Bạn sẽ cần sử dụng hàm tạo chính xác hoặc chuyển trong MCP41HVX1_PIN_NOT_CONFIGURED tới hàm tạo để chỉ ra rằng SHDN có dây cứng. Điều quan trọng cần lưu ý là nếu bạn đang làm theo cùng với ví dụ, bạn phải sử dụng sơ đồ đấu dây đầy đủ (xem bước Đấu dây ở trên).

WLAT (Viết chốt)

Kiến trúc bên trong là hai thành phần trên một con chip. Một trong những thành phần là giao diện SDI và thanh ghi để giữ giá trị gạt nước. Thành phần khác là chính mạng điện trở. WLAT kết nối cả hai thành phần bên trong với nhau.

Khi WLAT được đặt thành THẤP, bất kỳ thông tin lệnh nào về vị trí cần gạt nước đã đặt sẽ được chuyển trực tiếp đến mạng điện trở và vị trí cần gạt nước được cập nhật.

Nếu WLAT được đặt thành CAO, thông tin vị trí cần gạt nước được chuyển vào qua SPI được giữ trong một thanh ghi bên trong nhưng không được chuyển đến mạng điện trở và do đó vị trí gạt nước sẽ không cập nhật. Khi WLAT được đặt thành LOW, giá trị được chuyển từ thanh ghi sang mạng điện trở.

WLAT rất hữu ích nếu bạn đang sử dụng nhiều mã số mà bạn cần phải đồng bộ hóa. Chiến lược là đặt WLAT thành CAO trên tất cả các mã hóa và sau đó đặt giá trị gạt nước trên tất cả các chip. Khi giá trị cần gạt nước đã được gửi đến tất cả các kỹ thuật số, WLAT có thể được đặt thành THẤP trên tất cả các thiết bị đồng thời để tất cả chúng di chuyển cần gạt nước cùng một lúc.

Nếu bạn chỉ đang điều khiển một DigiPot hoặc có nhiều DigiPot nhưng chúng không cần được đồng bộ hóa thì rất có thể bạn sẽ không cần chức năng này và do đó có thể nối dây WLAT trực tiếp thành LOW (xem sơ đồ nối dây thay thế). Bạn sẽ cần sử dụng hàm tạo chính xác hoặc chuyển trong MCP41HVX1_PIN_NOT_CONFIGURED tới hàm tạo để chỉ ra rằng WLAT là có dây cứng. Điều quan trọng cần lưu ý là nếu bạn đang làm theo cùng với ví dụ, bạn phải sử dụng sơ đồ đấu dây đầy đủ (xem bước Đấu dây ở trên).

Bước 10: Sơ đồ đấu dây thay thế

Đấu dây

Bạn có tùy chọn kết nối WLAT từ máy đào trực tiếp với LOW / GND thay vì kết nối với chân kỹ thuật số. Nếu bạn làm điều này thì bạn sẽ không thể kiểm soát WLAT. Bạn cũng có tùy chọn kết nối SHDN trực tiếp với HIGH thay vì pin kỹ thuật số. Nếu bạn làm điều này, bạn sẽ không thể kiểm soát SHDN.

WLAT và SHDN độc lập với nhau nên bạn có thể nối dây cứng một và kết nối chân kia với chân kỹ thuật số, dây cứng cả hai hoặc kết nối cả hai với chân kỹ thuật số để chúng có thể được điều khiển. Tham khảo sơ đồ đấu dây thay thế cho những thứ bạn muốn đi dây cứng và quay lại sơ đồ đấu dây chính ở bước 2 để đấu dây đến các chân kỹ thuật số có thể điều khiển.

Người xây dựng

Có ba hàm tạo trong lớp MCP41HVX. Chúng tôi sẽ thảo luận về hai trong số họ. Tất cả chúng đều được ghi lại trong tệp README.md vì vậy nếu quan tâm đến hàm tạo thứ ba, vui lòng tham khảo tài liệu.

  • MCP41HVX1 (int nCSPin) - chỉ sử dụng phương thức khởi tạo này nếu cả WLAT và SHDN đều có dây cứng.
  • MCP41HVX1 (int nCSPin, int nSHDNPin, int nWLATPin) - Sử dụng phương thức khởi tạo này nếu WLAT hoặc SHDN có dây cứng. Chuyển vào hằng số MCP41HVX1_PIN_NOT_CONFIGURED nếu chân có dây cứng hoặc số chân nếu nó được kết nối với chân kỹ thuật số.

nCSPin phải được kết nối với chân kỹ thuật số. Không hợp lệ để chuyển MCP41HVX1_PIN_NOT_CONFIGURED tới hàm tạo cho nCSPin.

Nếu không sử dụng Arduino Uno thì sao?

Arduino sử dụng SPI để giao tiếp với digipot. Các chân SPI là các chân cụ thể trên bảng Arduino. Các chân SPI trên Uno là:

  • SCK - chân 13 trên Uno được kết nối với chân 2 trên digipot
  • MOSI - chân 11 trên Uno được kết nối với chân 4 trên digipot
  • MISO - chân 12 trên Uno được kết nối với chân 5 trên digipot

Nếu bạn đang sử dụng Arduino không phải là Uno, bạn sẽ cần phải tìm ra chân nào là SCK, MOSI và MISO và kết nối chúng với digipot.

Các chân khác được sử dụng trong bản phác thảo là chân kỹ thuật số thông thường nên bất kỳ chân kỹ thuật số nào cũng sẽ hoạt động. Bạn sẽ cần sửa đổi bản phác thảo để chỉ định các chân mà bạn chọn trên bảng Arduino mà bạn đang sử dụng. Các chân kỹ thuật số thông thường là:

  • CS - chân 10 trên Uno được kết nối với chân 3 trên digipot (cập nhật CS_PIN trong bản phác thảo với giá trị mới)
  • WLAT - chân 8 trên Uno được kết nối với chân 6 trên digipot (cập nhật WLAT_PIN trong bản phác thảo với giá trị mới)
  • SHDN - chân 9 trên Uno được kết nối với chân 7 trên digipot (cập nhật SHDN_PIN trong bản phác thảo với giá trị mới)

Đề xuất: