wash.i
来自「电表解决方案概要power_meter_r8c2g_source_code」· I 代码 · 共 4,049 行 · 第 1/3 页
I
4,049 行
extern void _WaitTime0us(void);
extern void _WaitTime1us(void);
extern void _WaitTime2us(void);
extern unsigned char base_4ms_buff;
extern unsigned char base_500ms_buff;
extern unsigned char base_1s_buff;
extern unsigned char base_1m_buff;
extern unsigned char base_1h_buff;
extern unsigned char sys_1s_buff;
extern unsigned char sys_10s_buff;
extern unsigned char sys_1m_buff;
extern unsigned char sys_1h_buff;
extern unsigned char lid_open_close_flag;
extern signed char status_5m_buff;
extern signed char save_water_4hour_buff;
extern signed char key2_2s_buff;
extern unsigned char water_set_change_flag;
extern unsigned char program_set_change_flag;
extern unsigned char key2_switch_flag;
extern unsigned char key_preset_flag;
extern unsigned char preset_confirm_flag;
extern unsigned char start_save_water_flag;
extern unsigned char save_water_once_flag;
extern unsigned char release_save_water_flag;
extern unsigned char run_save_water_flag;
extern unsigned char save_water_number;
extern unsigned char run_err_flag;
extern unsigned char old_key;
extern unsigned char program_buff;
extern unsigned char process_buff;
extern unsigned char function_buff;
extern unsigned char save_water_enable_flag;
extern unsigned char tube_dry_enable_flag;
extern unsigned char water_count;
extern unsigned char water_buff;
extern unsigned char select_tube_flag;
extern unsigned char select_fastest_flag;
extern unsigned char select_soak_flag;
extern unsigned char run_inlet_flag;
extern unsigned char run_soak_flag;
extern unsigned char run_wash_flag;
extern unsigned char run_rinse_flag;
extern unsigned char run_spin_flag;
extern unsigned char key_water_flag;
extern unsigned char program_auto_flag;
extern unsigned char weight_finish_flag;
extern unsigned char texture_finish_flag;
extern unsigned char weight_buff;
extern unsigned char texture_buff;
extern unsigned char water_level;
extern unsigned char water_flash_flag;
extern unsigned char program_flash_flag;
extern unsigned char preset_flash_flag;
extern unsigned char preset_1s5_buff;
extern signed char preset_500ms_buff;
extern unsigned char preset_3s_buff;
extern signed char key3_1s5_buff;
extern signed char preset_5s_buff;
extern unsigned char operation_buff;
extern signed char operation_counter;
extern unsigned char pass_time_counter;
extern unsigned char table_rom_number;
extern unsigned char dependant_wash_time;
extern unsigned char water_full_flag;
extern unsigned char softener_flag;
extern unsigned char drain_empty_flag;
extern unsigned char unbalance_flag;
extern unsigned char t3_key_flag;
extern unsigned char test3_flag;
extern unsigned char t5_3key_flag;
extern unsigned char test5_flag;
extern unsigned char t5_2key_flag;
extern unsigned char t4_3key_flag;
extern unsigned char test4_flag;
extern unsigned char t4_2key_flag;
extern unsigned char t2_3key_flag;
extern unsigned char test2_flag;
extern unsigned char t2_2key_flag;
extern unsigned char test2_spin_flag;
extern unsigned char t1_3key_flag;
extern unsigned char test1_flag;
extern unsigned char test_1_mode;
extern unsigned char test_1_start_flag;
extern unsigned char t1_2key_flag;
extern unsigned char test_buff;
extern unsigned char t_mode_switch_flag;
extern unsigned char test_inlet_flag;
extern unsigned char test_softner_flag;
extern unsigned char default_flag;
extern signed char run_1s_buff;
extern unsigned char test_start_flag;
extern unsigned char t1_switch_3s_buff;
extern unsigned char test_1_3s_buff;
extern unsigned char buzz_buff;
extern unsigned char t1_end_3s_buff;
extern unsigned char t1_finish_flag;
extern unsigned char pro_flash_flag;
extern unsigned char stream_run;
extern unsigned char stream_stop;
extern unsigned char finish;
extern unsigned char key_release;
extern unsigned char test_2_3s_buff;
extern unsigned char test_2_7s_buff;
extern signed char check_2s_buff;
extern signed char kaiji_3s_buff;
extern unsigned char power_key_flag;
extern unsigned char run_water_key_flag;
extern signed char inlet_10s_buff;
extern signed int inlet_20m_buff;
extern signed char inlet_2m_buff;
extern unsigned char cycle_start_flag;
extern signed int drain_8m_buff;
extern signed char drain_2m_buff;
extern signed char drain_60s_buff;
extern signed char drain_10s_buff;
extern signed char drain_20s_buff;
extern unsigned char main_soak_time;
extern unsigned char main_wash_time;
extern unsigned char soak_flash_flag;
extern unsigned char wash_flash_flag;
extern unsigned char rinse_flash_flag;
extern unsigned char spin_flash_flag;
extern signed char soak_1m_buff;
extern signed char soak_2m_buff;
extern unsigned char soak_3m_buff;
extern unsigned char soak_4m_buff;
extern signed int soak_9m_buff;
extern unsigned char soak_1_cycle_buff;
extern unsigned char soak_2_cycle_buff;
extern unsigned char soak_3_cycle_buff;
extern unsigned int run_stream_time;
extern unsigned char balance_time_buff;
extern unsigned char wash_start_flag;
extern unsigned char wash_finish_flag;
extern unsigned char interm_spin_10s_buff;
extern unsigned char interm_spin_5s_buff;
extern unsigned char interm_spin_4s_buff;
extern unsigned char interm_spin_3s_buff;
extern unsigned char spin_balance_time_buff;
extern signed char inertial_30s_buff;
extern signed char break_5s_buff;
extern unsigned char output_buff;
extern unsigned char save_output_buff;
extern unsigned char machine_type;
extern unsigned char err_buff;
extern signed int process_left_time;
extern unsigned char total_run_time;
extern unsigned char total_left_time;
extern unsigned char water_level_buff;
extern unsigned char status_buff;
extern unsigned char lid_open;
extern unsigned char manual_process_buff;
extern unsigned char ac_frequency;
extern unsigned char stream_table_row;
extern unsigned char ext_stream_table_row;
extern unsigned char main_stream_time;
extern unsigned char ext_stream_time;
extern unsigned char mot_cycle_buff;
extern unsigned char stream_buff;
extern signed char stream_100ms_buff;
extern signed char base_100ms_buff;
extern unsigned char stream_start_flag;
extern unsigned char stream_stop_flag;
extern unsigned char pro_default_flag;
extern unsigned char program_left_time;
extern unsigned char key_buzz_flag;
extern unsigned char buzz_flag;
extern signed char buzz_24ms_buff;
extern signed char buzz_15m_buff;
extern signed char buzz_switch_flag;
extern signed char buzz_500ms_buff;
extern signed char buzz_time;
extern union byte_def_1 {
volatile unsigned char byte;
struct{
unsigned char b0:1;
unsigned char b1:1;
unsigned char b2:1;
unsigned char b3:1;
unsigned char b4:1;
unsigned char b5:1;
unsigned char b6:1;
unsigned char b7:1;
}bi;
};
extern struct{
union byte_def_1 led_0;
union byte_def_1 led_1;
union byte_def_1 led_2;
union byte_def_1 led_3;
union byte_def_1 led_4;
}led_disp;
extern struct{
union byte_def_1 key_flag;
union byte_def_1 flash;
union byte_def_1 flag_2;
union byte_def_1 flag_3;
union byte_def_1 flag_4;
}flag;
extern struct struct_table{
unsigned int run;
unsigned int stop;
};
extern const struct struct_table Stream_Table_A[18][3];
extern const struct struct_table Stream_Table_B[12][3];
extern const struct struct_table Stream_Table_Ext_A[4][2];
extern const struct struct_table Stream_Table_Ext_B[4][2];
extern const struct struct_table Stream_Table_TEST[3][2];
extern const struct struct_table Balance_Stream_A[2];
extern const struct struct_table Speedy_Stream_A[4];
extern const struct struct_table Fastest_Stream_A[2];
extern const unsigned char Standard_Time_Table[21];
extern const unsigned char Memo_Time_Table[25];
extern const unsigned char Strong_Time_Table[23];
extern const unsigned char Silk_Time_Table[21];
extern const unsigned char Soft_Time_Table[33];
extern const unsigned char Child_Time_Table[33];
extern const unsigned char Wool_Time_Table[25];
extern const unsigned char Speedy_Time_Table[14];
extern const unsigned char Fastest_Time_Table[16];
extern const unsigned char TubeDry_Time_Table[7];
extern const unsigned char Single_Wash_Time_Table[];
extern const unsigned char Rinse_Time_Table[];
extern const unsigned char Single_Spin_Time_Table[];
extern const unsigned char Woven_Time_Table[33];
extern const unsigned char Maotan_Time_Table[33];
extern const unsigned char Memo_Soak_Time_Table[3][3];
extern const unsigned char Memo_Wash_Time_Table[3][3];
extern const unsigned char Standard_Soak_Time_Table[3][3];
extern const unsigned char Standard_Wash_Time_Table[3][3];
extern const unsigned char Strong_Soak_Time_Table[3];
extern const unsigned char Strong_Wash_Time_Table[3];
extern const unsigned char Soft_Soak_Time;
extern const unsigned char Soft_Wash_Time;
extern const unsigned char Child_Soak_Time;
extern const unsigned char Child_Wash_Time;
extern const unsigned char Wool_Soak_Time;
extern const unsigned char Wool_Wash_Time;
extern const unsigned char Silk_Wash_Time;
extern const unsigned char Speedy_Wash_Time;
extern const unsigned char seg_led_table[];
extern const unsigned char OPT_Table[];
extern const unsigned char Left_time_Colum_Table[];
#line 4 "D:/Projects/Haier/General Washer/workspace/General_Washer/General_Washer/src/wash.c"
#line 1 "D:/Projects/Haier/General Washer/workspace/General_Washer/General_Washer/src/disp_definel.h"
extern void cpu_init(void);
extern void sfr_ref(void);
extern void sfr_init(void);
extern void ram_init(void);
extern void disp_key_power(void);
extern void disp_key_start(void);
extern void disp_key_setup(void);
extern void disp_key_confirm(void);
extern void disp_key_function(void);
extern void disp_key_program(void);
extern void disp_key_water(void);
extern void key_scan(void);
extern void key_judge(void);
extern void menu_display(void);
extern void display_status_judge (void);
extern void process_flash(unsigned char, signed char, signed char, unsigned char, unsigned char, unsigned char);
extern void lcd_flash(unsigned char, unsigned char, unsigned char, unsigned char *, unsigned char *);
extern void menu_page_shift(unsigned char, unsigned char, unsigned char);
extern union lcd_byte_def{
unsigned char lcd_byte;
struct{
unsigned char lb0:1;
unsigned char lb1:1;
unsigned char lb2:1;
unsigned char lb3:1;
unsigned char lb4:1;
unsigned char lb5:1;
unsigned char lb6:1;
unsigned char lb7:1;
}lcd_bit;
};
extern union lcd_byte_def Lcd_Byte_0;
extern union lcd_byte_def Lcd_Byte_1;
extern union lcd_byte_def Lcd_Byte_2;
extern signed char epprom_4ms_buff;
extern unsigned char key_4ms_buff;
extern unsigned char Tflash;
extern unsigned char Pflash;
extern signed char scan_buff;
extern unsigned char scan_count;
extern unsigned char flash_flag;
extern unsigned char flash_switch_flag;
extern unsigned char Pflash_switch_flag;
extern unsigned char run_page3_flag;
extern signed char confirm_num;
extern signed char set_num;
extern signed char set_num_lev_0;
extern signed char set_num_lev_1;
extern signed char set_num_lev_2;
extern signed char set_num_lev_3;
extern unsigned char menu_level_buff;
extern unsigned char menu_level_3_back_flag;
extern unsigned char menu_buff_0;
extern unsigned char menu_buff_1;
extern unsigned char menu_buff_2;
extern unsigned char menu_buff_3;
extern unsigned char menu_buff_4;
extern unsigned char menu_buff_5;
extern unsigned char menu_buff_6;
extern unsigned char menu_0_flag;
extern unsigned char function_set_flag;
extern unsigned char program_set_flag;
extern unsigned char water_set_flag;
extern unsigned char power_flag;
extern unsigned char key_press_flag;
extern unsigned char first_water_flag;
extern unsigned char first_soak_flag;
extern unsigned char first_wash_flag;
extern unsigned char first_rinse_flag;
extern unsigned char first_spin_flag;
extern unsigned char first_save_water_flag;
extern unsigned char first_wind_dry_flag;
extern unsigned char first_preset_flag;
extern unsigned char first_function_flag;
extern unsigned char confirm_water_flag;
extern unsigned char confirm_soak_flag;
extern unsigned char confirm_wash_flag;
extern unsigned char confirm_rinse_flag;
extern unsigned char confirm_spin_flag;
extern unsigned char confirm_save_water_flag;
extern unsigned char confirm_wind_dry_flag;
extern unsigned char confirm_preset_flag;
extern unsigned char confirm_function_flag;
extern unsigned char once_set_water_flag;
extern unsigned char once_set_soak_flag;
extern unsigned char once_set_wash_flag;
extern unsigned char once_set_rinse_flag;
extern unsigned char once_set_spin_flag;
extern unsigned char once_set_save_water_flag;
extern unsigned char once_set_wind_dry_flag;
extern unsigned char once_set_preset_flag;
extern unsigned char once_set_function_flag;
extern unsigned char num_overflow_flag;
extern unsigned char key_debunce_0;
extern unsigned char key_debunce_1;
extern unsigned char key_buff_0;
extern unsigned char key_buff_1;
extern unsigned int key_buff_2;
extern unsigned char key_buff_3;
extern unsigned char key_buff_4;
extern unsigned int save_key_1;
extern unsigned char save_key_2;
extern unsigned char left_time_buff;
extern unsigned char save_program_buff;
extern unsigned char rinse_three_time_flag;
extern unsigned char rinse_one_time_flag;
extern unsigned char program_buff_0;
extern unsigned char water_level_buff_0;
extern unsigned char soak_time_buff_0;
extern unsigned char wash_time_buff_0;
extern unsigned char rinse_time_buff_0;
extern unsigned char spin_time_buff_0;
extern unsigned char save_water_num_buff_0;
extern unsigned char winddry_time_buff_0;
extern unsigned char preset_time_buff_0;
extern unsigned char function_set_buff_0;
extern unsigned char soak_time_buff;
extern unsigned char wash_time_buff;
extern unsigned char rinse_time_buff;
extern unsigned char spin_time_buff;
extern unsigned char save_water_num_buff;
extern unsigned char winddry_time_buff;
extern unsigned char preset_time_buff;
extern unsigned char function_set_buff;
extern unsigned char program_start_flag;
extern unsigned char program_pause_flag;
extern unsigned char preset_set_flag;
#line 5 "D:/Projects/Haier/General Washer/workspace/General_Washer/General_Washer/src/wash.c"
unsigned char * clear_ram(void);
void key_led(void)
{
;
}
void init(void)
{
;
}
void wash_init(void)
{
function_set_flag = 0;
program_set_flag = 0;
water_set_flag = 0;
power_flag = 0;
first_water_flag = 1;
first_soak_flag = 1;
first_wash_flag = 1;
first_rinse_flag = 1;
first_spin_flag = 1;
first_save_water_flag = 1;
first_wind_dry_flag = 1;
first_preset_flag = 1;
confirm_water_flag = 0;
confirm_soak_flag = 0;
confirm_wash_flag = 0;
confirm_rinse_flag = 0;
confirm_spin_flag = 0;
confirm_save_water_flag = 0;
confirm_wind_dry_flag = 0;
confirm_preset_flag = 0;
once_set_water_flag = 1;
once_set_soak_flag = 0;
once_set_wash_flag = 1;
once_set_rinse_flag = 1;
once_set_spin_flag = 1;
once_set_save_water_flag = 0;
once_set_wind_dry_flag = 0;
once_set_preset_flag = 1;
num_overflow_flag = 0;
key_debunce_0 = 0;
key_debunce_1 = 0;
left_time_buff = 0;
program_buff_0 = 0;
water_level_buff_0 = 6;
soak_time_buff_0 = 0;
wash_time_buff_0 = 12;
rinse_time_buff_0 = 1;
spin_time_buff_0 = 6;
save_water_num_buff_0 = 0;
winddry_time_buff_0 = 0;
preset_time_buff_0 = 2;
function_set_buff_0 = 0;
program_buff = 0;
water_level_buff = 6;
soak_time_buff = 0;
wash_time_buff = 12;
rinse_time_buff = 1;
spin_time_buff = 6;
save_water_num_buff = 0;
winddry_time_buff = 0;
preset_time_buff = 2;
function_set_buff = 0;
process_buff = 0x00 ;
function_buff = 0;
water_count = 6;
water_buff = 0;
save_program_buff = 0;
preset_set_flag = 0;
rinse_three_time_flag = 0;
buzz_buff = 0;
default_flag = 1;
sys_1s_buff = 0;
sys_10s_buff = 0;
sys_1m_buff = 0;
sys_1h_buff = 0;
run_1s_buff = 0;
status_5m_buff = 5;
preset_3s_buff = 3;
key_preset_flag = 0;
preset_confirm_flag = 0;
preset_5s_buff = 0;
preset_1s5_buff = 0;
preset_500ms_buff = 0;
key3_1s5_buff = 0;
old_key = 0;
operation_buff = 0;
operation_counter = 0;
pass_time_counter = 0;
table_rom_number = 0;
dependant_wash_time = 0;
softener_flag = 0;
select_tube_flag = 0;
select_fastest_flag = 0;
select_soak_flag = 0;
run_inlet_flag = 0;
run_soak_flag = 0;
run_wash_flag = 0;
run_rinse_flag = 0;
run_spin_flag = 0;
output_buff = 0;
save_output_buff = 0;
key_water_flag = 0;
water_set_change_flag = 0;
program_auto_flag = 0;
program_set_change_flag = 0;
weight_finish_flag = 0;
texture_finish_flag = 0;
weight_buff = 0x02 ;
texture_buff = 0x01 ;
water_level = 0x01 ;
water_flash_flag = 0;
program_flash_flag = 0;
preset_flash_flag = 0;
key2_2s_buff = 0;
key2_switch_flag = 0;
t3_key_flag = 0;
test3_flag = 0;
t5_3key_flag = 0;
test5_flag = 0;
t5_2key_flag = 0;
t4_3key_flag = 0;
test4_flag = 0;
t4_2key_flag = 0;
t2_3key_flag = 0;
test2_flag = 0;
t2_2key_flag = 0;
test2_spin_flag = 0;
t1_3key_flag = 0;
test1_flag = 0;
t1_2key_flag = 0;
test_1_mode = 0;
test_1_start_flag = 0;
test_buff = 0;
t_mode_switch_flag = 0;
test_inlet_flag = 0;
test_softner_flag = 0;
test_start_flag = 0;
t1_switch_3s_buff = 0;
test_1_3s_buff = 0;
t1_end_3s_buff = 0;
t1_finish_flag = 0;
test_2_3s_buff = 0;
test_2_7s_buff = 0;
kaiji_3s_buff = 0;
power_key_flag = 0;
finish = 0;
key_release = 1;
pro_flash_flag = 0;
status_buff = 0x00 ;
flag.key_flag.byte = 0x00;
flag.key_flag.bi.b0 = 1;
water_full_flag = 0;
water_level_buff = 6;
inlet_20m_buff = 1200;
inlet_10s_buff = 10;
inlet_2m_buff = 120;
cycle_start_flag = 0;
drain_8m_buff = 480;
drain_2m_buff = 120;
drain_60s_buff = 60;
drain_10s_buff = 10;
drain_20s_buff = 20;
soak_1m_buff = 60;
soak_2m_buff = 120;
soak_3m_buff = 180;
soak_4m_buff = 240;
soak_9m_buff = 540;
soak_1_cycle_buff = 0;
soak_2_cycle_buff = 0;
soak_3_cycle_buff = 0;
interm_spin_10s_buff = 10;
interm_spin_5s_buff = 5;
interm_spin_4s_buff = 4;
interm_spin_3s_buff = 3;
run_stream_time = 0;
balance_time_buff = 0;
main_soak_time = 20;
main_wash_time = 12;
soak_flash_flag = 0;
wash_flash_flag = 0;
rinse_flash_flag = 0;
spin_flash_flag = 0;
wash_start_flag = 0;
wash_finish_flag = 0;
stream_start_flag = 0;
stream_stop_flag = 0;
stream_buff = 0x80 ;
mot_cycle_buff &= 0x00 ;
output_buff &= (~0x01 );
output_buff &= (~0x10 );
machine_type = 0x00 ;
ac_frequency = 50;
stream_table_row = 0;
ext_stream_table_row = 0;
main_stream_time = 170;
ext_stream_time = 10;
spin_balance_time_buff = 0;
lid_open = 0;
err_buff = 0;
run_err_flag = 0;
process_left_time = 0;
total_run_time = 0;
total_left_time = 0;
manual_process_buff = 0;
program_left_time = 0;
drain_empty_flag = 0;
unbalance_flag = 0;
inertial_30s_buff = 30;
break_5s_buff = 5;
pro_default_flag = 1;
key_buzz_flag = 0;
buzz_24ms_buff = 0;
buzz_500ms_buff = 5;
confirm_num = 0;
rinse_three_time_flag = 0;
rinse_one_time_flag = 0;
release_save_water_flag = 0;
run_save_water_flag = 0;
check_2s_buff = 0;
save_water_once_flag = 0;
start_save_water_flag = 0;
save_water_4hour_buff = 0;
save_water_number = 0;
save_water_enable_flag = 0;
tube_dry_enable_flag = 0;
}
#pragma interrupt Timer_RB
void Timer_RB(void)
{
if (buzz_flag == 0)
return;
if (buzz_15m_buff == 0)
{
if (buzz_500ms_buff == 0)
{
if (buzz_switch_flag == 0)
{
buzz_500ms_buff = 1;
buzz_switch_flag = 1;
buzz_24ms_buff = 10;
buzz_time ++;
if (buzz_time == 20)
buzz_15m_buff = 15;
}
else if (buzz_switch_flag == 1)
{
buzz_500ms_buff = 1;
buzz_switch_flag = 0;
buzz_24ms_buff = 0;
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?