Aktywne Wpisy
TTedbundYY +191
Nie zapraszam do dyskusji, bo nie ma o czym.( ͡° ͜ʖ ͡°)
1. Wygląd jest najważniejszą rzeczą nie tylko w sferze randkowej.
2. Kobiety bardziej patrzą na wygląd niż mężczyźni.
3. Kobiety są bardziej 'selektywne'.
4. Mężczyźni poniżej 6/10 nie mają standardów.
5. Wygląd staje się coraz ważniejszy ze względu na social media.
6. Mężczyźni 8+/10 nie mają żadnego problemu w relacjach z loszkami.
7. Mężczyźni 5-7/10 zbierają
1. Wygląd jest najważniejszą rzeczą nie tylko w sferze randkowej.
2. Kobiety bardziej patrzą na wygląd niż mężczyźni.
3. Kobiety są bardziej 'selektywne'.
4. Mężczyźni poniżej 6/10 nie mają standardów.
5. Wygląd staje się coraz ważniejszy ze względu na social media.
6. Mężczyźni 8+/10 nie mają żadnego problemu w relacjach z loszkami.
7. Mężczyźni 5-7/10 zbierają
alkoholik000 +231
Używam w kodzie SysTick, w którego przerwaniu inkrementuję zmienną uint32. Ta zmienna ma służyć jako flaga wykonania regulacji, a konkretniej ma zastąpić wywoływanie funkcji timerem.
Teoretycznie wszystko działa, zmienna w każdym przerwaniu jest coraz większa, ale w momencie kiedy ma wartość 999 cały program zawiesza się/przestaje inkrementować jakby SysTick przestał działać.
Warunek wykonania funkcji mam na równej wartości 1000 (ms), więc w obecnym przypadku kod się nie wykona i zawiesi. Jak zmniejszę warunek o np. 100 to funkcja wykona się, ale tylko raz. SysTick zacznie inkrementację ponownie, dobije do 99 i stanie.
Zmienna inkrementowana jest volatile (bo obsługiwana w przerwaniu i w zwykłym kodzie) i z racji udostępniania jej w kilku miejscach deklaruję ją z extern.
Co mogę robić nie tak? ( ͡° ʖ̯ ͡°)
#embedded #arm #programowanie #jezykc
@macgajster: przede wszystkim nie użyłeś debuggera.
Najlepiej to podłącz debugger, a w międzyczasie zapostuj kod.
No i z racji, że nie jest to projekt amatorski, a praco-dydaktyczny, to nie mogę go udostępniać, bo będzie przypał :(
@macgajster: jaki to procek? Co ma bare metal do podłączenia debuggera?
To na privku, nie powiem nikomu.
Dobra, pokopiuję co najważniejsze części do jakiegoś jednego mikromaina. Nie będzie się to kompilowało, ale będzie kod.
gdb
, więc na mój gust to powieneś mieć możliwość debugowania. No chyba, że się mylę, ale na twoim miejscu bym jednak poszukał jak podłączyć gdb doWłaśnie funkcja działa spoko, bo wywoływana przez przerwanie timera chodzi bez problemu godzinami.
Szukałem czegoś na temat "blokowania się" zmiennej na danej wartości typu "przed 100" czy "przed 1000" i jedyne co to był brak volatile, który u mnie jest.
Po gitach szukając znalazłem jakieś przykłady, jest nawet jeden systick wykorzystujący to do robienia delaya. To chyba jedyna opcja żeby sprawdzić hw :/
Wiesz co... jak jakieś peryferium odpalałem to za rozwiązaniem dotarłem do japońskiego forum i dopiero tam znalazłem informację co odpalić żeby zaczęło działać ;)
Co do takiego mocno ograniczonego to chyba bardziej jestem w stanie się przyzwyczaić niż
Dlaczego tak jest to nie wiem, mam nadzieję, że nie przyda się już dalej ten timer ( ͡° ͜ʖ ͡°)