📄 disp_control.c
字号:
status=0xcc; //待命状态
run_f=fault_f= auxa_f=sstop_f=st_stp_f=st_sart_f=turn_f =test_f=1;
ready_f=0;
stop_f=0;
temp_alarm_b=0; //温度报警
temp_trip_b=0;
}break;
case 0x1302://启动状态
{
time_count4=read_eeprom(0xfc90)+1;//记录起动次数
write_word(0xfc90,time_count4);//将起动次数 写入EEPROM
write_word(0xfc80,year);//将最后起动时间————年 写入EEPROM
write_word(0xfc82,month);//将最后起动时间————月 写入EEPROM
write_word(0xfc84,date);//将最后起动时间————日 写入EEPROM
write_word(0xfc86,hour);//将最后起动时间————小时 写入EEPROM
write_word(0xfc88,minute);//将最后起动时间————分钟 写入EEPROM
status=0xaa; //起动状态
ready_f=stop_f=fault_f=auxa_f=sstop_f=st_stp_f=st_sart_f=turn_f=test_f=1;
}break;
case 0x1303://运行状态
{
minute_run=minute;//开始时间
status=0xce; //运行状态
stop_f=fault_f= auxa_f=sstop_f=st_stp_f=st_sart_f=turn_f=test_f=1;
run_f=0;
}break;
case 0x1304:
{
status=0xbb; //软停状态
run_f=fault_f= auxa_f=st_stp_f=st_sart_f=turn_f=test_f=1;
stop_f=0;
}break;
//------------------------------------- ------------------------
//接收READY——LED指令
//--------------------------------------------------------------
case 0xff0e:
{
ready_led=0;
ready_f=0;
}break;
case 0xff0f:
{
ready_led=1;
ready_f=1;
}break;
//-----------------------------------------------------------------
//接收错误跳闸信息
//-----------------------------------------------------------------
case 0xee01:
{
trip_record(30);//记录跳闸次数,以及跳闸标志
pic_number153(); //进入可控硅击穿错误状态
}break;
case 0xee04:
{
trip_record(31);//记录跳闸次数,以及跳闸标志
pic_number151(); //进入丢脉冲错误状态
}break;
case 0xee06:
{
trip_record(32);//记录跳闸次数,以及跳闸标志
pic_number154(); //起动超时
}break;
case 0xee07:
{
trip_record(33);//记录跳闸次数,以及跳闸标志
pic_number152(); //进入丢同步错误状态
}break;
case 0xee10:
{
trip_record(34);//记录跳闸次数,以及跳闸标志
pic_number155(); //主接触器没有吸合
}break;
case 0xee11:
{
trip_record(35);//记录跳闸次数,以及跳闸标志
pic_number156(); //旁接触器没有吸合
}break;
case 0xee12:
{
trip_record(36);//记录跳闸次数,以及跳闸标志
pic_number157(); //旁接触器没有打开
}break;
case 0xee13:
{
trip_record(37);//记录跳闸次数,以及跳闸标志
pic_number158(); //相序错误
}break;
case 0xee14:
{
trip_record(38);//记录跳闸次数,以及跳闸标志
pic_number159(); //主接触器吸合
}break;
case 0xee15:
{
trip_record(39);//记录跳闸次数,以及跳闸标志
pic_number160(); //接地开关器吸合
}break;
case 0xee16:
{
trip_record(40);//记录跳闸次数,以及跳闸标志
pic_number161(); //负载开关器吸合
}break;
case 0xee17:
{
trip_record(41);//记录跳闸次数,以及跳闸标志
pic_number162(); //缺相报警
}break;
case 0xee18:
{
trip_record(42);//记录跳闸次数,以及跳闸标志
pic_number163(); //blocking start报警
}break;
case 0xee19:
{
trip_record(43);//记录跳闸次数,以及跳闸标志
pic_number164(); //external_fault报警
}break;
case 0xee20:
{
trip_record(44);//记录跳闸次数,以及跳闸标志
pic_number165(); //remote_emerg报警
}break;
//-----------------------------------------
//保护报警接收 只显示报警画面不跳闸
//-----------------------------------------
case 0xee30://第36画面报警 //Over_Current报警
{
alarm_record(36);//Over_Current报警标志
alarm_flag_son(36);
pic_number400();
}break;
case 0xee32://第38画面报警 //Under_Current报警
{
alarm_record(38);
alarm_flag_son(38);
pic_number400();
}break;
case 0xee33://第39画面报警 //Unsym _Current报警
{
alarm_record(39);
alarm_flag_son(39);
pic_number400();
}break;
case 0xee35://第41画面报警 //Under_Voltage报警
{
alarm_record(41);
alarm_flag_son(41);
pic_number400();
}break;
case 0xee36://第42画面报警 //Over_Voltage报警
{
alarm_record(42);
alarm_flag_son(42);
pic_number400();
}break;
case 0xee37://第43画面报警 //Power_Factor报警
{
alarm_record(43);
alarm_flag_son(43);
pic_number400();
}break;
case 0xee40://第46画面报警 //Steep_Load报警
{
alarm_record(46);
alarm_flag_son(46);
pic_number400();
}break;
case 0xee0f: //当报警取消时,清除标志,回到主画面一
{
switch( InData2[0])
{
case 0xee30:
{
clear_alram();
}break;
case 0xee32:
{
clear_alram();
}break;
case 0xee33:
{
clear_alram();
}break;
case 0xee34:
{
clear_alram();
}break;
case 0xee35:
{
clear_alram();
}break;
case 0xee36:
{
clear_alram();
}break;
case 0xee37:
{
clear_alram();
}break;
case 0xee40:
{
clear_alram();
}break;
default:alarm_info=alarm_info_1=0;
}
alarm_info=0;//
}break;
//--------------------------------------------------------------------
//跳闸报警,显示报警画面并跳闸
//--------------------------------------------------------------------
case 0xee50:
{
trip_record(1);//记录跳闸次数,以及跳闸标志
pic_number301(); //over_current
}break;
case 0xee51:
{
trip_record(2);//记录跳闸次数,以及跳闸标志
pic_number302();//short_circuit
}break;
case 0xee52:
{
trip_record(3);//记录跳闸次数,以及跳闸标志
pic_number303();//Under_Current
}break;
case 0xee53:
{
trip_record(4);//记录跳闸次数,以及跳闸标志
pic_number304();//Unsym_Current
}break;
case 0xee55:
{
trip_record(5);//记录跳闸次数,以及跳闸标志
pic_number306();//Under_Voltage
}break;
case 0xee56:
{
trip_record(6);//记录跳闸次数,以及跳闸标志
pic_number313(); //rotor blocking
}break;
case 0xee57:
{
trip_record(7);//记录跳闸次数,以及跳闸标志
pic_number308();//Power_Fator
}break;
case 0xee60:
{
trip_record(8);//记录跳闸次数,以及跳闸标志
pic_number311();//Steep_Load
}break;
case 0xee63:
{
trip_record(9);//记录跳闸次数,以及跳闸标志
pic_number314();//Comm_Error
}break;
case 0xff01: //
{
reset_require=0xce;
}break;
default:;
}
}
//----------------------------------------------------
//CAN接收中断1
//----------------------------------------------------
if(C2INTFbits.RX1IF)
{
C2INTFbits.RX1IF = 0;
if(C2RX1CONbits.RXFUL)
{
page1 = C2RX1B1;
InData2[0] = C2RX1B2;
InData2[1] = C2RX1B3;
InData2[2] = C2RX1B4;
C2RX1CONbits.RXFUL=0;
switch (page1)
{
//----------------------------------------------------------------------//
//接收温度数据程序
//---------------------------------------------------------------------//
case 0x131a://1~3路温度
{
Temp_c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -