📄 class.h
字号:
//
//File name=class.h
//设计 何风涛
//#include <stdio.h>
//#include <string.H>
#include <stdlib.h>
#include <nt_funcs.h>
#include <nt_sfrs.h>
#include _SFR_H_
#ifndef NULL
#define NULL ((void *)0)
#endif
#define PASSX 1234
#define PASST 1111
#define DY_BOARD_1 0x00 /* 00 */
#define BSQ_BOARD_1 0x08 /* 01 */
#define BSQ_BOARD_2 0x10 /* 02 */
#define BSQ_BOARD_3 0x18 /* 03 */
#define BSQ_BOARD_4 0x20 /* 04 */
#define BSQ_BOARD_5 0x28 /* 05 */
#define BSQ_BOARD_6 0x30 /* 06 */
#define BSQ_BOARD_7 0x38 /* 07 */
#define BSQ_BOARD_8 0x40 /* 08 */
#define YX_BOARD_1 0x48 /* 09 */
#define YX_BOARD_2 0x50 /* 10 */
#define YX_BOARD_3 0x58 /* 11 */
#define YX_BOARD_4 0x60 /* 12 */
#define YX_BOARD_5 0x68 /* 13 */
#define YX_BOARD_6 0x70 /* 14 */
#define YM_BOARD_1 0x78 /* 15 */
#define YM_BOARD_2 0x80 /* 16 */
#define YM_BOARD_3 0x88 /* 17 */
#define YM_BOARD_4 0x90 /* 18 */
#define YK_BOARD_1 0x98 /* 19 */
#define YK_BOARD_2 0xA0 /* 20 */
#define YK_BOARD_3 0xA8 /* 21 */
#define YK_BOARD_4 0xB0 /* 22 */
#define YK_BOARD_5 0xB8 /* 23 */
#define YK_BOARD_6 0xC0 /* 24 */
#define YK_BOARD_7 0xC8 /* 25 */
#define YK_BOARD_8 0xD0 /* 26 */
#define YK_BOARD_9 0xD8 /* 27 */
#define YK_BOARD_10 0xE0 /* 28 */
#define YK_BOARD_11 0xE8 /* 29 */
#define DY_BOARD_1_573 0x00 /* 00 */
#define DY_BOARD_1_245 0x04 /* 00 */
#define BSQ_BOARD_1_573 0x08 /* 01 IO0 IO1 EN */
#define BSQ_BOARD_2_573 0x10 /* 02 IO0 IO1 EN */
#define BSQ_BOARD_3_573 0x18 /* 03 IO0 IO1 EN */
#define BSQ_BOARD_4_573 0x20 /* 04 IO0 IO1 EN */
#define BSQ_BOARD_5_573 0x28 /* 05 IO0 IO1 EN */
#define BSQ_BOARD_6_573 0x30 /* 06 IO0 IO1 EN */
#define BSQ_BOARD_7_573 0x38 /* 07 IO0 IO1 EN */
#define BSQ_BOARD_8_573 0x40 /* 08 IO0 IO1 EN */
#define BSQ_BOARD_NUM1 0x04 /* 01 IO0 IO1 EN */
#define BSQ_BOARD_NUM2 0x05 /* 01 IO0 IO1 EN */
#define BSQ_BOARD_NUM3 0x06 /* 01 IO0 IO1 EN */
#define BSQ_BOARD_NUM4 0x07 /* 01 IO0 IO1 EN */
#define BSQ_BOARD_NULL 0x00 /* 01 IO0 IO1 EN */
#define YX_BOARD_1_KRL 0x4C /* 09 */
#define YX_BOARD_1_KRM 0x4D /* 09 */
#define YX_BOARD_1_KRH 0x4E /* 09 */
#define YX_BOARD_2_KRL 0x54 /* 10 */
#define YX_BOARD_2_KRM 0x55 /* 10 */
#define YX_BOARD_2_KRH 0x56 /* 10 */
#define YX_BOARD_3_KRL 0x5C /* 11 */
#define YX_BOARD_3_KRM 0x5D /* 11 */
#define YX_BOARD_3_KRH 0x5E /* 11 */
#define YX_BOARD_4_KRL 0x64 /* 12 */
#define YX_BOARD_4_KRM 0x65 /* 12 */
#define YX_BOARD_4_KRH 0x66 /* 12 */
#define YX_BOARD_5_KRL 0x6C /* 13 */
#define YX_BOARD_5_KRM 0x6D /* 13 */
#define YX_BOARD_5_KRH 0x6E /* 13 */
#define YX_BOARD_6_KRL 0x74 /* 14 */
#define YX_BOARD_6_KRM 0x75 /* 14 */
#define YX_BOARD_6_KRH 0x76 /* 14 */
#define YM_BOARD_1_KRL 0x7C /* 15 */
#define YM_BOARD_1_KRM 0x7D /* 15 */
#define YM_BOARD_1_KRH 0x7E /* 15 */
#define YM_BOARD_2_KRL 0x84 /* 16 */
#define YM_BOARD_2_KRM 0x85 /* 16 */
#define YM_BOARD_2_KRH 0x86 /* 16 */
#define YM_BOARD_3_KRL 0x8C /* 17 */
#define YM_BOARD_3_KRM 0x8D /* 17 */
#define YM_BOARD_3_KRH 0x8E /* 17 */
#define YM_BOARD_4_KRL 0x94 /* 18 */
#define YM_BOARD_4_KRM 0x95 /* 18 */
#define YM_BOARD_4_KRH 0x96 /* 18 */
#define YK_BOARD_1_KC0_4 0x98 /* 19 */
#define YK_BOARD_1_KC5_8 0x99 /* 19 */
#define YK_BOARD_1_KC9_12 0x9A /* 19 */
#define YK_BOARD_1_245 0x9C /* 19 */
#define YK_BOARD_2_KC0_4 0xA0 /* 20 */
#define YK_BOARD_2_KC5_8 0xA1 /* 20 */
#define YK_BOARD_2_KC9_12 0xA2 /* 20 */
#define YK_BOARD_2_245 0xA4 /* 20 */
#define YK_BOARD_3_KC0_4 0xA8 /* 21 */
#define YK_BOARD_3_KC5_8 0xA9 /* 21 */
#define YK_BOARD_3_KC9_12 0xAA /* 21 */
#define YK_BOARD_3_245 0xAC /* 21 */
#define YK_BOARD_4_KC0_4 0xB0 /* 22 */
#define YK_BOARD_4_KC5_8 0xB1 /* 22 */
#define YK_BOARD_4_KC9_12 0xB2 /* 22 */
#define YK_BOARD_4_245 0xB4 /* 22 */
#define YK_BOARD_5_KC0_4 0xB8 /* 23 */
#define YK_BOARD_5_KC5_8 0xB9 /* 23 */
#define YK_BOARD_5_KC9_12 0xBA /* 23 */
#define YK_BOARD_5_245 0xBC /* 23 */
#define YK_BOARD_6_KC0_4 0xC0 /* 24 */
#define YK_BOARD_6_KC5_8 0xC1 /* 24 */
#define YK_BOARD_6_KC9_12 0xC2 /* 24 */
#define YK_BOARD_6_245 0xC4 /* 24 */
#define YK_BOARD_7_KC0_4 0xC8 /* 25 */
#define YK_BOARD_7_KC5_8 0xC9 /* 25 */
#define YK_BOARD_7_KC9_12 0xCA /* 25 */
#define YK_BOARD_7_245 0xCC /* 25 */
#define YK_BOARD_8_KC0_4 0xD0 /* 26 */
#define YK_BOARD_8_KC5_8 0xD1 /* 26 */
#define YK_BOARD_8_KC9_12 0xD2 /* 26 */
#define YK_BOARD_8_245 0xD4 /* 26 */
#define YK_BOARD_9_KC0_4 0xD8 /* 27 */
#define YK_BOARD_9_KC5_8 0xD9 /* 27 */
#define YK_BOARD_9_KC9_12 0xDA /* 27 */
#define YK_BOARD_9_245 0xDC /* 27 */
#define YK_BOARD_10_KC0_4 0xE0 /* 28 */
#define YK_BOARD_10_KC5_8 0xE1 /* 28 */
#define YK_BOARD_10_KC9_12 0xE2 /* 28 */
#define YK_BOARD_10_245 0xE4 /* 28 */
#define YK_BOARD_11_KC0_4 0xE8 /* 29 */
#define YK_BOARD_11_KC5_8 0xE9 /* 29 */
#define YK_BOARD_11_KC9_12 0xEA /* 29 */
#define YK_BOARD_11_245 0xEC /* 29 */
#define YK_BOARD_NULL_1 0x57
#define YK_BOARD_NULL_2 0x55
#define YK_BOARD_NULL_3 0x55
#define YK_BOARD_POWER_OR_1 0x80 /* KC4- =HIGHT V */
#define YK_BOARD_POWER_OR_2 0x00
#define YK_BOARD_POWER_OR_3 0x00
#define YK_BOARD_POWER_AND_1 0xBF /* KC4 =LOW V */
#define YK_BOARD_POWER_AND_2 0xFF
#define YK_BOARD_POWER_AND_3 0xFF
#define YK_BOARD_1T_1 0x56 /* KC0=LOW V */
#define YK_BOARD_1T_2 0x55
#define YK_BOARD_1T_3 0x55
#define YK_BOARD_1H_1 0x55 /* KC1=LOW V */
#define YK_BOARD_1H_2 0x55
#define YK_BOARD_1H_3 0x55
#define YK_BOARD_2T_1 0x5B /* KC2=0 KC2-=1 */
#define YK_BOARD_2T_2 0x55
#define YK_BOARD_2T_3 0x55
#define YK_BOARD_2H_1 0x67 /* KC3=0 KC3-=1 */
#define YK_BOARD_2H_2 0x55
#define YK_BOARD_2H_3 0x55
#define YK_BOARD_3T_1 0x57
#define YK_BOARD_3T_2 0x56 /* KC5=0 KC5-=1 */
#define YK_BOARD_3T_3 0x55
#define YK_BOARD_3H_1 0x57
#define YK_BOARD_3H_2 0x59 /* KC6=0 KC6-=1 */
#define YK_BOARD_3H_3 0x55
#define YK_BOARD_4T_1 0x57
#define YK_BOARD_4T_2 0x65 /* KC7=0 KC7-=1 */
#define YK_BOARD_4T_3 0x55
#define YK_BOARD_4H_1 0x57
#define YK_BOARD_4H_2 0x95 /* KC8=0 KC8-=1 */
#define YK_BOARD_4H_3 0x55
#define YK_BOARD_5T_1 0x57
#define YK_BOARD_5T_2 0x55
#define YK_BOARD_5T_3 0x56 /* KC9=0 KC9-=1 */
#define YK_BOARD_5H_1 0x57
#define YK_BOARD_5H_2 0x55
#define YK_BOARD_5H_3 0x59 /* KC10=0 KC10-=1*/
#define YK_BOARD_6T_1 0x57
#define YK_BOARD_6T_2 0x55
#define YK_BOARD_6T_3 0x65 /* KC11=0 KC11-=1 */
#define YK_BOARD_6H_1 0x57
#define YK_BOARD_6H_2 0x55
#define YK_BOARD_6H_3 0x95 /* KC12=0 KC12-=1 */
#define RESET_NULL 0x00 /* for can control register */
#define RESET_REQUEST 0x01 /* reset control register request */
#define CAN_CTRL_RIE 0x1A /*02 /* enable receive interrupt & 1-resync */
#define CAN_CTRL_TIE 0x1E /*06 /* enable transmit interrupt & 1-resync*/
#define CAN_OUT_CTRL 0xFA /*EA /* pull-down, normal output mode or AAH*/
#define CAN_BUS_TIM0 0x89 /* 1.25uS-clock, 3.75uS-Tsjw at 16Mhz */
#define CAN_BUS_TIM1 0x2F /*EB /* 3-sampling, 8.75uS-Tseg2, 15uS-Tseg1*/
#define CAN_RXD_INTR 0x01 /* for can interrupt register */
#define CAN_TXD_INTR 0x02
#define CAN_ERR_INTR 0x04
#define CAN_OVR_INTR 0x08
#define TCAN_REQUEST 0x01 /* for can command register */
#define RCAN_RELEASE 0x04
#define OVERRUN_INIT 0x08
#define TCAN_ENABLE 0x04
#define CAN_BUS_ERR 0x80
#define MAX_CAN_LEN 0x800
#ifdef _C196_
#if _ARCHITECTURE_ != 'NT'
#pragma model(NT-EF)
#endif
#endif
/*-------------------------公共变量----------------------------------*/
#if !defined(FARDATA)
#if _FAR_DATA_ || _FAR_CONST_
#define FARDATA far
#else
#define FARDATA
#endif
#endif
/*----------------------------类型预定义---------------------------*/
typedef unsigned char BOOL;
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef unsigned long DWORD;
typedef unsigned int UINT;
typedef DWORD LONG;
typedef void FARDATA *PVOID;
/*-----------------中断宏定义------------------------------------------*/
/*-----------------宏变量------------------------------------------*/
#define MAXTASK 52
#define YkTaskNo 51
#define YcCalcTaskNo 50
#define XmScanTaskNo 49
#define DisplayTaskNo 48
#define DbaseTaskNo 47
#define ComDeviceTaskNo 46
#define Can1FrameTaskNo 1
#define Can0FrameTaskNo 0
#define IEC101PACKETSIZE 0x100
#define IEC101REPEAT 2
#define MAXCOMNUM 8 /* 设备驱动串口号 */
#define MAXCANMAIL 100
#define MAXSAMPLECOUNT 128
#define Can0ComhandleNo 0x00
#define Can1ComhandleNo 0x01
#define TaskNoCOM00 0x02
#define TaskNoCOM01 0x03
#define TaskNoCOM02 0x04
#define TaskNoCOM03 0x05
#define TaskNoCOM04 0x06
#define TaskNoCOM05 0x07
#define TaskNoCOM06 0x08
#define TaskNoCOM07 0x09
#define TaskNoCOM08 0x0A
#define TaskNoCOM09 0x0B
#define TaskNoCOM10 0x0C
#define TaskNoCOM11 0x0D
#define TaskNoCOM12 0x0E
#define TaskNoCOM13 0x0F
#define TaskNoCOM14 0x10
#define TaskNoCOM15 0x11
#define MaxMailLength 254
#define MaxMailNum 100
#define MAXSOE 512
#define MAXEMPMAIL 100
#define MAXMRNUM 64
#define MAXLINENUM 24
#define MAXYWNUM 24
#define MAXWORKMODE 1
#define KEYSPEED 30
#define TXD_BUF_PRO 0x01
#define RXD_BUF_PRO 0x00
#define KEYDELAY 2000
#define WREN_INST 0x06
#define WRDI_INST 0x04
#define WRSR_INST 0x01
#define RDSR_INST 0x05
#define WRITE_INST 0x02
#define READ_INST 0x03
#define BYTE_ADDR 0x55
#define BYTE_DATA 0x11
#define PAGE_ADDR 0x1f0
#define PAGE_DATA1 0x22
#define PAGE_DATA2 0x33
#define PAGE_DATA3 0x44
#define STATUS_REG 0x00
#define MAX_POLL 0x200
#define INIT_STATE 0x09
#define SLIC 0x30
#define CAN0_REG_BASE 0x001200
#define CAN1_REG_BASE 0x001300
#define DADA_BIT_5 0x00;
#define DADA_BIT_6 0x01;
#define DADA_BIT_7 0x02;
#define DADA_BIT_8 0x03;
#define COM_16C554_CSA_BASE 0x001380
#define COM_16C554_CSA_RBR 0x001380 /*接收缓冲寄存器 只读 DLAB=0 */
#define COM_16C554_CSA_THR 0x001380 /*发送保持寄存器 只写 DLAB=0 */
#define COM_16C554_CSA_IER 0x001381 /*中断使能寄存器 DLAB=0 */
#define COM_16C554_CSA_IIR 0x001382 /*中断识别寄存器 只读 */
#define COM_16C554_CSA_FCR 0x001382 /*FIFO控制寄存器 只写 */
#define COM_16C554_CSA_LCR 0x001383 /*线路控制寄存器 */
#define COM_16C554_CSA_MCR 0x001384 /*MODEM控制寄存器 */
#define COM_16C554_CSA_LSR 0x001385 /*线路状态寄存器 */
#define COM_16C554_CSA_MSR 0x001386 /*MODEM状态寄存器 */
#define COM_16C554_CSA_DLL 0x001380 /*分频锁存低字节 DLAB=1 */
#define COM_16C554_CSA_DLM 0x001381 /*分频锁存高字节 DLAB=1 */
#define COM_16C554_CSB_BASE 0x001388
#define COM_16C554_CSB_RBR 0x001388 /*接收缓冲寄存器 只读 DLAB=0 */
#define COM_16C554_CSB_THR 0x001388 /*发送保持寄存器 只写 DLAB=0 */
#define COM_16C554_CSB_IER 0x001389 /*中断使能寄存器 DLAB=0 */
#define COM_16C554_CSB_IIR 0x00138A /*中断识别寄存器 只读 */
#define COM_16C554_CSB_FCR 0x00138A /*FIFO控制寄存器 只写 */
#define COM_16C554_CSB_LCR 0x00138B /*线路控制寄存器 */
#define COM_16C554_CSB_MCR 0x00138C /*MODEM控制寄存器 */
#define COM_16C554_CSB_LSR 0x00138D /*线路状态寄存器 */
#define COM_16C554_CSB_MSR 0x00138E /*MODEM状态寄存器 */
#define COM_16C554_CSB_DLL 0x001388 /*分频锁存低字节 DLAB=1 */
#define COM_16C554_CSB_DLM 0x001389 /*分频锁存高字节 DLAB=1 */
#define COM_16C554_CSC_BASE 0x001390
#define COM_16C554_CSC_RBR 0x001390 /*接收缓冲寄存器 只读 DLAB=0 */
#define COM_16C554_CSC_THR 0x001390 /*发送保持寄存器 只写 DLAB=0 */
#define COM_16C554_CSC_IER 0x001391 /*中断使能寄存器 DLAB=0 */
#define COM_16C554_CSC_IIR 0x001392 /*中断识别寄存器 只读 */
#define COM_16C554_CSC_FCR 0x001392 /*FIFO控制寄存器 只写 */
#define COM_16C554_CSC_LCR 0x001393 /*线路控制寄存器 */
#define COM_16C554_CSC_MCR 0x001394 /*MODEM控制寄存器 */
#define COM_16C554_CSC_LSR 0x001395 /*线路状态寄存器 */
#define COM_16C554_CSC_MSR 0x001396 /*MODEM状态寄存器 */
#define COM_16C554_CSC_DLL 0x001390 /*分频锁存低字节 DLAB=1 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -