-
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
Następne wpisy z tego wątku
- 19.10.17 13:47 Adam Wysocki
- 19.10.17 14:15 sword
- 19.10.17 14:30 Waldemar
- 19.10.17 20:17 Sebastian Biały
- 19.10.17 21:14 sword
- 19.10.17 21:15 sword
- 19.10.17 21:19 Sebastian Biały
- 19.10.17 21:38 Grzegorz Niemirowski
- 19.10.17 22:17 sword
- 19.10.17 22:28 Sebastian Biały
- 19.10.17 22:48 Jakub Rakus
- 20.10.17 02:04 J.F.
- 20.10.17 09:43 Marcin
- 20.10.17 11:53 Janusz
- 20.10.17 13:57 sword
Najnowsze wątki z tej grupy
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
Najnowsze wątki
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz