📄 check.c
字号:
#include <iom128v.h>
#include <control.h>
#include <String.h>
#include <lcd.h>
#include <macros.h>
extern unsigned char sys_init;
extern unsigned char send_data[100];
extern unsigned char menu_password[6];
extern unsigned char power_password[6];
extern unsigned char serv_trl, ask_server_timer, sever_restore, server_start;
extern unsigned char password_ok;
extern unsigned char time_15s, T_15s;
extern unsigned char disp_status;
extern unsigned char to_power_off;
extern unsigned char memu_operation;
extern unsigned char T_5s, time_5s;
extern unsigned char spk_on, bCurserOn;
extern unsigned char ucCurserPosition;
extern unsigned char ucMenuLayer, ucMenuPosition;
extern unsigned char power_on, restart, power_off;
extern unsigned char rst_power_off;
extern unsigned char reset, rst_flg;
extern unsigned char key_in;
extern unsigned char time_1val, time_3mval, LCD_UNDER_LINE_FLAG;
extern unsigned char T_20s, T_2s, time_20sval;
extern unsigned char over_time, T_30s;
extern unsigned char center_frequency;
extern unsigned int iSmbRat;
extern unsigned char qammode;
extern unsigned char have_connect;
extern unsigned char net_serv_conv;
extern unsigned char net_serv_conv_len;
extern unsigned char qam_num[8];
extern unsigned char qam_ch, center_frequency, qammode;
extern unsigned int iSmbRatSaved[8];
extern unsigned char have_check;
extern unsigned char power_on_flg;
extern unsigned char ucMenuQModSubPosition[8], ucMenuIFSubPosition[8];
//---------------------------------------------------------
// NAME: cofig_qam()
// ENTRY: void.
// RETURN: void.
// MODIFY: 2004.2.2
//--------------------------------------------------------
void cofig_qam(void)
{
center_frequency = 1;
iSmbRat = 6875;
qammode = 3;
}
//---------------------------------------------------------
// NAME: check_qam_status()
// ENTRY: void.
// RETURN: void.
// MODIFY: 2004.2.2
//--------------------------------------------------------
void check_qam_status(void)
{
unsigned char temp[1], i;
for(i = 1; i < 5; i++)
{
if(qam_num[i-1])
{
if(i2c_Read(&temp[0], 0x12, qam1, i) == FALSE)
{
SHOW_LOGO(61);
Disp_char_16_8(2, 29, i + 0x30, 0);
qammode = ucMenuQModSubPosition[i - 1];
center_frequency = ucMenuIFSubPosition[i - 1];
iSmbRat = iSmbRatSaved[i - 1];
spk_alarm();
broad_3033_init(qam1, i);
delayms(3000);
}
else
{
SHOW_LOGO(32);
Disp_char_16_8(2, 29, i + 0x30, 0);
delayms(3000);
}
}
}
for(i = 1; i < 5; i++)
{
if(qam_num[i + 3])
{
if(i2c_Read(&temp[0], 0x12, qam2, i) == FALSE)
{
SHOW_LOGO(61);
Disp_char_16_8(2, 29, i + 0x34, 0);
qammode = ucMenuQModSubPosition[i + 3];
center_frequency = ucMenuIFSubPosition[i + 3];
iSmbRat = iSmbRatSaved[i + 3];
spk_alarm();
broad_3033_init(qam2, i);
delayms(3000);
}
else
{
SHOW_LOGO(32);
Disp_char_16_8(2, 29,i + 0x34, 0);
delayms(3000);
}
}
}
}
//---------------------------------------------------------
// NAME: disp_on_time()
// ENTRY: void.
// RETURN: void.
// MODIFY: 2004.2.2
//--------------------------------------------------------
void disp_on_time(void)
{
if((!power_on) || (serv_trl))
return;
if(T_5s)
{
disp_status++;
if(disp_status > 5)
disp_status = 1;
T_5s = 0;
time_5s = 0;
}
switch(disp_status)
{
case 2:
disp_temperature();
break;
case 3:
voltage_disp(1);
break;
case 1:
SHOW_LOGO(28);
show_time();
break;
case 4:
voltage_disp(2);
break;
case 5:
check_qam_status();
break;
default:
break;
}
}
//---------------------------------------------------------
// NAME: exit_from_menu_operation()
// ENTRY: void.
// RETURN: void.
// MODIFY: 2004.2.2
//--------------------------------------------------------
void exit_from_menu_operation(void)
{
if(to_power_off)
return;
disp_on_time();
password_ok = 0;
ucMenuPosition = 2;
ucMenuLayer = 0;
over_time = 1;
time_15s = 0;
memu_operation = 0;
}
//---------------------------------------------------------
// NAME: sys_check()
// ENTRY: void.
// RETURN: void.
// MODIFY: 2004.2.2
//--------------------------------------------------------
void sys_check( void )
{
unsigned char i;
have_check=read_eeprom(0x0111);
for(i = 0; i < 4; i++)
qam_num[i] = 0;
SHOW_LOGO(60);
delayms(5000);
PORTE |= 0X40;
delayms(500);
PORTE &= ~0X40;
delayms(500);
//the first channel
for(i = 1; i < 5; i++)
{
if(ReadBCM3033Info(qam1, i) == TRUE)
{
SHOW_LOGO(32);
Disp_char_16_8(2, 29, i + 0x30, 0);
delayms(2000);
qam_num[i - 1] = 1;
qammode = ucMenuQModSubPosition[i - 1];
center_frequency = ucMenuIFSubPosition[i - 1];
iSmbRat = iSmbRatSaved[i - 1];
broad_3033_init(qam1, i);
}
}
//the second channel
for(i = 1; i < 5; i++)
{
if(ReadBCM3033Info(qam2, i) == TRUE)
{
SHOW_LOGO(32);
Disp_char_16_8(2, 29, i + 0x34, 0);
delayms(2000);
qam_num[i + 3] = 1;
qammode = ucMenuQModSubPosition[i + 3];
center_frequency = ucMenuIFSubPosition[i + 3];
iSmbRat = iSmbRatSaved[i + 3];
broad_3033_init(qam2, i);
}
}
//The temperature check
sensor_init(1);
sensor_init(2);
temp_check(1);
temp_check(1);
temp_check(1);
disp_temperature();
delayms(3000);
//the voltage check
voltage_check(1);
voltage_disp(1);
delayms(3000);
voltage_check(2);
voltage_disp(2);
delayms(3000);
write_eeprom(0x0111, 0x01);
}
//---------------------------------------------------------
// NAME: polling()
// ENTRY: void.
// RETURN: void.
// MODIFY: 2004.2.2
//--------------------------------------------------------
void polling( void )
{
unsigned char temp = 0;
com_server_receive();
ENABLE_XM();
W3100A_connect();
if(have_connect)
{
write_eeprom(0x0200, 0);
net_client_receive();
if(net_serv_conv)
{
delayms(10);
net_serv_conv = 0;
net_send_cmd(2, net_serv_conv_len);
}
}
else
{
if( read_eeprom(0x0200) == 0)
{
// start code
send_data[0] = 0x47;
send_data[1] = 0x55;
send_data[2] = 2;
send_data[3] = 0x20;
send_data[4] = 0xde;
// tell the server the net connection is open
com_server_transmit(5);
delayus(500);
W3100A_socket_init();
W3100A_connect();
write_eeprom(0x0200, 0x55);
}
}
DISABLE_XM();
if(serv_trl && (!rst_flg))
{
SHOW_LOGO(47);
spk_alarm();
}
if(/*(!sever_restore)&&*/reset && (!rst_flg))
{
//rst_pc(); //reset the main server
//rst_flg=1;
//reset=0;
}
if(rst_flg/*(!sever_restore)&&&&serv_trl*/)
SHOW_LOGO(48);
if(T_30s && power_on && sys_init)
{
T_30s = 0;
time_3mval = 0;
temp_check(1);
WDR();
voltage_check(1);
voltage_check(2);
}
}
//---------------------------------------------------------
// NAME: set_show()
// ENTRY: void.
// RETURN: void.
// MODIFY: 2004.2.2
//--------------------------------------------------------
void set_show( void )
{
key_scan();
switch (key_in)
{
case KEY_POWER:
OnKeyPower();
break;
case KEY_ENTER:
OnKeyEnter();
break;
case KEY_ESC:
OnKeyEsc();
break;
case KEY_PAGE:
OnKeyPage();
break;
case KEY_SHIFT:
OnKeyShift();
break;
default :
break;
}
}
//---------------------------------------------------------
// NAME: pass_sub()
// ENTRY: set,.
// RETURN: if return .
// MODIFY: 2004.2.2
//--------------------------------------------------------
unsigned char pass_sub(unsigned char set)
{
unsigned char mns, key, cod[6], sts, i, flg, set_flg;
if( password_ok )
return 1;
key = 0;
mns = 0;
sts = 0;
password_ok = 0;
set_flg = set;
flg = 0;
memu_operation = 1;
for(i = 0; i < 6; i++)
cod[i] = 0;
//display the password menu
SHOW_LOGO(15);
T_15s = 0;
time_15s = 0;
while((key != 1) && (ucMenuLayer == 0) && (!over_time))
{
/* titles num */
key = key_scan();
WDR();
if(key == KEY_ENTER )
{
for(i = 0; i < 6; i++)
{
if(set_flg == 1)
{
if(cod[i] != menu_password[i])
{
flg = 0;
break;
}
else flg = 1;
}
else if(set_flg == 2)
{
if(cod[i] != power_password[i])
{
flg = 0;
break;
}
else flg = 1;
}
}
if(flg)
{
//display the password ok menu
SHOW_LOGO(14);
password_ok = 1;
sts = 1;
WDR();
delayms(3000);
ucMenuPosition = 1;
//enter the set menu,QAM first
SHOW_LOGO(20);
ucMenuLayer = 0;
return 1;
}
else
{
//display the password error menu
SHOW_LOGO(40);
password_ok = 0;
sts = 0;
delayms(3000);
//systerm running normal
SHOW_LOGO(28);
ucMenuLayer = 0;
return 0;
}
}
else
{
if(key != 0)
{
if(key == KEY_ESC )
{
//systerm running normal
SHOW_LOGO(28);
memu_operation = 0;
time_15s = 0;
return 0;
}
if(mns < 6)
{
cod[mns] = key;
Disp_char_16_8(2, 43 + mns * 10, 0x2a, 0 );
mns++;
}
}
else if((key != 0) && (mns > 6))
{
//display the password error menu
SHOW_LOGO(40);
password_ok = 0;
sts = 0;
delayms(3000);
//systerm running normal
SHOW_LOGO(28);
return 0;
}
}
}
over_time = 0;
return (sts);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -