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

RC5 atmega8 przypisanie przyciskowi konkretna funkcję

tomaszgeist 03 Sty 2012 20:40 995 1
REKLAMA
  • #1 10344338
    tomaszgeist
    Poziom 1  
    Witam,

    Mam drobny problem z podczerwienią. Skorzystałem z kodu z strony http://hobby.abxyz.bplaced.net/index.php?pid=3&aid=16.
    Kodzik bardzo fajnie działa, odebrany sygnał wyświetlony na 6 diodach pokrywa się z kodami dla każdego przycisku w systemie RC5.
    Mój problem polega na tym, że nie potrafię przekazać odebranego kodu do głownej pętli aby konkretnemu przyciskowi przypisać funkcję, np zapalenie diody.
    Odbiornik podczerwieni podpiołem do portu PD2, 7 diod do portu B, a 8 diode do portu PC5.


    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
  • REKLAMA
  • Pomocny post
    #2 10345784
    dondu
    Moderator na urlopie...
    1. Komentuj bogato swój własny kod, bo sam się w nim pogubisz, a i nam trudniej analizować, nie wiedząc co chcesz w danym fragmencie zrobić.

    2. deklarujesz zmienną globalną cod, w przerwaniu nadajesz jej wartość cod=code:
    2a. ale jej nie używasz w pętli głównej i nigdzie indziej - do czego więc jest?
    2b. aby ją wykorzystać w pętli głównej cod musi być volatile
    2c. a zamiast tego utworzyłeś zmienną lokalną w main o nazwie code

    ... czyli reasumując cod jest Twoim problemem:
    - zrób ją volatile,
    - w main() zamiast code wykorzystaj cod:

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod

    - z main() usuń deklarację: static unsigned int code;

    I tutaj uwaga dodatkowa - sądzę, że pogubiłeś się dlatego, iż nazywasz zmienne bardzo podobnie, a wtedy łatwo o pomyłkę.
REKLAMA