Keil vyhlásenie Help!

P

Picstudent

Guest
Hai,
V Timer2 ISR som nepodpísané intiger premenné.
Ako ja môžem porovnávať nižšieho bytu premenné TL2 a horný byte na TH2.
takže môžem považovať premennú hodnotu časovača
Myslím, že Keil má method.not istý.
Please suggestVďaka za odpoveď
Ospravedlňujeme sa za chybu.moja otázka bola úplne mätúce.
Vlastne na vonkajšie prerušenia od port3.6, chcem prečítať časovač 2 hodnoty do premennej. (TH2 a TL2).
Predpokladám, že Vyhlasujem, variabilný
unsigned int timer2_val;
Ako sa môžem pohybovať TL2 a TH2 na dolnej a hornej pokúšať o timer2_val, takže môžem považovať Timer2 hodnoty jednej premennej.
Som začiatočník v C.
Thanks again

Picstudent
Naposledy upravil Picstudent dňa 26.novembra 2004 8:48, upraveno 1 celkom

 
Nazdar,

skúste toto:unsigned int var, tmpHI, tmpLo;

tmpHi var = & 0xFF00;
tmpHi>> = 8;

tmpLo var = & 0x00FF;

TL2 = tmpLo;
TH2 = tmpHi;S pozdravom.Mr.Cube

 
Ak som pochopil správne, máte TH2 a TL2, a chcete, aby jedno číslo premennú z tých dvoch.unsigned int timer2_val;

timer2_val = TH2 * 256 TL2;

alebo

unsigned int tmp;

tmp = TH2 <<8;

timer2_val = tmp TH2Mr.Cube

 
Nazdar,

skúste toto:

# Define HIGHBYTE 0
# Define LOWBYTE 1

union
(
unsigned int timer16;
unsigned char timer8 [2];
)
časovač;

timer.timer16 = 0x1234, / / 16 bitová hodnota
TH2 = timer.timer8 [HIGHBYTE]; / / highbyte zo 16 bitovú hodnotu
TL2 = timer.timer8 [LOWBYTE]; / / lowbyte zo 16 bitovú hodnotu

Dovoľujeme si upozorniť, ak používate tento pre PIC HIGHBYTE musia byť definovaný ako 1 a LOWBYTE musia byť definovaná ako 0.

s pozdravom

 
Picstudent Napísal:

Hai,

Ako sa môžem pohybovať TL2 a TH2 na dolnej a hornej pokúšať o timer2_val, takže môžem považovať Timer2 hodnoty jednej premennej.

Picstudent
 

Welcome to EDABoard.com

Sponsor

Back
Top