This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Defining bit field structure to use sfr P1

Hi,
I want to create a bit field structure for a group of bits associated with 'sfr P1'

/* Bit definitions within sfr P1 */
#define NRAMEN (1 << 5)
#define A20 (1 << 4)
#define A19 (1 << 3)
#define A18 (1 << 2)
#define A17 (1 << 1)
#define A16 (1 << 0)

#define NCSDUART NRAMEN+A18

struct myp1 {
unsigned char bankSelect :6; /* select banked device */
unsigned char wdog :1;
};

struct myp1 data port1 _at_ 0x90; /* problem line doesnt work */


My problem is the last line, how do i get my struct to use P1 so I can do the following ?
port1.bankSelect = NCSDUART; /* set/res the appropriate bits on port1 */

Or will i have to start doing something like the following (which i was trying to avoid)?
P1 = (P1 & 0xC0) + NCSDUART; /* mask off unwanted bits then select appropriate banked device */


Thanks Mark.

Parents Reply Children
No data