⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 function.h

📁 四路串行模数转换IC--TLV2544的接口驱动源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
#define  ulong               unsigned long
#define  uint                unsigned int
#define  uchar               unsigned char

//--------- 整体分址定义部分 -------------------
#define  IDT_7134            0x2A00          // [ 0x2a00 ~ 0x2fff ] 对映 [ 0x0a00 ~ 0x0fff ]
                                             // [ 0x3000 ~ 0x39ff ] 对映 [ 0x0000 ~ 0x09ff ]
#define	 PORT_62256	     0x2900
#define	 FlashROM	     0x8000          // 0x8000---0xffff
#define	 PORT_28C256	     0x8000          // 0x8000---0xffff


#define	 MPIO	             0x3B00
#define	 PORT_16c550	     0x3D00
#define	 PORT		     0x3E00
#define	 PORT_29F040         0x4000          // 0x4000---0x7fff
//--------- 整体分址定义部分 -------------------


#define  UP_CTI              PORT_28C256         // ~ 0x0400    256*4=1024 bytes
#define  UP_IH               PORT_28C256+0x0400  // ~ 0x0700    256*3=768 bytes
#define  UP_SH               PORT_28C256+0x0700  // ~ 0x0A00    256*3=768 bytes
#define  T_PROBE             PORT_28C256+0x0A00  // ~ 0x0A7E    126*1=126 bytes
#define  UP_T                PORT_28C256+0x0A7E  // ~ 0x0B7A    126*2=252 bytes
#define  AC_High             PORT_28C256+0x0B7A  // ~ 0x0B92    12*2=24 bytes
#define  AC_Low              PORT_28C256+0x0B92  // ~ 0x0BAA    12*2=24 bytes 
#define  DC_High             PORT_28C256+0x0BAA  // ~ 0x0BBA    8*2=16 bytes
#define  DC_Low              PORT_28C256+0x0BBA  // ~ 0x0BCA    8*2=16 bytes
#define  AC_PT               PORT_28C256+0x0BCA  // ~ 0x0BE2    12*2=24 bytes
#define  DC_PT               PORT_28C256+0x0BE2  // ~ 0x0BF2    8*2=16 bytes
#define  U_state             PORT_28C256+0x0BF2  // ~ 0x0C32    256/8=32 bytes      常开或常闭的设定
#define  I_Import            PORT_28C256+0x0C32  // ~ 0x0C52    256/8=32 bytes      
#define  K_Import            PORT_28C256+0x0C52  // ~ 0x0C72    256/8=32 bytes
#define  I_NAME              PORT_28C256+0x0C72  // ~ 0x1772    256*11=2816 bytes
#define  T_NAME              PORT_28C256+0x1772  // ~ 0x1E56    126*14=1764 bytes
#define  K_NAME              PORT_28C256+0x1E56  // ~ 0x2956    256*11=2816 bytes
#define  AC_NAME             PORT_28C256+0x2956  // ~ 0x29E6    12*12=144 bytes
#define  DC_NAME             PORT_28C256+0x29E6  // ~ 0x2A76    12*12=144 bytes
//0x2AAA
#define  Real_IH             PORT_28C256+0x2AAB  // ~ 0x2DAB    256*3=768 bytes
#define  Real_SH             PORT_28C256+0x2DAB  // ~ 0x30AB    256*3=768 bytes

#define  I_Record            PORT_28C256+0x30AB  // ~ 0x342F    (60)*15=900 bytes
#define  T_Record            PORT_28C256+0x342F  // ~ 0x37B3    (60)*15=900 bytes
#define  IH_Record           PORT_28C256+0x37B3  // ~ 0x3A0B    (60)*10=600 bytes
#define  SH_Record           PORT_28C256+0x3A0B  // ~ 0x3C63    (60)*10=600 bytes
#define  AC_Record           PORT_28C256+0x3C63  // ~ 0x3D17    (12)*15=180 bytes
#define  DC_Record           PORT_28C256+0x3D17  // ~ 0x3DCB    (8)*15=120 bytes 
#define  Iz_Record           PORT_28C256+0x3DCB  // ~ 0x3E9D    (30)*7=210 bytes
#define  I_TempRecord        PORT_28C256+0x3E9D  // ~ 0x4D9D    256*15=3840 bytes
#define  T_TempRecord        PORT_28C256+0x4D9D  // ~ 0x54FF    126*15=1890 bytes

#define  Sz_Record           PORT_28C256+0x5556  // ~ 0x5628    (30)*7=210 bytes

