📄 youxian_task.c
字号:
#include "all.h"
/*
: 有线防区1, 有线防区2, 有线防区3, 有线防区4, (4bytes)
返回:300ms内报警器返回收到命令的应答
之后3秒内返回 设置失败 或 设置成功
有线防区1-4, 具备两种输入状态,常闭 或 常开
有线防区(1-4)对应的字节内容为1:对应的防区为常开防区
0:对应的防区为常闭防区
//当常开时,检测到0为有效
//现在是有线防区4 用作有线呼救,暂无有线防区4
*/
uchar You_i;
uchar You_j;
uchar You_k;
uchar P55;
uchar p55_sta=0;
//当常开时,检测到0为有效
//现在是有线防区4 用作有线呼救,暂无有线防区4
uchar Yx1_Cnt=0;
uchar Yx2_Cnt=0;
uchar Yx3_Cnt=0;
uchar Yx4_Cnt=0;
uchar Yx5_Cnt=0;
void YouXian_CK_task_ATAND (void) _task_ YouXian_CK_task {
while(1) {
os_wait2(K_TMO,4);
Dog_YouXian_CK_task_cnt=0; //看门狗计数器
P55=(P5&0x1f);
if( ( (P55) &0x01) !=Para_all_True.FangQu_is_1or0[0]) {
if(++ Yx1_Cnt>2) {
XinJingLei_Byte=1; //有线防区1
XinJingLei_Byte|=0X80;
}
}
else {
Yx1_Cnt=0;
}
if( ( (P55>>1) &0x01) !=Para_all_True.FangQu_is_1or0[1]) {
if(++ Yx2_Cnt>2) {
XinJingLei_Byte=2; //有线防区2
XinJingLei_Byte|=0X80;
}
}
else {
Yx2_Cnt=0;
}
if( ( (P55>>2) &0x01) !=Para_all_True.FangQu_is_1or0[2]) {
if(++ Yx3_Cnt>2) {
XinJingLei_Byte=3; //有线防区3
XinJingLei_Byte|=0X80;
}
}
else {
Yx3_Cnt=0;
}
if( ( (P55>>3) &0x01) !=Para_all_True.FangQu_is_1or0[3] ) {
if(++ Yx4_Cnt>2) {
XinJingLei_Byte=4; //有线防区4
XinJingLei_Byte|=0X80;
}
}
else {
Yx4_Cnt=0;
}
if( ( (P55>>4) &0x01) == 1 ) {
if(++ Yx5_Cnt>2) {
XinJingLei_Byte=6; //地震仪
// XinJingLei_Byte|=0X80;
}
}
else {
Yx5_Cnt=0;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -