凌阳单片机 C 语言位操作方法
这是我在凌阳单片机大学计划论坛中找到的一个头文件,是关于位操作的,不同于平时用的与、或操作,
这种方法对于位操作很简单快捷,只需要将头文件加载到函数库中,然后在利用到位操作的文件中加
#Iinclude"XX.h"即可。XX 表示你定义的头文件名。很简单但很实用哦。和大家共享。其中定义的名字可
以自己修改哦。。
/**************************************************************************************/
//位操作,另外,可以对字节操作,每一个单元(单位为 16 位的字)可以分为高八位和低八位操作;
//使用方法:下面的硬件寄存器都定义为了 UNport 结构体型的指针变量,使用时只要:
//端口名->bit.bit0 就可以操作端口的第 0 位;
//端口名->byte.bytel 就可以操作端口的低八位;
//端口名->port 就可以操作整个端口;
//实际上,操作整个端口时可以用另外一个头文件"hardware.h",直接对*端口名操作就可以了;
/***************************************************************************************/
#define&&& Uint&&& unsigned int
typedef struct
{
&&& Uint bit0&&&& : 1;
&&& Uint bit1&&&& : 1;
&&& Uint bit2&&&& : 1;
&&& Uint bit3&&&& : 1;
&&& Uint bit4&&&& : 1;
&&& Uint bit5&&&& : 1;
&&& Uint bit6&&&& : 1;
&&& Uint bit7&&&& : 1;
&&& Uint bit8&&&& : 1;
&&& Uint bit9&&&& : 1;
&&& Uint bit10 : 1;
&&& Uint bit11 : 1;
&&& Uint bit12 : 1;
&&& Uint bit13 : 1;
&&& Uint bit14 : 1;
&&& Uint bit15 : 1;
}Bit;
typedef struct
{
&&& Uint bytel&&&& : 8;
&&& Uint byteh&&&& : 8;
}Byte;
&&&
typedef union
{
评论0