⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main_define.c

📁 电表解决方案概要power_meter_r8c2g_source_code
💻 C
字号:

#include "disp_definel.h"


void wash_init(void);
void init(void);
void key(void);
void buzz(void);
void buzz_power(void);
void demo_judge(void);

void alarm(void);
void save_water(void);

void led(void);

void inertial(void);

void key_led(void);
//void key_logic(void);
void key_power(void);
void key_start(void);
void key_program(void);
void key_function(void);
void key_pro_fun(void);
void key_process(void);
void key_water(void);
void key_preset(void);
void key_preset_normal(void);
void key_preset_cont(void);

void logic(void);
void operation(void);
void status(void);
void inlet(unsigned char, unsigned char, unsigned char);
void soak(unsigned int);
void wash(unsigned int);
void drain(void);
void interm_spin(unsigned int);
void spin(unsigned int);
void run_stream(void);
void stream_moto(unsigned int, unsigned int);

void weight_test(void);
void texture_test(void);

void test_no_water(void);
void test_production(void);
void test_cycle(void);
void test_interm_spin(void);
void test_weight(void);
/*
void cotton_program(void);
void tubedry_program(void);
void fiber_program(void);
void standard_program(void);
void jeans_program(void);
void fastest_program(void);
void speedy_program(void);
void common_program(void);
*/
//--------------------------------------------------------------

void memo_program(void);		 
void strong_program(void);
void soft_wash_program(void);
void speedy_program(void);
void standard_program(void);	  
void child_program(void);
void wool_program(void);
void silk_program(void);
void single_wash_program(void);
void rinse_program(void);		 
void single_spin_program(void);
void tubedry_program(void);

//--------------------------------------------------------------

void	key_buzz(void);              
void	eoc_buzz(void);              
void	err_buzz(void);         
void	buzz_on(unsigned char);      
void	buzz_st(void);  

void    enable(void);                   
void    disable(void);    

//--------------------------------------------------------------

void input(void);
void output(void);

unsigned char program_time(unsigned char * table_adr, unsigned char table_colum);


  void	eeprom_read(void);
  void 	eeprom_write(void);
  
  void	i2c_write(unsigned char,unsigned char);
  void	i2c_send8bit(unsigned char);

  void	i2c_start(void);
  void	i2c_stop(void);
  
  unsigned char	i2c_ack(void);
  unsigned char	i2c_read(unsigned char);
  unsigned char	i2c_receive8bit(void);
  
  unsigned char dd;

/* ======================== led define ============================ */

 void _WaitTime0us(void);
 void _WaitTime1us(void);
 void _WaitTime2us(void);

/* ======================== led define ============================ */


  Byte_Flag 	operation_flag_1;
  Byte_Flag 	operation_flag_2;
  Byte_Flag 	operation_flag_3;
  Byte_Flag 	operation_flag_4;
  Byte_Flag 	operation_flag_5;
  
  Byte_Flag 	save_water_flag_1;
  Byte_Flag 	key_flag_2;
  
  
  Word_Flag 	process_flag_1;
  Word_Flag 	process_flag_2;


  Byte_Flag 	test1_flag_1;
  
  Byte_Flag 	test1_key_flag;
  Byte_Flag 	test2_key_flag;
  Byte_Flag 	test3_key_flag;
  Byte_Flag 	test4_key_flag;
  Byte_Flag 	test5_key_flag;  
  
  Byte_Flag 	buzz_flag_1;
  
  
//==========================================================================	

  unsigned char base_4ms_buff;
  unsigned char base_500ms_buff;
  unsigned char base_1s_buff;
  unsigned char base_1m_buff;
  unsigned char base_1h_buff;
  
  unsigned char sys_1s_buff;
  unsigned char sys_10s_buff;
  unsigned char sys_1m_buff;
  unsigned char sys_1h_buff;

  unsigned char status_buff;
  signed char status_5m_buff;
  signed char save_water_4hour_buff;
  
  signed char check_2s_buff;
  signed char kaiji_3s_buff;

  signed char key2_2s_buff;
  unsigned char save_water_number;
  unsigned char old_key;
  unsigned char program_buff;
  unsigned char process_buff;
  unsigned char function_buff;
  unsigned char water_count;
  unsigned char water_buff;
  
  unsigned char weight_buff;
  unsigned char texture_buff;
  unsigned char water_level;
  
  unsigned char preset_1s5_buff;
  signed char preset_500ms_buff;
  
  unsigned char preset_3s_buff;
  signed char key3_1s5_buff;
  signed char preset_5s_buff;
    
