logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak zapisać dane do EEPROM AVR Mega32 przy wyłączaniu zasilania?

rgbujan 13 Lut 2005 11:43 2370 7
REKLAMA
  • #1 1224154
    rgbujan
    Poziom 11  
    Posty: 72
    Ocena: 1
    Mam procesor AVR AT Mega32. Podczas pracy procesora zbieram i obrabiam dane. Chcę by te dane zapisywały się do EEPROM procesora w chwili, gdy wyłączam zasilanie wyłącznikiem. Jak to bezpiecznie zrealizować? (Z różnych względów chcę uniknąć stałego zasilania procesora i usypiania go.)

    RGB
  • REKLAMA
  • #2 1224209
    GienekS
    Poziom 32  
    Posty: 1971
    Pomógł: 139
    Ocena: 15
    Biżesz sygnał z elektrolita zasilacza, jeszcze przes stabilizacją, robisz dzielnik oporowy z diodą zenara, który będzie za zadanie miał wykryć zaniżenie napięcia zasilania i wygenerowanie sygnału, który będzie wykonywał przerwanie w procku do zapisu danych w EEPROM-ie.
    Tak ja bym to widział.
  • REKLAMA
  • #3 1226039
    Qpel
    Poziom 12  
    Posty: 44
    Pomógł: 1
    nie wiem ile masz tych danych do zapisu, lecz "najbezpieczniej" bez drugiego zasilania uP ?
    propozycja z sygnalem sprzed stabilizatora jest dobra pod warunkiem "przewymiarowania" zasilacza,

    ja bym dał kondensator/akumulator włączany mosfetem, tak aby procesor mógł sam się uśmiercić po zaniku zasilania głównego.

    oczywiście sygnał sprzed stabilizatora również należy pozostawić ...
  • REKLAMA
  • #4 1226303
    ko_rex
    Poziom 19  
    Posty: 253
    Pomógł: 38
    Ocena: 2
    Myślę, że odpowiedzi kondensator wystarczy i nie trzeba żadnego mosfeta. Musisz oszacować ile Ci potrzeba czasu na zapis tych danych do eepromu i dobrać pojemność. Podłączasz się do komparatora i porównujesz napięcie w którymś puncie zasilacza (montujesz szeregową diodę przed kondensatorem i prockiem, więc kondensator zasila tylko procka) z napięcięm odniesienia (Bngdap Reference). Generujesz przerwanie i zapisujesz w nim potrzebne dane, potem martwa pętla/ power down. Powinno działać.
  • #5 1226850
    rgbujan
    Poziom 11  
    Posty: 72
    Ocena: 1
    Mój układ jest zasilany z baterii.

    RGB
  • #6 1226886
    GienekS
    Poziom 32  
    Posty: 1971
    Pomógł: 139
    Ocena: 15
    To jeszcze prościej. Stosujesz układ kontroli zasilania (reset) typu DS1812 lub DS1813 zależnie jakim zboczem chcesz wyzwolić przerwanie i dobierasz wersję układu zależną od napięcia przy którym ma zadzoałać. Podłączasz go do wybranego przerwania a w obsłudze zapisujesz swoje dane. A potem to już zależy co wyda Ci się za stosowne albo uśpienie procka albo pętla bez końca ewentualne sygnalizacjia zaniku zasilania.
  • #7 1227065
    kamyczek
    Poziom 38  
    Posty: 3994
    Pomógł: 394
    Ocena: 570
    Kondensator najprosciej ale, poprawnie i solidnie byłoby przełącznik zasilania zastapic ukladem wraz z mosem kontrolujacym stan wyjscia przełącznika i po jego wyłaczeniu wykonujacym procedure zapisu do eepromu i wyłączajacym zasilanie ukladu . jest to rozwiazanie troszke bardziej skomplikowane lecz niezawodne i dzialajace w czasie uklad z kondensatorem sprawdza sie raczej przy ukladach zasilanych z sieci które wymagaja zapisu danych przy utracie zasilania ....
  • REKLAMA
  • #8 1987225
    rgbujan
    Poziom 11  
    Posty: 72
    Ocena: 1
    Ostatecznie zastosowałem mos na zasilaniu.

    RGB

Podsumowanie tematu

✨ Dyskusja dotyczy bezpiecznego zapisu danych do pamięci EEPROM mikrokontrolera AVR AT Mega32 podczas wyłączania zasilania wyłącznikiem, bez stosowania stałego zasilania i trybu uśpienia. Proponowane rozwiązania obejmują wykrywanie spadku napięcia zasilania przed stabilizatorem za pomocą dzielnika rezystorowego i diody Zenera, co generuje przerwanie w mikrokontrolerze do zapisu danych. Alternatywnie sugerowano zastosowanie kondensatora o odpowiedniej pojemności, który zasila procesor na czas zapisu, wraz z komparatorem napięcia i generowaniem przerwania. Wskazano także możliwość użycia układów kontroli zasilania typu DS1812 lub DS1813, które wyzwalają przerwanie przy określonym poziomie napięcia. Bardziej zaawansowane rozwiązanie to zastosowanie MOSFET-a do sterowania zasilaniem, umożliwiającego wykonanie procedury zapisu i odcięcie zasilania po jej zakończeniu. Ostatecznie autor zastosował rozwiązanie z MOSFET-em na zasilaniu.
Wygenerowane przez model językowy.
REKLAMA