📄 main.h
字号:
/***********************************************************************
Date: 2007 09 21
************************************************************************/
#include <absacc.h>
#include <stdlib.h>
#include <string.h>
#include <intrins.h>
/************************************************************************/
#ifndef DataType_H
#define DataType_H
/* ...................... 定义数据类型 ............................ */
#define UWORK8 unsigned char /* 无符号字符,8位,范围-128~127 */
#define WORK8 signed char /* 有符号字符,8位,范围0~255 */
#define UWORK16 unsigned short /* 无符号16位短整型,范围0~65535 */
#define WORK16 signed short /* 有符号16位短整型,范围-32768~32767 */
#define UWORK32 unsigned long /* 无符号32位长整型,范围0~4294967295 */
#define WORK32 signed long /* 有符号32位长整型,范围-2147483648~2147483647 */
#define FWORK32 float /* 浮点数,范围±1.175494E-38 ~ ±3.402823E+38*/
/* ......................... 定义通用宏 .......................... */
#define Fosc 22118400 //22.1184M
#define Baud 9600 //9600
#define TRUE 1
#define FALSE 0
#define HIGH 1
#define LOW 0
#define ON 0
#define OFF 1
#endif
/************************************************************************/
#include "STC89C54RD.h"
#include "Udp.h"
#include "RS232.h"
/************************************************************************/
/************************************************************************/
#ifndef System_H
#define System_H
#define LOW_PRIORITY 0 /* 低优先级 */
#define HIGH_PRIORITY 1 /* 高优先级 */
//#define TIMER0_LOW_BYTE 0xcb /* 40M晶振,6分频计数,5ms定时 */
//#define TIMER0_HIGH_BYTE 0x7d
#define TIMER0_LOW_BYTE 0x63 /* 22.1184M晶振,6分频计数,5ms定时 */
#define TIMER0_HIGH_BYTE 0xb8
//#define TIMER1_LOW_BYTE 0xf6 /* 40M晶振,6分频计数,1ms定时 */
//#define TIMER1_HIGH_BYTE 0xe5
#define TIMER1_LOW_BYTE 0xae /* 22.1184M晶振,6分频计数,1ms定时 */
#define TIMER1_HIGH_BYTE 0xf1
//#define TIMER2_LOW_BYTE 0xfb /* 40M晶振,6分频计数,9600波特率 */
//#define TIMER2_HIGH_BYTE 0xfe
#define TIMER2_LOW_BYTE 0x70 /* 22.1184M晶振,6分频计数,9600波特率 */
#define TIMER2_HIGH_BYTE 0xff
/*************************************************************************************/
#define SERIAL_REV_QUE_NUM 8 /* 接收队列个数 */
#define SERIAL_SEND_QUE_NUM 4 /* 发送队列个数 */
/*************************************************************************************/
#define NAME_NUM 15 /* 主机名字长度 */
#define VER_NUM 7 /* 软硬件版本号 */
/*************************************************************************************/
typedef struct //设置参数据结构体
{
unsigned char startFlag; //预留的标志位
unsigned char SeupHead_buf[32]; //上位机设置进的引导码 默认八组:0x55 0xAA
// unsigned char SeupFalg_buf[16]; //上位机设置进的标志码 默认十六个:0xff
unsigned char Name_len; //转换器名字长度 默认5
unsigned char Name_buf[15]; //转换器名字 默认host1
unsigned char IP_mode; //ip模式 默认0
unsigned char MAC_Local_buf[6]; //本地MAC,默认0x00,0xab,0xcc,0x65,0xde,0xaa,
unsigned char IP_Local_buf[4]; //本地IP
unsigned char SubMask_buf[4]; //子网掩码:默认255.255.255.0
unsigned char Gateway[4]; //默认网关 默认0.0.0.0
unsigned char IP_Remote_buf[4]; //远程IP
unsigned short Port_Local; //本地端口 默认:50000
unsigned short Port_Remote; //远程端口号 默认:50000
unsigned char Reserve_buf[64]; //预留64位
unsigned char Baud_Select; //波特率
unsigned char VerCode_buf[7]; //软件版本
unsigned short Check_Sum;
}Setup_Parameter;
extern Setup_Parameter NetParameter;
sbit Led = P4^0; //LED指示灯
sbit Rs485En = P4^3;
sbit Key = P4^1;
sbit RTL8019asResetFoot = P3^5;
extern bit gbMSTick; /* 查询软件定时器标志 */
extern data UWORK16 gusMsTick; /* 10ms计数器,软件定时器中用 */
extern data UWORK16 gus10MsTick; /* 10ms计数器,软件延时中用 */
extern xdata UWORK32 gulPassWord;
extern void Delay(UWORK8 ucCount);
extern void DelayMs(UWORK16 usTick);
extern void InitCPU(void);
extern void InitSerial(void);
extern void ResetSystem(void);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -