cap_pad[i].led_on的运动历程
只有两个点来改变他们的状态,是1或者是0。
void task_touch_scan(void *args)
{
change_led_lightness(); //turn off th
e sillicon turn on the sillicon 这是改变的LED灯吗????木
touch_scan(); //确定扫描按键,只是改变状态吗????谁来执行相关操作
}
void change_led_lightness(void)
{
int i;
for (i = 0; i < CAP_PAD_NUM; i++) //改变4个灯????木
{
if(cap_pad[i].led_on)//ledx_change_brightness里面有cap_pad[i].led_on的置0,如果为touch_scan里有置1和置0
{
ledx_change_brightness(i); //到底控制了什么????
}
}
}
代码的初始化
for(i=0; i<CAP_PAD_NUM; i++)
{
cap_pad[i].touch = 0;
cap_pad[i].led_on = 0;
cap_pad[i].bright_time = START_TIME;
}
void touch_scan(void)
{
int i;
/*扫描按键*/
if(scan_pad_task() != SCAN_TASK_OK)//按键值确定就会开始扫描 scan_pad_task这是个干嘛用的函数,就是按完按键就扫描
{
return;
}
for(i=0; i<CAP_PAD_NUM; i++)
{
if(0 == cap_pad[i].touch)//如果符合条件结束这一次小循环 下面有对cap_pad[i].touch的赋值,如果还没有用就直接跳过这次的按键扫描
{
continue;//在scan_pad_task里如果过触发了就赋值1
}
if(cap_pad[i].led_on) //cap_pad[i].led_on只是代表扫描完成
{
cap_pad[i].touch = 0;//触摸清零
continue;//如果扫描完成了,结束此次小循环,????如果灯开了为什么结束此次小循环
}
cap_pad[i].led_on = 1;//标志扫描
if ((i==3)&&(cap_pad[0].led_on||cap_pad[1].led_on||cap_pad[2].led_on)) //什么意思没有看懂????
{
cap_pad[3].led_on = 0;
return;
}
if (!is_tpm0_interrupt_enable())//is_tpm0_interrupt_enable这是一个什么中断????
{
enable_tpm0_interrupt();//什么意思????
}
if (device_bind_process==WAIT_FOR_TOUCH)//绑定状态的切换 按2、3按键进入网状态 怎么表现的2、3键
{
if (i==3) //检测到有新设备的时候,状态为WAIT_FOR_TOUCH,按了3键紧接着进入了WAIT_FOR_CONFIRM,进入WAIT_FOR_CONFIRM以后干吗用呢????
{
device_bind_process = WAIT_FOR_CONFIRM; //点击按键后 回复一次2
enter_vlps_xms(50);//进入第功率状态
return;
}
}
cap_pad[i].touch = 0;
if (i==3) //如果为3执行的是第3种情况
if (!(silicon_status & SILLICON_ALL_SET))
{
relay_status_on(i);//点亮i=3
return;
}
else
{
led_on_ctl|=(1<<i);//用来改变LED灯的转态
return;
}//谁来改变silicon_status
if (!(silicon_status & (1 << (SILLICON_CHANNAL_1 + i)))) //如果silicon_status为0,那么就可以执行if下面的函数 木 silicon_status 和后面与是怎么配合使用的
{
relay_status_on(i);//改变的是LED的灯,LED和继电器同时改变
}
else
{
led_on_ctl|=(1<<i);
}
if (1==i||2==i)//这的意义是不是 连续2键和3键后启动入网用的????
{
touch_seq_cnt++;
}
//ctrl_device_opt(logicch2phych[i]);
}
}
cap_pad[i].led_on的运动历程
void task_touch_scan(void *args)
{
change_led_lightness(); //turn off the sillicon turn on the sillicon 这是改变的LED灯吗????木
touch_scan(); //确定扫描按键,只是改变状态吗????谁来执行相关操作
}
void change_led_lightness(void)
{
int i;
for (i = 0; i < CAP_PAD_NUM; i++) //改变4个灯????木
{
if(cap_pad[i].led_on)//ledx_change_brightness里面有cap_pad[i].led_on的置0,如果为touch_scan里有置1和置0
{
ledx_change_brightness(i); //到底控制了什么????
}
}
}
代码的初始化
for(i=0; i<CAP_PAD_NUM; i++)
{
cap_pad[i].touch = 0;
cap_pad[i].led_on = 0;
cap_pad[i].bright_time = START_TIME;
}
void touch_scan(void)
{
int i;
/*扫描按键*/
if(scan_pad_task() != SCAN_TASK_OK)//按键值确定就会开始扫描 scan_pad_task这是个干嘛用的函数,就是按完按键就扫描
{
return;
}
for(i=0; i<CAP_PAD_NUM; i++)
{
if(0 == cap_pad[i].touch)//如果符合条件结束这一次小循环 下面有对cap_pad[i].touch的赋值,如果还没有用就直接跳过这次的按键扫描
{
continue;//在scan_pad_task里如果过触发了就赋值1
}
if(cap_pad[i].led_on) //cap_pad[i].led_on只是代表扫描完成
{
cap_pad[i].touch = 0;//触摸清零
continue;//如果扫描完成了,结束此次小循环,????如果灯开了为什么结束此次小循环
}
cap_pad[i].led_on = 1;//标志扫描
if ((i==3)&&(cap_pad[0].led_on||cap_pad[1].led_on||cap_pad[2].led_on)) //什么意思没有看懂????
{
cap_pad[3].led_on = 0;
return;
}
if (!is_tpm0_interrupt_enable())//is_tpm0_interrupt_enable这是一个什么中断????
{
enable_tpm0_interrupt();//什么意思????
}
if (device_bind_process==WAIT_FOR_TOUCH)//绑定状态的切换 按2、3按键进入网状态 怎么表现的2、3键
{
if (i==3) //检测到有新设备的时候,状态为WAIT_FOR_TOUCH,按了3键紧接着进入了WAIT_FOR_CONFIRM,进入WAIT_FOR_CONFIRM以后干吗用呢????
{
device_bind_process = WAIT_FOR_CONFIRM; //点击按键后 回复一次2
enter_vlps_xms(50);//进入第功率状态
return;
}
}
cap_pad[i].touch = 0;
if (i==3) //如果为3执行的是第3种情况
if (!(silicon_status & SILLICON_ALL_SET))
{
relay_status_on(i);//点亮i=3
return;
}
else
{
led_on_ctl|=(1<<i);//用来改变LED灯的转态
return;
}//谁来改变silicon_status
if (!(silicon_status & (1 << (SILLICON_CHANNAL_1 + i)))) //如果silicon_status为0,那么就可以执行if下面的函数 木 silicon_status 和后面与是怎么配合使用的
{
relay_status_on(i);//改变的是LED的灯,LED和继电器同时改变
}
else
{
led_on_ctl|=(1<<i);
}
if (1==i||2==i)//这的意义是不是 连续2键和3键后启动入网用的????
{
touch_seq_cnt++;
}
//ctrl_device_opt(logicch2phych[i]);
}
}