⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bit.h

📁 51单片机时钟 和18B20 温度的 LED显示
💻 H
字号:
//==============================================
//功能:由于陵阳61A没有位控,很不便,为了
//使用方便,做如下定义,可以在C中方便的进行位控
//设计:郑萌
//日期:07/3/27
//===============================================
typedef struct _bit_struct
 {unsigned int bit0:1; unsigned int bit1:1; unsigned int bit2:1; unsigned int bit3:1;
 unsigned int bit4:1; unsigned int bit5:1; unsigned int bit6:1; unsigned int bit7:1;
 unsigned int bit8:1; unsigned int bit9:1; unsigned int bit10:1; unsigned int bit11:1;
 unsigned int bit12:1; unsigned int bit13:1; unsigned int bit14:1; unsigned int bit15:1;
}bit_field;
 
 #define B_P_IOA_Data		0x7000
 #define B_P_IOA_Dir		0x7002
 #define B_P_IOA_Attrib		0x7003
 #define B_P_IOB_Data		0x7005
 #define B_P_IOB_Dir		0x7007
 #define B_P_IOB_Attrib		0x7008
 //数据口
 //IOA.bit//
 #define IOA0_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit0
 #define IOA1_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit1
 #define IOA2_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit2
 #define IOA3_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit3
 #define IOA4_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit4
 #define IOA5_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit5
 #define IOA6_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit6
 #define IOA7_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit7
 #define IOA8_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit8
 #define IOA9_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit9
 #define IOA10_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit10
 #define IOA11_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit11
 #define IOA12_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit12
 #define IOA13_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit13
 #define IOA14_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit14
 #define IOA15_Data		(*(volatile bit_field *)(B_P_IOA_Data)).bit15
 //IOB.bit//
 #define IOB0_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit0
 #define IOB1_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit1
 #define IOB2_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit2
 #define IOB3_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit3
 #define IOB4_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit4
 #define IOB5_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit5
 #define IOB6_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit6
 #define IOB7_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit7
 #define IOB8_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit8
 #define IOB9_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit9
 #define IOB10_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit10
 #define IOB11_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit11
 #define IOB12_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit12
 #define IOB13_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit13
 #define IOB14_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit14
 #define IOB15_Data		(*(volatile bit_field *)(B_P_IOB_Data)).bit15

//方向口//
 #define IOA0_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit0
 #define IOA1_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit1
 #define IOA2_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit2
 #define IOA3_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit3
 #define IOA4_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit4
 #define IOA5_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit5
 #define IOA6_Dir		(*(volatile bit_field *)(B_P_IOA_Data)).bit6
 #define IOA7_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit7
 #define IOA8_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit8
 #define IOA9_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit9
 #define IOA10_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit10
 #define IOA11_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit11
 #define IOA12_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit12
 #define IOA13_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit13
 #define IOA14_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit14
 #define IOA15_Dir		(*(volatile bit_field *)(B_P_IOA_Dir)).bit15
 //IOB.bit//
 #define IOB0_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit0
 #define IOB1_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit1
 #define IOB2_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit2
 #define IOB3_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit3
 #define IOB4_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit4
 #define IOB5_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit5
 #define IOB6_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit6
 #define IOB7_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit7
 #define IOB8_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit8
 #define IOB9_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit9
 #define IOB10_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit10
 #define IOB11_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit11
 #define IOB12_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit12
 #define IOB13_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit13
 #define IOB14_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit14
 #define IOB15_Dir		(*(volatile bit_field *)(B_P_IOB_Dir)).bit15
 //属性口//
 #define IOA0_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit0
 #define IOA1_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit1
 #define IOA2_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit2
 #define IOA3_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit3
 #define IOA4_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit4
 #define IOA5_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit5
 #define IOA6_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit6
 #define IOA7_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit7
 #define IOA8_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit8
 #define IOA9_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit9
 #define IOA10_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit10
 #define IOA11_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit11
 #define IOA12_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit12
 #define IOA13_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit13
 #define IOA14_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit14
 #define IOA15_Attrib		(*(volatile bit_field *)(B_P_IOA_Attrib)).bit15
 //IOB.bit//
 #define IOB0_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit0
 #define IOB1_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit1
 #define IOB2_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit2
 #define IOB3_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit3
 #define IOB4_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit4
 #define IOB5_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit5
 #define IOB6_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit6
 #define IOB7_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit7
 #define IOB8_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit8
 #define IOB9_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit9
 #define IOB10_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit10
 #define IOB11_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit11
 #define IOB12_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit12
 #define IOB13_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit13
 #define IOB14_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit14
 #define IOB15_Attrib		(*(volatile bit_field *)(B_P_IOB_Attrib)).bit15

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -