#include "my.h"
#ifdef GLOBAL
#define INIT_EXT
const unsigned char motor_TAB[]={0x1A,0x30,0x35,0x20,0x2A,0x00,0x05,0x10};
//=================================
#else
extern const unsigned char motor_TAB[];
#define INIT_EXT extern
#endif
//===========================================================
//================ global variable ==============
//===========================================================
INIT_EXT unsigned char prin_status,delay_status;
INIT_EXT unsigned char delay_status,delay_num;
INIT_EXT unsigned char paper_out_num;
INIT_EXT unsigned char normal_num,error_num,flash_num;
INIT_EXT unsigned char new_motor_code,last_motor_code;
INIT_EXT unsigned char new_key_code,key_code,key_count;
INIT_EXT unsigned char Y_motor_point,W_motor_point,V_motor_point;
INIT_EXT unsigned char motor_Y_steps,motor_up_steps,motor_down_steps;
INIT_EXT unsigned int num_J4,num_R4,num_R8,num_J8;
INIT_EXT unsigned int pulse_num,wash_step;
INIT_EXT unsigned int reset_step;
struct struc
{
unsigned keyflag: 1;
unsigned keyflag0: 1;
unsigned in_flag: 1;
unsigned out_flag: 1;
//unsigned opt_F_flag: 1; //back opt sensor
unsigned flash_flag: 1;
unsigned wash_flag: 1;
};
INIT_EXT struct struc struc_flag;
//===========================================================
//=============== function declare ==============
//===========================================================
INIT_EXT void init(void);
INIT_EXT void port_init(void);
INIT_EXT void timer0_init(void);
INIT_EXT void timer1_init(void);
INIT_EXT void uart0_init(void);
INIT_EXT void init_devices(void);
INIT_EXT void reset(void);
//================= key =================
INIT_EXT void key_scan(void);
INIT_EXT void key_process(void);
这样所有文件都只要包含同一个头文件,只在某一个C文件中#define GLOBAL
对做单片机文件管理十分方便 |