/* ======================== operation define ============================ */

  unsigned char operation_buff;
  signed char operation_counter;
  unsigned char pass_time_counter;
  unsigned char table_rom_number;
  unsigned char dependant_wash_time;

  unsigned char test_1_mode;
  unsigned char test_buff;

  signed char run_1s_buff;
  signed char t1_switch_3s_buff;
  unsigned char test_1_3s_buff;

  unsigned char buzz_buff;
  unsigned char TEST_1_BUZZ;
  unsigned char t1_end_3s_buff;

  unsigned char stream_run;
  unsigned char stream_stop;

  unsigned char finish;
  unsigned char key_release;
  unsigned char test_2_3s_buff;
  unsigned char test_2_7s_buff;

  signed char inlet_10s_buff;
  signed int inlet_20m_buff;
  signed char inlet_2m_buff;


  signed int drain_8m_buff;
  signed char drain_2m_buff;
  signed char drain_60s_buff;
  signed char drain_10s_buff;
  signed char drain_20s_buff;
  
  unsigned char main_soak_time;
  unsigned char main_wash_time;
  
  signed char soak_1m_buff;
  signed char soak_2m_buff;
  unsigned char soak_3m_buff;
  unsigned char soak_4m_buff;
  signed int soak_9m_buff;

  unsigned char soak_1_cycle_buff;
  unsigned char soak_2_cycle_buff;
  unsigned char soak_3_cycle_buff;
  
  unsigned int run_stream_time;
  unsigned char balance_time_buff;
  unsigned char wash_start_flag;
  unsigned char wash_finish_flag;

  unsigned char interm_spin_10s_buff;
  unsigned char interm_spin_5s_buff;
  unsigned char interm_spin_4s_buff;
  unsigned char interm_spin_3s_buff;

  signed char inertial_30s_buff;
  signed char break_5s_buff;
  
  unsigned char spin_balance_time_buff;

  unsigned char output_buff;
  unsigned char save_output_buff;
  unsigned char machine_type;
  unsigned char err_buff;

  signed int process_left_time;
  unsigned char total_run_time;
  unsigned char total_left_time;

  unsigned char water_level_buff;
  unsigned char lid_open;
  unsigned char save_lid_status;
  unsigned char manual_process_buff;
  
  unsigned char ac_frequency;
  signed char mesure_time_buff;
  unsigned char frequency_tmp;
  
  unsigned char stream_table_row;
  unsigned char ext_stream_table_row;
  
  unsigned char main_stream_time;
  unsigned char ext_stream_time;
  
  unsigned char mot_cycle_buff;
  unsigned char stream_buff;
  signed char stream_100ms_buff;
  signed char base_100ms_buff;
  
  unsigned char program_left_time;
  
  signed char buzz_24ms_buff;
  
  signed char buzz_15m_buff;

  signed char buzz_500ms_buff;
  signed char buzz_time;    
   
  unsigned char unbalance_count;


/* ======================== led define ============================ */

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;
};



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;

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;



struct struct_table{
	
	unsigned int run;
	unsigned int stop;
	
};


const struct struct_table Stream_Table_A[18][3] = {

600, 600, 800, 700, 1000, 700,		// memo
500, 600, 600, 700, 800,  800,

600, 600, 900, 800, 1100, 800,		// strong
500, 600, 800, 800, 900,  800,

500, 600, 700, 700, 900,  700,		// soft
400, 600, 600, 700, 800,  800,

  0,   0,   0,   0,   0,   0,		// speedy
  0,   0,   0,   0,   0,   0,

600, 600, 800, 700, 1000, 700,		// standard
500, 600, 600, 700, 800,  800,

500, 600, 700, 700, 900,  700,		// child
400, 600, 600, 700, 800,  800,

200, 600, 300, 600, 400, 600,		// wool
100, 600, 200, 600, 300, 600,

500, 600, 700, 700, 900,  700,		// silk
400, 600, 600, 700, 800,  800,

  0,   0,   0,   0,   0,   0,		// tubedry
  0,   0,   0,   0,   0,   0

};


const struct struct_table Stream_Table_B[12][3] = {

 800,  800, 1200, 800, 1600,  800,  
 600, 1000, 1000, 800, 1400,  800,   
1000, 1000, 1400, 800, 1800,  800,  
 800, 1000, 1200, 800, 1600,  800,   
1000,  800,    0,   0,    0,    0, 
 800, 1000,    0,   0,    0,    0,  
 800,  800, 1200, 800, 1400,  600,   
 600, 1000, 1000, 800, 1200,  800,   
 800,  800, 1200, 800, 1600,  800,   
1000, 1400,  800, 800,  800, 1000,  
 400,  800,  600, 800,  800,  800,    
 200,  800,  400, 800,  600,  800  

};

const struct struct_table Stream_Table_Ext_A[4][2] = {

1200,  500, 1400, 500, 
1000,  600, 1200, 600, 

1100,  500, 1300, 600, 
900,   600, 1100, 600

};

const struct struct_table Stream_Table_Ext_B[4][2];

const struct struct_table Stream_Table_TEST[3][2] = {

 800, 500, 600, 600,
1200, 500, 700, 600,
1000, 500,   0,   0

};

const struct struct_table Balance_Stream_A[2] = {200, 500, 200, 600};
const struct struct_table Speedy_Stream_A[4] = {300, 600, 1000, 1000, 1300, 600, 1000, 600};
const struct struct_table Fastest_Stream_A[2] = {300, 500, 1000, 1000};

/****************************************************************************************************/

//const unsigned char Common_Time_Table[1][27] = {

