Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

STM32F103 Programowa likiwidacja drgań styków nie działa poprawnie

sonic302 03 Lip 2017 00:19 861 2
  • #1 03 Lip 2017 00:19
    sonic302
    Poziom 9  

    Witam
    Opracowałem prosty program, żeby nauczyć się eliminować programowo drgania styków. Idea jest taka, że po starcie wyświetla się napis „Test0 „ po naciśnięciu przycisku „Test1” i „Test2”. Wykorzystałem rozwiązanie z przykładu 9.6 z książki K. Paprockiego, sam przykład po uruchomieniu działa prawidłowo, czyli zlicza ilość przyciśnięć przycisku. Natomiast w moim programie działa to odwrotnie, gdy przycisk jest wciśnięty wyświetla się test „Test0”, gdy przycisk zostanie puszczony pojawiają się kolejne dwa testowe napisy. Funkcja obsługi przerwania jest taka sama jak w przykładzie z książki, w głównym bloku programu zmieniłem funkcje do obsługi wyświetlacza i zamiast licznika jest proste wyświetlanie tekstu. Próbowałem zamienić zmienne „tak” i „nie” w funkcji obsługi przerwania, ale wtedy wyświetla się tylko pierwszy napis testowy a po liku minutach dwa kolejne, wciśniecie przycisku nie ma znaczenia. Środowisko w którym programuje to Keil v5.
    Pozdrawiam

    main.c

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Obsługa przerwań:
    Kod: c
    Zaloguj się, aby zobaczyć kod

    0 2
  • #2 03 Lip 2017 01:14
    2675900
    Użytkownik usunął konto  
  • #3 05 Lip 2017 01:04
    sonic302
    Poziom 9  

    No fakt zakręcony ten przykład jest dosyć mocno, w porównaniu z innymi rozwiązaniami likwidacji drgań styków. A w moim przypadku wystarczyło zrobić podciąganie do Vcc i wszystko działa. :D

    Kod: c
    Zaloguj się, aby zobaczyć kod

    0