Jak v C zachazet hromadne s porty?

Tomas Urbanek turbyho na me.com
Úterý Duben 17 10:24:57 CEST 2018


Najednou to nikdy nepujde neb registry bran jsou 8 bitove. Jde to tedy postupne po branach. Pokud to chces co nejrychleji, pouzij asm.

T

13. 4. 2018 v 15:06, Jan Waclawek <konfera na efton.sk>:

>> cele to pisu na Arduinu
> 
> Ak to aj prekladate s jeho zabudovanym prekladacom, tak to je C++ nie C. 
> 
> A tam to na rozdiel od C pojde, ale to nech Vam vysvetlia C++aci.
> 
> wek
> 
> 
> 
> ----- Original Message ---------------
>> Zdravim,
>> 
>> mam takovy zadrhel, a protoze nejsem Cckar, asi mi neco duleziteho unika.
>> 
>> Mam ATmega128 (s arduinovskym bootloaderem a cele to pisu na Arduinu, 
>> ale to je pro tenhle ucel asi jedno), na ni pouzivam skupinu pinu, se 
>> kterymi bych chtel zachazet nejak hromadne - potrebuju nastavit 
>> sestnactibitove cislo, co bit, to jeden pin. Piny jsou ale rozhezeny 
>> pomerne nahodne, prakticky nikde nemuzu pouzit cely port, takze neco 
>> jednoducheho, jako PORTA = 0x45; PORTB = 0xDE; neprojde, protoze nemam 
>> cely PORTA ani PORTB a doplnuji to dalsimi piny z jinych portu.
>> 
>> Poteboval bych tedy vytvorit nejake 'cosi', k cemu se budu chovat jako k 
>> sestnactibitovemu portu, tedy tak, abych mohl pouzit konstrukci jako 
>> PORTQ = 0xDE45;, to cislo inkrementovat, porovnavat atd. Docela dost by 
>> mi to zjednodusilo zivot dale v kodu :)
>> 
>> Napadaji mne ruzna reseni, jen jsou dosti krkolomna - predpokladam, ze 
>> zkuseny Cckar si ted klepe na hlavu a rika si "nadefinuj to jako NNN a 
>> nemusis nad tim premyslet" - ale ja nejsem zkuseny Cckar :)
>> 
>> Poradite figl?
>> 
>> Diky.
>> 
>> Pavel Kutina
> 
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list


Další informace o konferenci Hw-list