📄 all.h
字号:
#define LOWBYTE(v) ((unsigned char)(v)) /*双字节取低8位*/
#define HIGHBYTE(v) ((unsigned char)(((unsigned int)(v))>>8)) /*双字节取高8 位*/
//#define R_1 //遥控器1
//#define R_2 //遥控器2
#define R_3 //遥控器3
#define T2
//#define Y12 /*11.0592M晶振*/
#define Y22 /*22.1184M晶振*/
#if 0
sfr T2CON = 0xC8;
sfr T2MOD = 0xC9;
sfr RCAP2L = 0xCA;
sfr RCAP2H = 0xCB;
sfr TL2 =0xCC;
sfr TH2 = 0xCD;
#endif
sfr SFAL = 0xB3;
sfr SFAH=0xB4;
sfr SFCF =0xB1;
sfr SFCM =0xB2;
sfr SFDT=0xB5;
sfr SFST =0xB6;
#ifdef T2
sfr T2CON = 0xC8;
sfr T2MOD = 0xC9;
sfr RCAP2H=0xcb;
sfr RCAP2L=0xcA;
sfr TL2 = 0xCC;
sfr TH2 = 0xCD;
sbit TF2=T2CON^7;
sbit EXF2=T2CON^6;
sbit RCLK=T2CON^5;
sbit TCLK=T2CON^4;
sbit EXEN2=T2CON^3;
sbit TR2=T2CON^2;
sbit C_T2=T2CON^1;
sbit CP_RL2=T2CON^0;
unsigned char u=0x30,v=0x30;
#define TF2_VECTOR 5
#define MSB_reload_value 0x04 /* msb reload 4value exemple 高位重载值:延时1s*/
#define LSB_reload_value 0x00 /* lsb reload value exemple 低位重载值*/
#endif
unsigned char interrupt_flag=0;/*中断标志,为1时停止输出*/
//按键定义
//遥控器1
#ifdef R_1
#define The_user_code_of_I2C 0x12
#define FuHao 0X0B
#define RUN 0X49
#define MDI 0X14
#define KEY_ManualOperation 0X1F
#define GB_UP 0X1A
#define GB_DOWN 0X1E
#define UP 0X1B
#define DOWN 0X1F
#define K0 0X00
#define K1 0X01
#define K2 0X02
#define K3 0X03
#define K4 0x04
#define K5 0X05
#define K6 0X06
#define K7 0X07
#define K8 0X08
#define K9 0X09
#define G00 0X58
#define G01 0X13
#define G02 0X54
#define G03 0X0E
#define G04 0X0F
#define M02 0X4F
#define G91 0x56
#define ENTER 0X52
#define X1 0X1D
#define Y1 0X51
#define DEL 0X10
#define KEY_Y_PMove 0X57
#define KEY_Y_NMove 0X56
#define KEY_X_NMove 0X5B
#define KEY_X_PMove 0X5F
#define TING 0X5C
#define ORIGIN 0X17
#define F 0X17
#endif
#ifdef R_2
//遥控器2
//#define Edit 0x12
#define FuHao 0X33
#define RUN 0X06
#define MDI 0X54
#define NEW_CODE 0X10
#define KEY_ManualOperation 0X0c
#define GB_UP 0X1E
#define GB_DOWN 0X48
//#define UP 0X1e
//#define DOWN 0X48
#define LEFT 0X1C
#define RIGHT 0X0F
#define K0 0X12
#define K1 0X09
#define K2 0X1d
#define K3 0X1f
#define K4 0x0d
#define K5 0X19
#define K6 0X1b
#define K7 0X11
#define K8 0X15
#define K9 0X17
#define G00 0X40
#define G01 0X4c
#define G02 0X54
#define G03 0X0a
#define G04 0X10
#define M02 0X0e
#define M46 0X1A //
#define M47 0X0C//
#define G90 0x1c
#define G91 0x0f
#define ENTER 0X14
#define X1 0X16
#define Y1 0X4d
#define DEL 0X03
#define KEY_Y_PMove 0X1e
#define KEY_Y_NMove 0X48
#define KEY_X_NMove 0X1c
#define KEY_X_PMove 0X0f
#define TING 0X14
#define ORIGIN 0X05
#define EXIT 0x05
#define STOP 0x14
#define SPEED 0x59
#define GET_G_FROM_24C02 0X1a
#endif
#ifdef R_3
#define FuHao 0X16
#define RUN 0X47
#define MDI 0X10
#define NEW_CODE 0X10
#define KEY_ManualOperation 0X5A
#define GB_UP 0X0b
#define GB_DOWN 0X13
//#define UP 0X0B
//#define DOWN 0X13
#define K0 0X45
#define K1 0X00
#define K2 0X01
#define K3 0X42
#define K4 0x43
#define K5 0X02
#define K6 0X03
#define K7 0X41
#define K8 0X40
#define K9 0X06
#define G00 0X1a
#define G01 0X1b
#define G02 0X59
#define G03 0X58
#define G04 0X1E
#define M02 0X5c
#define M46 0X50
#define M47 0X54
#define G90 0x1f
#define G91 0x5d
#define ENTER 0X0f
#define X1 0X0a
#define Y1 0X49
#define DEL 0X44
#define KEY_Y_PMove 0X0b
#define KEY_Y_NMove 0X13
#define KEY_X_NMove 0X4d
#define LEFT 0X0e
#define RIGHT 0X4d
#define KEY_X_PMove 0X0e
#define TING 0X0f
#define ORIGIN 0X15
#define EXIT 0x5f
#define STOP 0x46
#define C_STOP 0x05
#define SPEED 0x17
#define INSERT 0x55
#define I 0x12
#define K 0x51
#define JINTING 0x04
#endif
#define LENTH 180
unsigned char idata xunhao1=0x30;
unsigned char idata xunhao=0x30;
unsigned char idata buf[LENTH];//={G02,X1,FuHao,0X00,0X04,0X01,Y1,0X00,0X03,0X05,I,FuHao,0X00,0X03,0x06,K,0X00,0X00,0X01,SPEED,1,ENTER,M02,0XFF,0XFF,0xFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0xFF,0XFF};
unsigned char *s;
unsigned char idata i=4;
unsigned char F;
unsigned int kc=0;
#define Busy 0x80 //用于检测LCM状态字中的Busy标识
#ifdef Y22
#define DELAY 24
#define ir_time 900 //红外脉冲时间定义22.1184M
#endif
#ifdef Y12
#define DELAY 12
#define ir_time 450 //红外脉冲时间定义22.1184M
#endif
unsigned char idata ir_data[4]; //红外数据
unsigned char idata ir_signtime; //脉冲宽度计数器
unsigned char idata ir_sign_count=0; //脉冲记数
unsigned char idata ir_temp ; //临时红外数据
unsigned char idata ir_rpt1,ir_rpt2; //红外脉冲复计数器
bit ir_start_flag=1,ir_flag; //引导信号标记//红外数据解码成功标记
bit lf_flag=0;//连发标志
//电机信号脚定义
sbit X_F=P1^0;
sbit X_M=P1^1;
sbit Y_F=P1^2;
sbit Y_M=P1^3;
sbit TAI_BI=P1^6;
sbit Y_DIAN=P1^4;
sbit X_DIAN=P1^5;
#if 1
#define LCM_Data P2
sbit LCM_RW=P0^6; //定义引脚
sbit LCM_RS=P0^5;
sbit LCM_E=P0^7;
#endif
#if 0
#define LCM_Data P2
sbit LCM_RW=P3^5; //定义引脚
sbit LCM_RS=P3^4;
sbit LCM_E=P1^7;
#endif
///sbit sda=P3^6; //I2C 引脚定义
//sbit scl=P3^7;
#if 0
//圆插补
int idata XE=0; /*终点横坐标*/
int idata YE=3000;/*终点纵坐标*/
int idata XS=3000;/*起点横坐标*/
int idata YS=0;/*起点纵坐标*/
int idata FM;
int idata ny;
int idata STEP=1;
int idata NR=1;
int idata XOYY;
#endif
unsigned char idata NR=1;
signed int n; /*总步数*/
int idata XS=0;/*起点横坐标*/
int idata YS=0;/*起点纵坐标*/
int idata FM;
int idata ny;
//子函数声明
void Jamp_to_user_pragram(void);
void WriteDataLCM(unsigned char WDLCM);
void WriteCommandLCM(unsigned char WCLCM,BuysC);
unsigned char ReadStatusLCM(void);
void LCMInit(void);
void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData);
void Interrupt_DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData) ;
void Delay5Ms(void);
void Delay400Ms(void);
void Lcd_print(unsigned char *DData);
void key_handle(void);
void Lcd_print1(unsigned char h,unsigned char s,unsigned char DData[5]);
void serial_number_down(void);
void serial_number_up(void);
void number_input(void);
void LocateXY( char posx,char posy);
unsigned char ReadLCM(void);
void pre_up(void);
void forward_down(void);
void ManualOperation(void);
void Y_PMove(void);
void Y_NMove(void);
void X_PMove(void);
void X_NMove(void);
void Y_Reset(void);
void X_Reset(void);
void G_translation(void);
void get_xyf(void);
void display_first_buf(void);
void displayY(void);
void displayX(void);
void displayXY(void);
void DelayXS(unsigned char x); //延时x秒
void TandC_Tnit(void);
void display_buf(void);
void Del_one_char(void);
void Insert_one_char(void);
void Opreation(void);
void circle_interpolation(int XS,int YS,int XE,int YE);
void start_handler(void);
void getin_system(void) ; /*进入系统5秒到计时*/
void main(void);
void SaveXYToNVRAM(void);
void ReadXYFromNVRAM(void);
void SaveGcodeToI2C(void);
void ReadGcodeToI2C(void);
void buf_0xff(void);
#define xadd 0x01;
#define yadd 0x02;
#define user1_add 0x0A;
#define user2_add 0x300;
#define CODEEND 0xEF;
unsigned int idata Pref_x;
unsigned int idata Pref_y;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -