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.

AVRStudio4 - dziwne zachowanie przy pracy krokowej

zbynio_k 26 Lis 2013 11:13 687 4
  • #1 26 Lis 2013 11:13
    zbynio_k
    Poziom 10  

    witam,
    właściwie rozpoczynam przygodę z AVR'ami i językiem avr-gcc
    i muszę przyznać, że kompletnie zgłupiałem
    poniżej zamieszczam kod (jako wycinek większej całości),
    który moim zdaniem nie działa prawidłowo

    używam AVRStudio 4
    ustawienia projektu:
    1. ATmega8
    2. fcpu 1000000
    3. optymalizacja -O0 (wyłączona)

    oto kod :

    Kod: c
    Zaloguj się, aby zobaczyć kod

    przy pracy krokowej i podglądzie zmiennych (Watch)
    NIE wykonuje się instrukcja - bit>>1

    czyli zmienna nr_klaw = bit czyli 0b00001000

    gdzie popełniam błąd ??

    pozdrawiam

    0 4
  • #2 26 Lis 2013 11:22
    dondu
    Moderator Mikrokontrolery Projektowanie

    Witaj.

    Przesuwasz o jeden bit w prawo, ale nie przypisujesz zmiennej bit nowej przesuniętej wartości:
    http://mikrokontrolery.blogspot.com/2011/02/kurs-jezyka-c-przesun-bity-prawo.html

    Aby to zrobić musisz zastosować operator przypisania, czyli znak =:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Poćwicz sobie w Cmaniaku przykład nr 5 z tego artykułu.

    0
  • #3 26 Lis 2013 11:33
    zbynio_k
    Poziom 10  

    dzięki,
    trywialny błąd :)
    chyba przyzwyczajenia z Delphi

    Kod: delphi
    Zaloguj się, aby zobaczyć kod


    a wyłączyłem optymalizację TYLKO dla celów szkoleniowych,
    żeby mieć dostęp do zmiennych w Watch'u
    pozdrawiam

    0
  • #5 26 Lis 2013 11:38
    zbynio_k
    Poziom 10  

    jeszcze raz dzięki,
    zapoznam się z CManiakiem

    pozdrawiam
    i zamykam temat

    0