Napsal: 16 bře 2012, 16:48
Když používáš CodeVision a jeho kompilátor, tak umí přistupovat bitově, ale ve výsledku to dělá stejně jako AVRStudio, tj. že maskuje porty.
Vše, co potřebujete vědět o elektronice :-)
http://www.ebastlirna.tech/
SBI PORTB,PB0MiroH píše:Pretoze AVR nemaju na porty bitovy pristup.
Kód: Vybrat vše
typedef union
{
unsigned char Byte;
struct
{
unsigned int bit_0 :1;
unsigned int bit_1 :1;
unsigned int bit_2 :1;
unsigned int bit_3 :1;
unsigned int bit_4 :1;
unsigned int bit_5 :1;
unsigned int bit_6 :1;
unsigned int bit_7 :1;
}Bits;
}ByteField;
volatile ByteField pokus;
void main(void)
{
pokus.Byte = 255;
pokus.Bits.bit_6 = 0;
}
Kód: Vybrat vše
unsigned char bit[8];
void main(void)
{
unsigned char k, m=1;
for(k=0;k<=7;k++)
{
bit[k] = m;
m <<= 1;
}
PORTB |= bit[5];
PORTB &= ~bit[5];
}