Ahoj poradí mi někdo s portem PORTF, abych s ním mohl pracovat jako s ostatními porty.
Chtěl bych ovládat piny PORTU F samostatně
Nejde mi přeložit kod PORTF.1 = 1;
hlásí mi to chybu
Error: the first argument of the ‘.’ operator must be of ‘struct’ or ‘union’ type
Mám úplně stejný problém, ale s procesorem ATmega1280. Do portu F všechno v pohodě, ale s vyšším porty mi to házi stejný error.
Dělám codevisionu.
Poraďte prosím
Díky moc za radu, ale mám ještě jednu atázku. Jak mám informaci z vyšího portu - konkretního bitu přečíst ?
Příklad :
if(PINH.1==0) udělej_neco=1; else udelej_neco=0;
// tento řádek samozřejmě překládač vyhodnoti jako chybu
if(PORTF & (1<<PF1)) prikaz; // test na "1"
if(!(PORTF & (1<<PF1))) prikaz; // test na "0"
if(PORTF & (1<<PF1 | 1<<PF2)) prikaz; // test více bitů
Chlapi, to jsou základy C
Kdybyste se vykašlali na všelijaký speciality různých překladačů a snažili se maximálně využívat ANSI C, tak tyhle problémy nemáte. Zrovna tak při přechodu na jiný překladač jste v loji. Když používáte standardní zápisy, tak jste vpohodě.
Tak to nevím, já začínal nejdřív s ANSI C na win32, tudíž je to pro mne automatické a nejsem poznamenán všelijakými “užitečnými” rozšířeními překladačů pro mcu.
Aj ja doporucujem co najmenej pouzivat rozne C vychytavky toho ktoreho prekladaca. Velmi to zneprehladnuje text pre C-ckarov z inych platforiem - pootm nevedia tak efektivne poradit a brzdi to prechod na iny prekladac.