#define  AC_TempRecord       PORT_28C256+0x5628  // ~ 0x56DC    12*15=180 bytes
#define  DC_TempRecord       PORT_28C256+0x56DC  // ~ 0x5754    8*15=120 bytes
#define  IH_TempRecord       PORT_28C256+0x5754  // ~ 0x6154    256*10=2560 bytes
#define  SH_TempRecord       PORT_28C256+0x6154  // ~ 0x6B54    256*10=2560 bytes
#define  Iz_TempRecord       PORT_28C256+0x6B54  // ~ 0x7254    256*7=1792 bytes
#define  Sz_TempRecord       PORT_28C256+0x7254  // ~ 0x7954    256*7=1792 bytes
#define  Alm_I_Point   XBYTE[PORT_28C256+0x7954] // ~ 0x7955    电流报警记录指针(1 bytes)
#define  Alm_T_Point   XBYTE[PORT_28C256+0x7955] // ~ 0x7956    温度报警记录指针(1 bytes)
#define  Alm_AC_Point  XBYTE[PORT_28C256+0x7956] // ~ 0x7957    交流电压报警记录指针(1 bytes)
#define  Alm_DC_Point  XBYTE[PORT_28C256+0x7957] // ~ 0x7958    直流电压报警记录指针(1 bytes)
#define  Alm_IH_Point  XBYTE[PORT_28C256+0x7958] // ~ 0x7959    电流累计时长报警记录指针(1 bytes)
#define  Alm_SH_Point  XBYTE[PORT_28C256+0x7959] // ~ 0x795a    开关量累计时长报警记录指针(1 bytes)
#define  Alm_Iz_Point  XBYTE[PORT_28C256+0x795A] // ~ 0x795b    重要设备(电流)停机记录指针(1 bytes)
#define  Alm_Sz_Point  XBYTE[PORT_28C256+0x795B] // ~ 0x795C    重要设备(状态)停机记录指针(1 bytes)
#define  BAUD_Point    XBYTE[PORT_28C256+0x795C] // ~ 0x795D    波特率选项序号
#define  COM_Point     XBYTE[PORT_28C256+0x795D] // ~ 0x795E    串口选项序号


#define  BASE_62256          PORT_62256-0x0E00
#define  Real_I              BASE_62256          // ~ 0x0200    256*2=512 bytes
#define  Real_T              BASE_62256+0x0200   // ~ 0x02FC    126*2=252 bytes
#define  Real_AC             BASE_62256+0x02FC   // ~ 0x0314    12*2=24 bytes
#define  Real_DC             BASE_62256+0x0314   // ~ 0x0324    8*2=16 bytes
#define	 Time_dat            BASE_62256+0x0324   // ~ 0x0332    7 bytes(秒,分,时,日,月,年,星期)
#define  U_newstate          BASE_62256+0x0332   // ~ 0x0352    256/8=32 bytes
#define  del_I               BASE_62256+0x0352   // ~ 0x0452    32*8=256 bytes
#define  TRbuf               BASE_62256+0x0452   // ~ 0x0652    512 bytes
//#define  Ada_I         XBYTE[BASE_62256+0x0652]
#define  I_Ada               BASE_62256+0x0653   // ~ 0x0753    256 bytes
//#define  Ada_T         XBYTE[BASE_62256+0x0753] 
#define  T_Ada               BASE_62256+0x0754   // ~ 0x07D2    126 bytes 
//#define  Ada_AC        XBYTE[BASE_62256+0x07D2]
#define  AC_Ada              BASE_62256+0x07D3   // ~ 0x07DF    12 bytes
//#define  Ada_IH        XBYTE[BASE_62256+0x07DF]
#define  IH_Ada              BASE_62256+0x07E0   // ~ 0x07E8    8 bytes
//#define  Ada_SH        XBYTE[BASE_62256+0x07E8]
#define  SH_Ada              BASE_62256+0x07E9   // ~ 0x08E9    256 bytes
//#define  Ada_DC        XBYTE[BASE_62256+0x08E9]
#define  DC_Ada              BASE_62256+0x08EA   // ~ 0x09EA    256 bytes
//#define  Ada_Iz        XBYTE[BASE_62256+0x09EB]
#define  Iz_Ada              BASE_62256+0x09EC   // ~ 0x0AEC    256 bytes
//#define  Ada_Sz        XBYTE[BASE_62256+0x0AED]
#define  Sz_Ada              BASE_62256+0x0AEE   // ~ 0x0BEE    256 bytes 
#define  Board_I       XBYTE[BASE_62256+0x0BEE]
#define  Board_T       XBYTE[BASE_62256+0x0BEF]
#define  Board_AC      XBYTE[BASE_62256+0x0BF0]
#define  Board_DC      XBYTE[BASE_62256+0x0BF1]
#define  Board_K       XBYTE[BASE_62256+0x0BF2]
#define  I_chng        XBYTE[BASE_62256+0x0BF3]
#define  T_chng        XBYTE[BASE_62256+0x0BF4]
#define  AC_chng       XBYTE[BASE_62256+0x0BF5]
#define  DC_chng       XBYTE[BASE_62256+0x0BF6]
#define  K_chng        XBYTE[BASE_62256+0x0BF7]
#define  Old_Hour      XBYTE[BASE_62256+0x0BF8]  // ~ 0x0BF9      
#define  Old_Second    XBYTE[BASE_62256+0x0BF9]  // ~ 0x0BFA      
#define  Flag_I              BASE_62256+0x0BFA   // ~ 0x0CFA      256*1=256 bytes
#define  Real_K              BASE_62256+0x0CFA   // ~ 0x0D1A      1*32*8/8=32 bytes
#define	 CTime_dat           BASE_62256+0x0D1A   // ~ 0x0D21    7 bytes(秒,分,时,日,月,年,星期)
#define  Else_chng     XBYTE[BASE_62256+0x0D21]   


