在单片机C语言中如何对变量的某一位进行操作或赋值?
头文件中有定义的就可以直接赋值。没定义的就要定义一个变量,再用变量等于位地址。再给变量赋值。
对啊 在头文件中定义的是全局变量
用sbit定义,或者用位与,位或 功能编写程序
有效的位操作.
给出的是16位单片机的实用带码!
struct control_flags {
unsigned TEMP_ERROR : 1;
unsigned PHASE_ERROR : 1;
unsigned TEMP_SIGNED : 1;
unsigned bits_13 : 1;
....
unsigned bits_0 : 1;
};
volatile struct control_flags control_flags;
.
.
.
.
.
.
if (t_average_value<0x3a6)
{
control_flags.TEMP_SIGNED=1;//
temp_t_value=0-tt_signed;
}
.
.
.
.
if(control_flags.TEMP_SIGNED)
{
.....
}
....
dddddddddddddd
学习