C portok
Gusi
gusi at freemail.hu
Mon Mar 26 08:55:41 CEST 2007
Szia !
>Tudtok valami jo, es elegans megoldast arra, hogy kulonbozo
portok
>kulonbozo bitjeit (nevezzuk egyszeruen input1-input10),
hogyan lehetne
>tombkent vagy ertelmes modon kezelni? Arra lenne szuksegem,
hogy
>detektaljam, hogy valtozott-e valamelyik bit, es ha igen
akkor tudjak
>valamit tevekenykedni.
>Persze a portbitek nem egymas utaniak:
Hát mindenképp pakold össze őket.
word refreshIO(void)
{
Retval = 0;
if (In1) Retval = Retval or 0x001;
if (In2) Retval = Retval or 0x002;
if (In3) Retval = Retval or 0x004;
...
}
void Calc_UD_Edge(word IO)
{
global word _IO_Temp, _IO_UpEdge, _IO_DownEdge;
register W = IO xor _IO_Temp;
_IO_UpEdge = W and IO;
_IO_DownEdge = W and _IO_Temp;
}
void Main()
{
...
Calc_UD_Edge(refreshIO());
if (_IO_UpEdge && 0x020) PressedBtn5();
if (_IO_DownEdge && 0x002) ReleasedBtn1();
...
}
Bocs, de ezer éve nem C-ztem.
_________________________________________________________________
Vásároljon kényelmesen! Több 10.000 ajánlattal, kedvező árakkal várjuk.
http://cthandler.adverticum.net/?cturl=http%3A%2F%2Fwww.vasarlas.origo.hu%3Flevelalja_07marc
More information about the Elektro
mailing list