#define  PassFlag            BASE_62256+0x0D22
#define  Ada_I         XBYTE[BASE_62256+0x0D22]
#define  Ada_T         XBYTE[BASE_62256+0x0D23] 
#define  Ada_AC        XBYTE[BASE_62256+0x0D24]
#define  Ada_DC        XBYTE[BASE_62256+0x0D25]
#define  Ada_IH        XBYTE[BASE_62256+0x0D26]
#define  Ada_SH        XBYTE[BASE_62256+0x0D27]
#define  Ada_Iz        XBYTE[BASE_62256+0x0D28]
#define  Ada_Sz        XBYTE[BASE_62256+0x0D29]

#define  Read_I        XBYTE[BASE_62256+0x0D2a]
#define  Read_T        XBYTE[BASE_62256+0x0D2b]
#define  Read_AC       XBYTE[BASE_62256+0x0D2c]
#define  Read_DC       XBYTE[BASE_62256+0x0D2d]
#define  Read_IH       XBYTE[BASE_62256+0x0D2e]
#define  Read_SH       XBYTE[BASE_62256+0x0D2f]
#define  Read_Iz       XBYTE[BASE_62256+0x0D30]
#define  Read_Sz       XBYTE[BASE_62256+0x0D31]

#define  chng_I        XBYTE[BASE_62256+0x0D32]
#define  chng_T        XBYTE[BASE_62256+0x0D33]
#define  chng_AC       XBYTE[BASE_62256+0x0D34]
#define  chng_DC       XBYTE[BASE_62256+0x0D35]
#define  chng_K        XBYTE[BASE_62256+0x0D36]
#define  chng_Else     XBYTE[BASE_62256+0x0D37]



#define  read7843_flag XBYTE[BASE_62256+0x0D38]
#define  bufferfull    XBYTE[BASE_62256+0x0D39]
#define  Alarm_I_buf   XBYTE[BASE_62256+0x0D3a]
#define  Alarm_T_buf   XBYTE[BASE_62256+0x0D3b]
#define  Alarm_AC_buf   XBYTE[BASE_62256+0x0D3c]
#define  Alarm_DC_buf   XBYTE[BASE_62256+0x0D3d]
#define  Alarm_IH_buf   XBYTE[BASE_62256+0x0D3e]
#define  Alarm_SH_buf   XBYTE[BASE_62256+0x0D3f]
#define  Alarm_Iz_buf   XBYTE[BASE_62256+0x0D40]
#define  Alarm_Sz_buf   XBYTE[BASE_62256+0x0D41]





#define  Msg_Hand      XBYTE[IDT_7134]          // ~ 0x0001   ~ 0x4a00   
#define  Msg_Main      XBYTE[IDT_7134+0x0001]   // ~ 0x0004   ~ 0x4a01
#define  Msg_Board     XBYTE[IDT_7134+0x0002]   // ~ 0x0002   ~ 0x4a02  发送板地址的消息(电流,温度,电压,模拟量)  
#define  Msg_Flag      XBYTE[IDT_7134+0x0003]   // ~ 0x0003   ~ 0x4a03  通知主CPU当前发送的板号是哪一类板(电流: 1 /温度: 2 /电压: 3 /模拟量:4 /进行下一步:5)
#define  Brd_I         XBYTE[IDT_7134+0x0004]   // ~ 0x0005   ~ 0x4a04
#define  Brd_T         XBYTE[IDT_7134+0x0005]   // ~ 0x0006   ~ 0x4a05
#define  Brd_AC        XBYTE[IDT_7134+0x0006]   // ~ 0x0007   ~ 0x4a06
#define  Brd_A         XBYTE[IDT_7134+0x0007]   // ~ 0x0008   ~ 0x4a07
#define  Ads_I               IDT_7134+0x0008    // ~ 0x0208   ~ 0x4a08   2*32*8=512 bytes              
#define  Ads_T               IDT_7134+0x0208    // ~ 0x0304   ~ 0x4c08   2*21*6=252 bytes
#define  Ads_AC              IDT_7134+0x0304    // ~ 0x031C   ~ 0x4d04   2*12*1=24 bytes
#define  UP_CT               IDT_7134+0x031C    // ~ 0x051C   ~ 0x4d1c   2*32*8=512 bytes
#define  TanTou              IDT_7134+0x051C    // ~ 0x059A   ~ 0x4f1c   1*21*6=126 bytes
#define  UP_PT               IDT_7134+0x059A    // ~ 0x05B2   ~ 0x4f9a   2*12*1=24 bytes

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -