eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaDefiniowane portów/flag w C › Definiowane portów/flag w C
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
    OSTED!not-for-mail
    From: sword <n...@p...onet.pl>
    Newsgroups: pl.misc.elektronika
    Subject: Definiowane portów/flag w C
    Date: Thu, 19 Oct 2017 13:01:49 +0200
    Organization: ATMAN - ATM S.A.
    Lines: 44
    Message-ID: <osa0qm$mhc$1@node1.news.atman.pl>
    NNTP-Posting-Host: 176.97.25.60
    Mime-Version: 1.0
    Content-Type: text/plain; charset=iso-8859-2
    Content-Transfer-Encoding: 8bit
    X-Trace: node1.news.atman.pl 1508411030 23084 176.97.25.60 (19 Oct 2017 11:03:50 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Thu, 19 Oct 2017 11:03:50 +0000 (UTC)
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101
    Thunderbird/52.4.0
    X-Mozilla-News-Host: news://news.atman.pl:119
    Content-Language: pl
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:725070
    [ ukryj nagłówki ]


    Cześć,

    Może nie do końca ta grupa ale wielu z Was pisze w C i może mi podpowie :)

    Korzystam z takich makr, które pracują na bitach, np.:

    #define setbit(VAR,Place) ( (VAR) |= (uint8_t)((uint8_t)1<<(uint8_t)(Place)) )

    w programie mam zdefiniowane np.:

    #define PORT_LED GPIOA
    #define LED_R 0

    uint8_t main_flags1, main_flags2, main_flags3;
    #define FLAGA1 0
    #define FLAGA2 0


    i później takie wykorzystanie np.:

    setbit(PORT_LED, LED_R);
    setbit(main_flags, FLAGA1);
    setbit(main_flags2, FLAGA2);

    Przy portach to jeszcze nie jest problemu ale przy flagach trzeba
    ręcznie panować nad tym w której zmiennej leży jaka flaga. Już
    kilka razy szukałem przez to błędów.

    Jak zrobić, żeby odwołanie do flagi było jednoznaczne, chodziło by mi
    o coś takiego (co nie działa przez ten przecinek):

    #define F_LED_R PORT_LED,LED_R

    setbit(F_LED_R);

    Wtedy w programie nie muszę się już zastanawiać gdzie leży jaki bit.

    Zawsze tak pisałem w asm, a teraz mi tego brakuje :)


    Pozdrawiam,
    --
    sword

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: