Làm cách nào để đệm ATMEGA khi bị gián đoạn nguồn cấp mili giây mà không có hành vi lạ?


8

Tôi có một arduino ATMEGA328p-pu với mạch dải đăng ký LED + shift được gắn trên SPI. Khi bật, nó sẽ tăng một biến trong EEPROM để chuyển sang chế độ hiển thị.

  • Chúng tôi có bộ phát hiện mất điện được đặt ở mức 1 (2.7V).
  • Có một tụ điện 1500 uf được gắn song song với nguồn điện, hy vọng, giữ cho arduino không thay đổi chế độ trên một tác động vật lý, vì các cực của pin có thể ngắt kết nối một chút trong một mili giây (?) Hoặc như vậy.
  • Có một diode trên dây dẫn dương của nắp để ngăn nắp xả vào đèn LED, vì vậy nó chỉ đệm bộ arduino.
  • Ngoài ra còn có một điện trở 1000 ohm song song trên nắp để thoát nó vì nó đang giữ một điện áp, mà chúng tôi giả sử là đằng sau một vấn đề trong đó đôi khi chip không sáng lên mạch LED khi khởi động.
  • Các arduino pro mini và dải được đánh giá ở mức 5v, nhưng chúng tôi thường xuyên chạy chúng ở mức 3,7V để chúng có thể được cung cấp năng lượng với một tế bào Li-Ion duy nhất.

Đôi khi sau khi ngồi trong 10 hoặc 15 giây, mạch điện sẽ không sáng. Đôi khi sau khi ngắt kết nối pin và kết nối lại nhiều lần liên tiếp, nó sẽ sáng lên.

Bất cứ ai cũng có thể đề xuất một cách tốt hơn để cung cấp bộ đệm nguồn cho ATMEGA (nhưng không phải cho dải đèn LED)? Có phải chúng ta đang làm nó một cách chính xác cho hầu hết các phần?

Sơ đồ (xin lỗi nếu nó lộn xộn, tôi có thể nhờ bạn tôi làm lại nó trong Illustrator nếu nó không rõ ràng, chỉ mất vài giờ): Sơ đồ mạch


2
Bạn có thể vẽ sơ đồ mạch của tình huống với AVR, nguồn điện, điện trở, tụ điện, diode, ...
jippie

Là lý do duy nhất bạn cần "bộ đệm" này vì các cực pin có thể ngắt kết nối nhẹ nếu bị va đập? Nếu vậy bạn chỉ cần tháo đầu nối và hàn dây trực tiếp vào bảng.
Garrett Fogerlie

Để lặp lại jippie, bạn đã bắt đầu với một mô tả bằng văn bản tốt, việc bổ sung một sơ đồ sẽ giúp ích rất nhiều. Nếu bạn có vấn đề gửi bài có sự giúp đỡ có sẵn.
giữ chỗ

2
Điện trở chảy máu của bạn là ở phía nhỏ, tiêu thụ năng lượng đáng kể so với nhu cầu chờ thông thường. Nếu bạn có thể phát hiện mất điện trong phần mềm, hãy thiết lập chương trình "đếm" trên đầu ra UART bắt đầu từ màn hình và theo dõi trong khi kéo nguồn cung cấp và xem nó chạy trong bao lâu, tính toán lại thông qua anh ta. Cũng hãy cẩn thận khả năng vô tình cấp nguồn cho các thiết bị ngoại vi thông qua các đường dữ liệu.
Chris Stratton

1
Có lẽ bạn có thể thử cung cấp cho arduino một số đầu ra độc lập (nối tiếp, nó là đèn LED riêng) để bạn có thể làm một dấu hiệu gỡ lỗi nhỏ ở đó rằng arduino đã được đặt lại, khác với thành công khi nói chuyện với dải đèn LED. Tôi cho rằng dải đèn LED thậm chí không thực sự có thiết lập lại, khác với tiến trình thông thường của trạng thái mỗi khi bạn truy cập?
Chris Stratton

Câu trả lời:


3

Bạn có thể sử dụng một siêu tụ điện (1F / 5.5v) sau diode, kết nối trực tiếp với VCC và GND. Điều này sẽ giúp bạn trong việc đệm sức mạnh.

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.