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

[STM32F103] STM32F103 - Problemy z ponownym wejściem w tryb STOP mode po wybudzeniu przez RTC

OlegTor 08 Lut 2017 11:02 1659 13
REKLAMA
  • #1 16261662
    OlegTor
    Poziom 10  
    Posty: 193
    Pomógł: 1
    Ocena: 12
    Witam,

    Mam problem z poprawnym działaniem trybu STOP mode w STM32.
    Procesor wybudzam z tego trybu przez RTC.
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod

    STM32 posłusznie usypia, potem się budzi, ale ponownie już nie chcę zasnąć powyższym kodem.
    Co może być tego przyczyną ?

    Pozdrawiam.
  • REKLAMA
  • #2 16262070
    Konto nie istnieje
    Konto nie istnieje  
  • #3 16262257
    el2010tmp
    Poziom 25  
    Posty: 713
    Pomógł: 97
    Ocena: 43
    Jak jesteś leniwy to spróbuj po wybudzeniu przeprowadzić ponowną konfigurację albo resetuj mcu.
  • #4 16262261
    tadzik85
    Poziom 38  
    Posty: 3404
    Pomógł: 415
    Ocena: 16
    To jest rodzina F1, oczywiście pytający nie poda szczegółów. Tam wejście w tryb uśpienia jest skopany. Jak mnie pamięć nie myli

    najpierw WFE potem SEV i znów WFE.

    Poza tym w PWR->CR masz bit kasujący flagę wakeup

    Dodano po 2 [minuty]:

    I po co ustawiasz SEVONPEND?
  • REKLAMA
  • #5 16262288
    Konto nie istnieje
    Konto nie istnieje  
  • #6 16262788
    OlegTor
    Poziom 10  
    Posty: 193
    Pomógł: 1
    Ocena: 12
    @Piotrus_999, możesz mi pokazać gdzie zadawałem takie pytanie i najlepiej gdzie otrzymałem odpowiedzi ?
    @Piotrus_999, @el2010tmp, przecież napisałem, że używam tego samego kodu do usypiania, więc to oczywiste że za każdym razem tak samo to konfiguruję.

    @tadzik85, kombinację z _SEV też stosowałem, ale wtedy miałem zwiechę. Dopiero wrzucenie SEVONPEND pozwoliło na pojedyncze usypianie o czym napisałem w pierwszym poście.
  • REKLAMA
  • #7 16263310
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • #8 16263359
    OlegTor
    Poziom 10  
    Posty: 193
    Pomógł: 1
    Ocena: 12
    @Piotrus_999, jeśli znasz odpowiedź to przedstaw ją, będę wdzięczny. Ale proszę nie pisz takich rzeczy jak powyżej bo to jest niepoważne.
  • #9 16263469
    Konto nie istnieje
    Konto nie istnieje  
  • #10 16264245
    OlegTor
    Poziom 10  
    Posty: 193
    Pomógł: 1
    Ocena: 12
    Ciężko przeglądać ten "kod" od ST, brak sensownego analizowania rejestrów. Gdzie znalazłeś coś wartościowego na temat STOP mode w tym kodzie ?
  • #11 16264293
    Konto nie istnieje
    Konto nie istnieje  
  • #12 16265938
    OlegTor
    Poziom 10  
    Posty: 193
    Pomógł: 1
    Ocena: 12
    Jeśli jak piszesz, umiesz analizować kod to pokarz mi gdzie tu jest sedno problemu w moim kodzie.
    To jest kod z twojego linka:
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
    Bo ja nie widzę tu nic istotnego. Co mogło by to wnieść to znalezienia problemu.
  • #14 16267133
    OlegTor
    Poziom 10  
    Posty: 193
    Pomógł: 1
    Ocena: 12
    Jarek dzięki za odpowiedź. Niestety tak już też robiłem i dalej były te problemy.
    Zastanawiam się, czy to może być związane z błędem w strukturze procesora i przy przypadkowym ustawieniu niepotrzebnej flagi procek nie może wejść do STOP'a.

    ----------------------------

    OK. Rozwiązałem w inny sposób problem powtórnego usypiania. Niestety rozwiązałem go w sposób pośredni, ale dobre i to, ważne że działa.

Podsumowanie tematu

✨ Użytkownik zgłasza problem z ponownym wejściem w tryb STOP mode w mikrokontrolerze STM32F103 po wybudzeniu przez RTC. Po wybudzeniu procesor nie może ponownie zasnąć, mimo że kod konfiguracyjny wydaje się poprawny. Odpowiedzi sugerują, aby porównać konfigurację przed i po wybudzeniu, przeprowadzić ponowną konfigurację po wybudzeniu lub zresetować mikrokontroler. Wskazano również na problemy z rodziną F1, gdzie sekwencja WFE i SEV może być kluczowa. Użytkownik rozwiązał problem w sposób pośredni, ale nie podał szczegółów.
Wygenerowane przez model językowy.
REKLAMA