//120, 255, 255, 30, 120, 135, 35, 30, 35, 30, 35, 30, 35, 30, 120, 30, 90, 30, 5, 120, 180, 30, 120, 30, 5, 30, 5

//};

const unsigned char Standard_Time_Table[21] = {
	
120, 255, 255, 30, 120, 30, 15, 25, 15, 25, 15, 30, 5, 120, 120, 30,  120, 30, 3, 30, 5

};

const unsigned char Memo_Time_Table[25] = {

120, 255, 255, 30, 120, 30, 90, 30, 5, 120, 180, 30, 120, 30, 90, 30, 5, 120, 180, 30, 120, 30, 5, 30, 5

};

const unsigned char Strong_Time_Table[23] = {
	
120, 255, 255, 30, 120, 60, 60, 30, 5, 120, 240, 120, 60, 60, 30, 5, 120, 240, 120, 60, 4, 30, 5

};

const unsigned char Silk_Time_Table[21] = {
	
120, 255, 120, 60, 60, 30, 5, 120, 120, 120, 60, 60, 30, 5, 120, 120, 120, 60, 2, 30, 5

};

const unsigned char Soft_Time_Table[33] = {
	
120, 255, 255, 30, 120, 60, 60, 30, 5, 120, 180, 30, 120, 60, 60, 30, 5, 120, 180, 30, 120, 60, 60, 30, 5, 120, 180, 30, 120, 60, 3, 30, 5

};


const unsigned char Child_Time_Table[33] = {
	
120, 255, 255, 30, 120, 60, 60, 30, 5, 120, 180, 30, 120, 60, 60, 30, 5, 120, 180, 30, 120, 60, 60, 30, 5, 120, 180, 30, 120, 60, 3, 30, 5

};


const unsigned char Wool_Time_Table[25] = {
	
120, 255, 255, 30, 120, 60, 60, 30, 5, 120, 120, 30, 120, 60, 60, 30, 5, 120, 120, 30, 120, 60, 2, 30, 5

};


const unsigned char Single_Wash_Time_Table[3] = {120, 255, 30};

const unsigned char Rinse_Time_Table[8] = {120, 60, 60, 30, 5, 120, 180, 30};

const unsigned char Single_Spin_Time_Table[5] = {120, 60, 3, 30, 5};

const unsigned char Woven_Time_Table[33] = {};

const unsigned char Maotan_Time_Table[33] = {};


const unsigned char Speedy_Time_Table[14] = {120, 255, 120, 20, 30, 10, 5, 120, 60, 120, 20, 1, 30, 5};

const unsigned char Fastest_Time_Table[16] = {40, 40, 40, 90, 10, 20, 20, 35, 30, 35, 20, 5, 10, 1, 30, 5};

const unsigned char TubeDry_Time_Table[7] = {5, 10, 10, 10, 5, 10, 5};

/*************************************************************************************/

//const unsigned char Common_Soak_Time_Table[3][3] = {{10, 10, 10}, {20, 20, 20}, {30, 30, 30}};

//const unsigned char Common_Wash_Time_Table[3][3] = {{9, 9, 9}, {9, 12, 15}, {12, 15, 16}};

const unsigned char Memo_Soak_Time_Table[3][3] = {{10, 10, 10}, {20, 20, 20}, {30, 30, 30}};

const unsigned char Memo_Wash_Time_Table[3][3] = {{10, 10, 10}, {10, 12, 15}, {12, 15, 16}};

const unsigned char Standard_Soak_Time_Table[3][3] = {{10, 10, 10}, {20, 20, 20}, {30, 30, 30}};

const unsigned char Standard_Wash_Time_Table[3][3] = {{8, 8, 8}, {8, 9, 11}, {9, 10, 12}};

const unsigned char Strong_Soak_Time_Table[3] = {20, 30, 40};

const unsigned char Strong_Wash_Time_Table[3] = {10, 15, 20};

const unsigned char Soft_Soak_Time = 20;
const unsigned char Soft_Wash_Time = 10;

const unsigned char Child_Soak_Time = 20;
const unsigned char Child_Wash_Time = 10;

const unsigned char Wool_Soak_Time = 10;
const unsigned char Wool_Wash_Time = 5;

const unsigned char Silk_Wash_Time = 5;
const unsigned char Speedy_Wash_Time = 2;

const unsigned char OPT_Table[8] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};

const unsigned char Left_time_Colum_Table[12] = {25, 23, 33, 14, 21, 33, 25, 21, 3, 8, 5, 7};

const unsigned char seg_led_table[] = {
	
	0x30,	
	0xfc,	
	0xa2,	
	0xa4,	
	0x6c,	
	0x25,	
	0x21,
	0xbc,
	0x20,	
	0x24,
	0xef,
	0x23	
	
	};
	
/*
const unsigned char seg_led_table[] = {
	
	0x11,		
	0x10,		
	0x12
	
	};


*/

/*
	11001111b,		 0 
	00000011b,		 1 
	01011101b,		 2 
	01011011b,		 3 
	11010011b,		 4 
	11011010b,		 5 
	11011110b,		 6 
	01000011b,		 7 
	11011111b,		 8 
	11011011b,		 9 
	00010000b		 - 
*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -