Bit dalam menetapkan xdata

T

tom12sg

Guest
Hai,

Membutuhkan saran berikut ini:

Saya menggunakan keil untuk 8051.
Biasanya saya akan sedikit menggunakan bendera untuk menguji
misalnya flag_error bit = 0;

Bagaimana caranya menggunakan xdata bukan?Cara menetapkan nama untuk masing-masing bit dalam xdata?
Harap memberikan contoh sederhana tentang cara untuk mengatur / jelas / tes tertentu bit
Apakah ada cara yang mudah?

Salam,

 
Beberapa cara:
1.menggunakan struct bitfield - menonton bitfield pesanan.

typedef struct (tagBit
unsigned char B0: 1;
unsigned char b1: 1;
unsigned char b2: 1;
unsigned char B3: 1;
unsigned char b4: 1;
unsigned char B5: 1;
unsigned char g6: 1;
unsigned char B7: 1;
Bit);

Bit xdata test;
test.b0 = 1;

2.Defind mudah mengakses fungsi pada data byte, misalnya.

# define SetBit (var, tempat) (var | = (1 <<tempat))
# define ClrBit (var, tempat) (& var = ~ (1 <<tempat))
# define ValBit (var, tempat) (var & (1 <<tempat))

# define TEST 0
unsigned obrolan var1;
SetBit (var1, TEST)

Hope this helps.
Salam
NTFreak

 

Welcome to EDABoard.com

Sponsor

Back
Top