📄 public.h
字号:
/******************************************************************
* 文件名称: PUBLIC . h *
* 文件用途: 公共模块头文件 *
* *
* *
* *
*******************************************************************/
#ifndef __PUBLIC_H__
#define __PUBLIC_H__
#include "DataType.h"
#include "Constant.h"
#include "Condition.h"
/*************函数声明*******************/
extern void LongtoString(long lValue , uchar *ucString , uchar ucWidth) ; //长整型数据转换为字符串
extern void UInttoString(uint unValue , uchar *ucString , uchar ucWidth, uchar ucPoint, uchar ucNoZero); //无符号整数转换为字符串
extern void InttoString(int nValue , uchar *ucString , uchar ucWidth, uchar ucPoint, uchar ucNoZero) ; //有符号整数转换为字符串
extern void UChartoBinary(uchar ucValue , uchar *ucBinary); // 无符号字符数据转换为二进制字符串
extern uchar BinarytoUChar( uchar *ucBinary); // 二进制字符串转换为无符号字符数据
extern long StringtoLong(uchar *ucString) ; //字符串转换为长整型数据
extern uint StringtoUint(uchar *ucString) ; // 字符串转换为无符号整数数据
extern uchar FloatValueFormat(uchar *ucString , uchar ucStringIndex); //浮点数值格式化(保留3位小数)
extern void SerialInit(); //串口初始化
extern void SerialStringSend(uchar *pString, uchar ucEndChar); // 串口字符发送
extern void SerialStringReceive(uchar *pString,uchar ucEndChar); //串口字符接收
extern void Timer0Run(); // 定时器0定时1ms的初始化运行
extern void Delay(uint unCounter); //延时
/*==============外部RAM============*/
/*------------------公共---------------------------*/
extern uchar code ERRORMESSAGE[][10]; //出错信息
extern uchar code ALARMMESSAGE[][16]; //报警信息
extern uchar xdata ucOperateMode; // 工作模式 | EDIT | JOG | AUTO | PAR | DRESS | DGN | PROGRAM | NoDefine |
extern uchar xdata ucCHARBUFFER[16]; //字符临时缓冲区
extern uchar xdata ucCHARBUFFER1[16]; //字符临时缓冲区1
extern uchar xdata ucCHARBUFFERIndex; //字符临时缓冲区的索引
extern uchar xdata ucCHARBUFFERIndex1; //字符临时缓冲区1的索引
extern uint xdata unIndexTemp[2]; //缓冲区临时索引
extern uint xdata unPreviousRowIndex; //上一执行完毕的程序行的索引
extern uint xdata unCurrentRowIndexOld; //上一执行命令的索引
extern struct POINT xdata ReferencePoint; //程序参考点
extern struct POINT xdata ProgramOrigin; //编程坐标原点
extern long xdata lYDress; //Y修整值
extern uchar xdata ucDSPAlarm; //DSP报警信息
extern enum AlarmCode xdata eAlarm; //报警信息代码
extern enum AlarmCode xdata eAlarmOld; //前一次报警信息代码
extern uchar xdata ucServoErrorDisplay; //跟随误差显示标志
extern uchar xdata ucCoordinateDisplay; //坐标类型显示标志
extern uchar xdata ucYHomeFlag ; //Y轴首次机械回零标志
extern uchar xdata ucZHomeFlag ; //Z轴首次机械回零标志
extern uchar xdata ucAllHomeFlag; //两个轴都已回零标志
extern enum AlarmCode xdata eAlarmRecord[8]; // 报警记录
extern uint xdata unUser; //用户类型
extern uint xdata unActualFeedrate; //实际速度
extern uchar xdata uc273U1; //锁存器U1锁存输出数据
extern uchar xdata uc273U2; //锁存器U2锁存输出数据
extern uchar xdata ucFeedMultipleLevel; // 进给倍率级别
extern uchar xdata ucFastMultipleLevel; //快进倍率级别
extern long xdata lRadiasFeedback; //圆弧插补的直径反馈值
//extern uchar code ucFeedMultiple[16]; // 进给倍率
//extern uint code unFeedMultipleScale[16]; // 进给倍率比例系数
//extern uchar code ucFastMultiple[5]; //快进倍率
//extern uint code unFastMultipleScale[5]; //快进倍率比例系数
/*------------------参数---------------------------*/
extern struct PARAMETERVALUE xdata ParameterValue; //参数值
extern uint xdata unFirstRowParameterNo; //参数页面首行的参数号
extern int xdata nCurrentRowNo; //参数页面中当前选中的参数的行号
extern uchar xdata ucParameterBitNo; //位参数的位编号
extern uint xdata unParamaterNostart; //参数子菜单的起始参数号
extern uint xdata unParamaterNoEnd; //参数子菜单的结束参数号
extern uchar xdata ucParameterCurrentMenu; //参数子菜单的当前菜单
extern long xdata lParameterValueInput; //输入参数值
extern struct PARAMETER xdata CURRENTPARAMETER; //当前参数
/*------------------编辑--------------------------*/
extern uchar xdata ucPROGRAMCODE[PROGRAMCODESIZE]; // 加工程序存储区 , 共20K
extern struct FATNODE xdata FAT[100]; //程序文件索引表, 共100个文件索引
extern char xdata cFATIndex; //文件索引表的当前检索位置
/*------------------ 自动--------------------------*/
extern uchar xdata ucUserAreaFlag; // 自动方式下用户设置区域的显示标志。
extern uchar xdata ucLongMacroNo; // 自动方式下浮点型宏变量编号
extern uchar xdata ucIntMacroNo; // 自动方式下整型宏变量编号
/*------------------程序空间定位指针---------------------------*/
extern uchar xdata * xdata pFirstRowAdr; //程序代码显示页面的首行代码开始字符在程序空间的地址
extern uchar xdata * xdata pLastRowAdr; //程序代码显示页面的末行代码开始字符在程序空间的地址
extern uchar xdata * xdata pRowStartAdr; //行号开始字符在程序空间的地址
extern uchar xdata * xdata pCurrentCharAdr; //光标当前位置的字符在程序空间的地址
extern uchar xdata * xdata pCurrentDisplayAdr; //当前显示字符位置
extern uchar xdata ucCurrentCursorRow; //光标当前所在的行号
extern uchar xdata ucCurrentCursorColumn; //光标当前所在的列号
extern uchar xdata ucCursorFlashFlag; //光标闪动标志
extern uint xdata unCursorFlashCounter; //光标闪烁延时计数
extern uint xdata unProgramCodeUsedSize; //已用程序代码空间的大小
extern uint xdata unCurrentProgramSize; //当前程序大小
extern uchar xdata ucCurrentProgramNo; // 当前程序号
/*------------------ 诊断--------------------------*/
extern struct PLC_CODE xdata PLC_Code[PLCCODESIZE ]; //PLC程序存储空间
extern uint xdata unPLCInstructionRowIndex; //PLC命令行号索引
extern uchar xdata ucPLCCheckSuccess; //PLC查错结果标志
extern uint xdata unPLCProgramCodeUsed; //已使用的PLC程序空间大小
extern struct PLC_CODE xdata * xdata pCurrentPLC_Code; //PLC程序显示页面的当前行命令的指针
extern struct PLC_CODE xdata * xdata pFirstRowPLC_Code; //PLC程序显示页面的首行命令的指针
extern struct PLC_CODE xdata * xdata pLastRowPLC_Code; //PLC程序显示页面的末行命令的指针
extern struct PLCSIGNEL xdata PLCDiagnoseSignel; //PLC诊断信号
extern uchar xdata ucDNGPageNo; //PLC诊断页面号
/*------------------ 宏变量--------------------------*/
extern long xdata lMacroValue[100]; //长整型宏变量
extern uint xdata unMacroValue[40]; //无符号整型宏变量
extern int xdata nYPitchOffset[256]; //Y轴螺距补偿
extern int xdata nZPitchOffset[256]; //Z轴螺距补偿
/*===============内部RAM ===========*/
extern uchar idata ucOutputBufferBusy; //输出缓冲区忙信号
extern uchar idata ucMotionComplete; //DSP运动完成标志
//extern uchar idata uciCurrentProgramNo; // 当前程序号
extern long idata lRemainTime; //定时剩余时间
extern struct POINT idata CurrentActualPoint; //当前机床实际位置点
extern struct POINT idata CurrentProgramPoint; //当前程序坐标点
//extern struct POINT idata ProgramStartPoint; //运动指令的起点坐标
extern struct POINT idata ProgramEndPoint; //运动指令的终点坐标
extern struct POINT idata MachineProgramPonitOld; //机床程序坐标的前一次读数值
extern struct POINT idata CurrentLeave; //当前加工余量
extern struct MCUINPUTBUFFER xdata MCUInputBuffer; //单片机输入缓冲区
extern struct MCUOUTPUTBUFFER xdata MCUOutputBuffer; //单片机输出缓冲区
extern uint idata unCallStack[3]; //子程序调用堆栈
extern uchar idata ucStackPointer; //堆栈指针
//extern uchar idata uciAlarmDisplayFlag; //报警信息显示标志
/*------------------手动与自动---------------------------*/
//extern uchar idata uciSpindle ; // 主轴状态
//extern uchar idata uciFeedMultiple; // 进给倍率
//extern uchar idata uciFastMultiple; //快进倍率
//extern uchar idata uciHWMutiple; //手轮倍率
extern uchar idata uciStepIndex; // 步长数组的当前索引值
extern uint idata uniStep; //单步倍率
extern uchar * idata pProgramRow; //程序行的首地址
extern uint idata unExecuteCommandIndex; //自动运行时正在执行的命令的缓冲区索引
extern uint idata unNextCommandIndex; //自动运行时下一条要执行的命令的缓冲区索引
/*------------------键盘---------------------------*/
extern uchar idata uciKeyCodeOld; //前一次的键码
/*------------------位参数---------------------------*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -