Vâng, đó là một haiku. (EDIT: đã sửa nó ... bây giờ thực sự là một Haiku)
Không, tôi không cười.
Tôi đang làm một số thử nghiệm tiêu chuẩn; nhìn thấy những gì xảy ra khi một trong hai đường ray điện bị rút ngắn thành GND trên PCB mà tôi thiết kế. Chúng ta đang nói về một đường ray điện 12 V được cung cấp bởi một nguồn cung cấp năng lượng để bàn, với một bộ chuyển đổi buck 5 V trên bo mạch riêng biệt đang cung cấp cho đường ray khác trên PCB (mà ATmega328PB của tôi được kết nối).
Đường ray 12 V có một loạt các lỗ cắm thùng DC trên đó sẽ được tiếp xúc với người dùng cuối. Vì vậy, tự nhiên tôi quyết định kẹt một tuốc nơ vít của thợ kim hoàn vào một trong số chúng để tiến hành kiểm tra ngắn mạch của mình.
Hãy nhìn xem, một làn khói từ ATmega328PB của tôi.
Tôi nghĩ điều đó có nghĩa là một trong những điều sau đây đã xảy ra:
Sơ đồ thời gian
Đây là sơ đồ của các kết nối đến ATmega328PB:
Dưới đây là tất cả các sơ đồ của những thứ trong thiết kế có kết nối với đường ray 12 V (đường ray VBAT +) và điều khiển các đường trở về hiện tại của GND:
Và đây là sơ đồ của các lỗ cắm thùng và các chân phát hiện jack liên quan (lưu ý rằng các chân này kết nối trực tiếp với một số chân của ATmega328PB không có điện trở nối tiếp ):
Kế hoạch ngắn mạch
Kế hoạch xử lý các mạch ngắn trên đường ray 12 V chỉ đơn giản là tắt FET kênh N của LOAD_FET vì một trong hai điều kiện logic được đáp ứng trong phần sụn:
- Lấy mẫu ADC ở tốc độ 1 Hz sẽ phát hiện tình trạng quá dòng và khiến công tắc FET_LOAD ngừng tiến hành, do đó cắt dòng điện ngắn mạch
- Điện áp cung cấp ATmega sẽ chuyển sang trạng thái tắt và MCU sẽ đặt lại và khởi tạo công tắc FET_LOAD thành "tắt", do đó cắt dòng điện ngắn mạch
Khói lớn
Dưới đây là một thăm dò dao động về những gì xảy ra với đường ray Vbat + trên CH1 (màu vàng) và đường ray +5 trên CH2 (màu xanh) khi rút ngắn Vbat + sang GND thông qua việc áp dụng tuốc nơ vít của thợ kim hoàn vào dây phơi của cáp được cắm vào mạch jack thùng (tôi đã không gắn tuốc nơ vít vào ổ cắm ) trong khi nó đang được cung cấp bởi nguồn cung cấp trên băng ghế dự bị được đặt thành 12V @ 5 Amps:
Sau khi điều đó xảy ra, ATmega sẽ rất nóng bất cứ khi nào tôi cấp nguồn cho bo mạch và hoạt động hiệu quả như một mạch ngắn giữa đầu vào + 5V và tín hiệu tiếp đất. Tôi đã kích hoạt ATmega với không khí nóng và thử FET_LOAD FET kênh N để xem nó có bị rán không. Thật vậy, nó đã thất bại đến nỗi nó sẽ không còn tắt hoặc bật khi điện áp cổng được đặt vào +5 hoặc tín hiệu mặt đất, mà thay vào đó là hoạt động ở đâu đó trong vùng chạng vạng giữa. Nó đã giảm khoảng 2,3 volt trong khi tiến hành ~ 200 mA cho dù đó là "bật" hay "tắt" khi tải được cắm vào giắc cắm thùng.
Linh cảm
Có một linh cảm rằng vì FET đã bị hỏng mà vectơ gây thiệt hại cho ATmega có thể là do truyền điện áp cao qua cống FET đến cổng của nó và vào MCU. Đã thực hiện một số thử nghiệm tiếp theo với điện áp thấp hơn cung cấp đường ray 12V. Lưu ý ba hình ảnh đầu tiên về cơ bản là giống nhau, nhưng với các dòng cực đại khác nhau. Khi ATmega tắt (do điện áp bị sập trên đường ray Vbat +), tín hiệu LOAD_GND_ENABLE do MCU cung cấp (màu xanh lam, bên dưới) lần lượt xuống mức thấp, cắt công tắc FET_LOAD .
Huyền thoại:
CH1 = Điện áp trên Rshunt (0,005 ohm) CH2 = Điện áp ở tín hiệu LOAD_GND_ENABLE (được kết nối với ATmega)
Vbat + được cung cấp ở 6V:
Vbat + cung cấp ở 7V:
Vbat + cung cấp ở 8V:
Vbat + cung cấp ở 9V:
Trong lần cuối cùng đó, dòng điện không bao giờ ngừng tăng và tín hiệu LOAD_GND_ENABLE đã thực hiện một điệu nhảy sôi nổi, nhưng tất cả sẽ xuất hiện rằng các giới hạn tối đa không bao giờ bị vi phạm trên pin LOAD_GND_ENABLE (ít nhất tôi không nghĩ rằng chúng là ... Tôi chỉ có phạm vi 2 kênh và phải đo đường ray + 5V để biết điện áp trên LOAD_GND_ENABLE wrt Vcc).
Bước tiếp theo
Tôi chỉ còn 1 ván có thể hy sinh, vì vậy kế hoạch của tôi là:
Sử dụng ATmega328PB trống để tất cả các chân của nó sẽ được mặc định có trở kháng cao mà không có thiết bị ngoại vi được cấu hình / khởi tạo. Lặp lại thử nghiệm ngắn mạch để xem ATmega328PB có còn bốc khói hay không. Nếu nó không hoạt động, thì MCU đã thất bại vì nó đã tìm nguồn / chìm quá nhiều dòng điện từ một trong các chân của nó được cấu hình như một đầu ra trong khi nó đang chạy firmware trong các thử nghiệm trước đó.
Thử nghiệm với ATmega328PB được gắn trên bảng đột phá (không may là chip này không có trong các gói DIP) được kết nối với PCB thông qua flywires. Chọn lọc bắt đầu kết nối một flywire duy nhất tại một thời điểm, chạy thử nghiệm và xem flywire nào kết thúc là một trong những người chịu trách nhiệm chiên ATmega328PB.
Đặt mua một mẫu PCB mới với bố cục thay đổi sao cho tất cả các dấu vết kết nối với ATmega328PB được kết nối bằng các cầu hàn có thể được hàn bằng tay khi tôi kiểm tra. Bằng cách này, có thể tiến hành thử nghiệm ngắn mạch (và bất kỳ thử nghiệm nào khác) với ATmega được kết nối với một số tín hiệu hạn chế tại một thời điểm và giúp dễ dàng kết nối tất cả các mạch ngoài khác với các cầu hàn này để điều khiển chúng độc lập với ATmega .
Vâng, nó thực sự là một câu hỏi!
Và câu hỏi là:
- Có ai thấy bất cứ điều gì ở đây mà tôi không. Có rõ ràng không? Tôi hy vọng nó không rõ ràng ...
- Bước tiếp theo của bạn sẽ là gì?