新闻中心

EEPW首页>嵌入式系统>设计应用> 单片机C语言中标志位的经典应用

单片机C语言中标志位的经典应用

作者: 时间:2016-11-20 来源:网络 收藏
/*
本例程是C语言的位域操作示例这里为什么位域结构体与联合体一起使用?-->因为这样定义后,即可以单独使用标志位也可同时使用整个字节数据主要应用:单片机C语言好处:用标志位可以节省RAM空间 操作灵活 执行速度快*///====标志位应用 定义联合体实体====typedef union uFLG{uint8 Flg ; //定义整形数据struct FLAG{ //位域定义uint8 Flg1 : 1;uint8 Flg2 : 1;uint8 Flg3 : 1;uint8 Flg4 : 1;uint8 Flg5 : 1;uint8 Flg6 : 1;uint8 Flg7 : 1;uint8 Flg8 : 1;}tFlg; }uFlg;uFlg uF1,uF2; //定义联合体变量//-uF1-#define uFg1 uF1.Flg#define F_10MS uF1.tFlg.Flg1#define F_Fls1s uF1.tFlg.Flg2#define F_Fls uF1.tFlg.Flg3#define F_FlsQ uF1.tFlg.Flg4//-uF2-#define uFg2 uF2.Flg#define F_LED1 uF2.tFlg.Flg1#define F_LED2 uF2.tFlg.Flg2#define F_LED3 uF2.tFlg.Flg3//-应用实例void main(void){while(1){ //F_10MS 在中断里10MS置一次1while(!F_10MS); //主程序10MS执行一次 F_10MS = 0 ; Cmdkey() ;CmdDisplay() ;uFg2 = 0 ; //直接操作整个字节F_LED1 = 1 ; //独立操作字节中的一个位}}


评论


技术专区

关闭