"); //-->
最近看了一款瑞萨的8位单片机做的一个程序,主要对于里面一些关于特殊功能寄存器使用的一些技巧,主要还是联合和结构体的使用,借鉴一下。
struct bit_def {
char b0:1;
char b1:1;
char b2:1;
char b3:1;
char b4:1;
char b5:1;
char b6:1;
char b7:1;
};
union byte_def {
struct bit_def bit;
char byte;
};
union byte_def pm0_addr;
#define pm0 pm0_addr.byte
#define pm00 pm0_addr.bit.b0 /* Processor mode bit */
#define pm01 pm0_addr.bit.b1 /* Processor mode bit */
#define pm02 pm0_addr.bit.b2 /* R/W mode select bit */
#define pm03 pm0_addr.bit.b3 /* Software reset bit */
#define pm04 pm0_addr.bit.b4 /* Multiplexed bus space select bit */
#define pm05 pm0_addr.bit.b5 /* Multiplexed bus space select bit */
#define pm06 pm0_addr.bit.b6 /* Port P4_0 to P4_3 function select bit */
#define pm07 pm0_addr.bit.b7 /* BCLK output disable bit */
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。