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

📄 dlhdi.h

📁 关于微型操作系统的小代码作为特殊通信用的
💻 H
📖 第 1 页 / 共 2 页
字号:
// Host - Data Link interface
#ifndef _DL_Host_Data_Link_Interface_Header_0010_
#define _DL_Host_Data_Link_Interface_Header_0010_

#include "Portability.h"
#include "WtIfcDef.h"

// --------------------------------------------------------------------------------------------------
//  Host - Data Link interface
//  1) Host to Data Link
//       Commands               (Cmd)
//  2) Data Link to Host
//       Reports |-> answers    (Ans)
//               |-> messages   (Msg)
// 
// ................. 
// . Hd  | Header  .
// . Cmd | Command .
// . Msg | Message . 
// . Ans | Answer  .
// .................   
// --------------------------------------------------------------------------------------------------

#define DLHdi_CODE_ATN  0xC9


#define DLHdi_eRxType_OtherNet     0
#define DLHdi_eRxType_OtherDevice  1
#define DLHdi_eRxType_Mine         2
#define DLHdi_eRxType_Repeated     3
#define DLHdi_eRxType_Imposter     4
#define DLHdi_eRxType_Malformed    5
#define DLHdi_eRxType_NetControl   6
#define DLHdi_eRxType_Jammed       7

// --------------------------------------------------------------------------------------------------

typedef
  enum tagDLHdi_eCode_t
    { 
      DLHdi_eCode_ProgUndefined                   = 2,
      DLHdi_eCode_DatalinkNoEE                    = 6,
      DLHdi_eCode_DatalinkOkay                    = 7,
      DLHdi_eCode_DatalinkNoEeParameters          = 8,
      DLHdi_eCode_ProgByModeFlag                  = 9,
      DLHdi_eCode_ProgBadHeaderCRC                = 10,
      DLHdi_eCode_ProgBadModeOvrFlag              = 11,
      DLHdi_eCode_ProgBadModeFlag                 = 12,
      DLHdi_eCode_ProgBadKeyValue                 = 13,
      DLHdi_eCode_ProgNoModeFlag                  = 14,
      DLHdi_eCode_ProgNoFDLForLoading             = 15,
      DLHdi_eCode_ProgBadFDLCRC                   = 16,
      DLHdi_eCode_DatalinkInitFailure             = 32,
      DLHdi_eCode_DatalinkInitFailure_RateControl = 33,
      DLHdi_eCode_DatalinkInitFailure_AdpBackoff  = 34,
      DLHdi_eCode_DatalinkInitFailure_PhyRx       = 35,
      DLHdi_eCode_DatalinkInitFailure_PhyTx       = 36,
      DLHdi_eCode_DatalinkInitFailure_HostTx      = 37,
      DLHdi_eCode_DatalinkInitFailure_HostRx      = 38,                     
      DLHdi_eCode_DatalinkInitFailure_HalHost     = 39,
      DLHdi_eCode_AutoConfigStartOkay             = 64,
      DLHdi_eCode_AutoConfigStartFailure          = 65,
      DLHdi_eCode_HostApplicationFailure          = 66    
    } DLHdi_eCode_t;


// --------------------------------------------------------------------------------------------------

#define DLHdi_CODE_RATEMODE_BITMASK      0x38
#define DLHdi_CODE_RATEMODE_AUTO         0x00
#define DLHdi_CODE_RATEMODE_ERM          0x08
#define DLHdi_CODE_RATEMODE_DCSK4        0x10
#define DLHdi_CODE_RATEMODE_DCSK6        0x18

// --------------------------------------------------------------------------------------------------

#define DLHdi_Ix_CH_ALL_ATN           0
#define DLHdi_Ix_CH_ALL_ID            1
#define DLHdi_Ix_CH_ALL_LENLO         2
#define DLHdi_Ix_CH_ALL_LENHI         3
#define DLHdi_Ix_CH_ALL_top           4 

// --------------------------------------------------------------------------------------------------

#define DLHdi_IxCmdLHd_PAR0   (0)
#define DLHdi_IxCmdLHd_PAR1   (1)
#define DLHdi_IxCmdLHd_PAR2   (2)
#define DLHdi_IxCmdLHd_PAR3   (3)
#define DLHdi_IxCmdLHd_PAR4   (4)
#define DLHdi_IxCmdLHd_PAR5   (5)
#define DLHdi_IxCmdLHd_PAR6   (6)
#define DLHdi_IxCmdLHd_PAR7   (7)
#define DLHdi_IxCmdLHd_PAR8   (8)
#define DLHdi_IxCmdLHd_PAR9   (9)
#define DLHdi_IxCmdLHd_PAR10  (10)
#define DLHdi_IxCmdLHd_PAR11  (11)
#define DLHdi_IxCmdLHd_PAR12  (12)
#define DLHdi_IxCmdLHd_PAR13  (13)
#define DLHdi_IxCmdLHd_PAR14  (14)
#define DLHdi_IxCmdLHd_PAR15  (15)
#define DLHdi_IxCmdLHd_PAR16  (16)
#define DLHdi_IxCmdLHd_PAR17  (17)
#define DLHdi_IxCmdLHd_PAR18  (18)
#define DLHdi_IxCmdLHd_PAR19  (19)


#define DLHdi_IxCmdHd_ATN    DLHdi_Ix_CH_ALL_ATN
#define DLHdi_IxCmdHd_ID     DLHdi_Ix_CH_ALL_ID
#define DLHdi_IxCmdHd_LENLO  DLHdi_Ix_CH_ALL_LENLO
#define DLHdi_IxCmdHd_LENHI  DLHdi_Ix_CH_ALL_LENHI

#define DLHdi_IxCmdHd_PAR0   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR0)
#define DLHdi_IxCmdHd_PAR1   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR1)
#define DLHdi_IxCmdHd_PAR2   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR2)
#define DLHdi_IxCmdHd_PAR3   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR3)
#define DLHdi_IxCmdHd_PAR4   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR4)
#define DLHdi_IxCmdHd_PAR5   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR5)
#define DLHdi_IxCmdHd_PAR6   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR6)
#define DLHdi_IxCmdHd_PAR7   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR7)
#define DLHdi_IxCmdHd_PAR8   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR8)
#define DLHdi_IxCmdHd_PAR9   (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR9)
#define DLHdi_IxCmdHd_PAR10  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR10)
#define DLHdi_IxCmdHd_PAR11  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR11)
#define DLHdi_IxCmdHd_PAR12  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR12)
#define DLHdi_IxCmdHd_PAR13  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR13)
#define DLHdi_IxCmdHd_PAR14  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR14)
#define DLHdi_IxCmdHd_PAR15  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR15)
#define DLHdi_IxCmdHd_PAR16  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR16)
#define DLHdi_IxCmdHd_PAR17  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR17)
#define DLHdi_IxCmdHd_PAR18  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR18)
#define DLHdi_IxCmdHd_PAR19  (DLHdi_Ix_CH_ALL_top + DLHdi_IxCmdLHd_PAR19)

// --------------------------------------------------------------------------------------------------

#define DLHdi_ANS_IDX_ATN        0
#define DLHdi_ANS_IDX_ANSID      1
#define DLHdi_ANS_IDX_LENLO      2
#define DLHdi_ANS_IDX_LENHI      3
#define DLHdi_ANS_IDX_CMDID      4
#define DLHdi_ANS_IDX_RES        5
#define DLHdi_ANS_IDX_base_top   6

// --------------------------------------------------------------------------------------------------

#define DLHdi_ANS_IDX_APP_PORT   6
#define DLHdi_ANS_IDX_APP_CODE   7

// --------------------------------------------------------------------------------------------------

typedef
  enum 
    {
    DLHdi_eSpErrCode_None         = 0,
    DLHdi_eSpErrCode_NoFreeMemory = 0,
    DLHdi_eSpErrCode_FatalError   = 1,
    DLHdi_eSpErrCode_NoAck        = 2,
    DLHdi_eSpErrCode_NoResources  = 3,
    DLHdi_eSpErrCode_Blocked      = 4,
    DLHdi_eSpErrCode_Unknown      = 5
    } DLHdi_eSpErrCode;
    
// --------------------------------------------------------------------------------------------------

#define DLHdi_ANS_IDX_SP_ERR      6
#define DLHdi_ANS_IDX_SP_ROUTED   7
#define DLHdi_ANS_IDX_SP_RESERVED 8
#define DLHdi_ANS_IDX_SP_ANSNO    9
#define DLHdi_ANS_IDX_SP_SESLO    10
#define DLHdi_ANS_IDX_SP_SESHI    11
#define DLHdi_ANS_IDX_SP_top      12

// --------------------------------------------------------------------------------------------------

#define DLHdi_HdSz_CTR                4
#define DLHdi_HdSz_ANS_CTR            DLHdi_HdSz_CTR
#define DLHdi_HdSz_ANS_BSALL          6
#define DLHdi_HdSz_ANS_APALL          8

#define DLHdi_HdSz_ANS_SPV1LINE_A0    2
#define DLHdi_HdSz_ANS_SPV1LINE_A1    4

#define DLHdi_HdSz_ANS_SPV1ALL_A0     (DLHdi_HdSz_ANS_CTR + DLHdi_HdSz_ANS_SPV1LINE_A0)
#define DLHdi_HdSz_ANS_SPV1ALL_A1     (DLHdi_HdSz_ANS_CTR + DLHdi_HdSz_ANS_SPV1LINE_A1)

#define DLHdi_HdSz_ANS_SPV2LINE       8  
#define DLHdi_HdSz_ANS_SPV2ALL        (DLHdi_HdSz_ANS_CTR + DLHdi_HdSz_ANS_SPV2LINE)

#define DLHdi_ANS_HDMAXSIZE           16

// --------------------------------------------------------------------------------------------------

#define DLHdi_ANS_AHDTOP_CMD_NOP                   (DLHdi_ANS_IDX_base_top)         
#define DLHdi_ANS_AHDTOP_CMD_Reset                 (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_GetVersion            (DLHdi_ANS_IDX_base_top + 3)
#define DLHdi_ANS_AHDTOP_CMD_Start                 (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_GetFreeMem            (DLHdi_ANS_IDX_base_top + 4)    
#define DLHdi_ANS_AHDTOP_CMD_Legacy                (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SetModulation         (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SetRepeats            (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SendControlFrame      (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SendPacketV1          (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SendPacketV2          (DLHdi_ANS_IDX_SP_top)
#define DLHdi_ANS_AHDTOP_CMD_Application           (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SetPhyCfg             (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SetAddress            (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SetPredefParam        (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SetRxType             (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_GetDebugInfo          (DLHdi_ANS_IDX_base_top + 4)
#define DLHdi_ANS_AHDTOP_CMD_GoOnLine              (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_GoOffLine             (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_ShutDown              (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_ReadStorage           (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_WriteStorage          (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_GetAddress            (DLHdi_ANS_IDX_base_top + 4)
#define DLHdi_ANS_AHDTOP_CMD_WriteParamTable       (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_ReadParamTable        (DLHdi_ANS_IDX_base_top)    
#define DLHdi_ANS_AHDTOP_CMD_Boot_SetMode          (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Boot_SetModeOvr       (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Boot_SetDefault       (DLHdi_ANS_IDX_base_top)    
#define DLHdi_ANS_AHDTOP_CMD_Boot_BeginDwl         (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Boot_EndDwl           (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Boot_DwlPart          (DLHdi_ANS_IDX_base_top)      
#define DLHdi_ANS_AHDTOP_CMD_ReadEEAbs             (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_WriteEEAbs            (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Repeater_SetEnable    (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Repeater_AddEntry     (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Repeater_GetSizes     (DLHdi_ANS_IDX_base_top + 4)
#define DLHdi_ANS_AHDTOP_CMD_Repeater_ReadEntry    (DLHdi_ANS_IDX_base_top + 8)
#define DLHdi_ANS_AHDTOP_CMD_Repeater_ClearRoutes  (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Repeater_SaveRoutes   (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_Repeater_DeleteEntry  (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SaveCurrentParamTable (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_SetOneCfgParam        (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_GetOneCfgParam        (DLHdi_ANS_IDX_base_top + 2)
#define DLHdi_ANS_AHDTOP_CMD_SetShellParam         (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_ReadAplDescriptor     (DLHdi_ANS_IDX_base_top)
#define DLHdi_ANS_AHDTOP_CMD_WriteAplDescriptor    (DLHdi_ANS_IDX_base_top)           

// --------------------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------
// send packet V2 command line header indices

#define DLHdi_Ix_LH_SpV2_PRTY         0
#define DLHdi_Ix_LH_SpV2_SERV         1
#define DLHdi_Ix_LH_SpV2_NETLO        2
#define DLHdi_Ix_LH_SpV2_NETHI        3
#define DLHdi_Ix_LH_SpV2_SRCLO        4
#define DLHdi_Ix_LH_SpV2_SRCHI        5
#define DLHdi_Ix_LH_SpV2_TGTLO        6
#define DLHdi_Ix_LH_SpV2_TGTHI        7 
#define DLHdi_Ix_LH_SpV2_HOP          8
#define DLHdi_Ix_LH_SpV2_GAIN         9
#define DLHdi_Ix_LH_SpV2_STAGLO       10
#define DLHdi_Ix_LH_SpV2_STAGHI       11 
#define DLHdi_Ix_LH_SpV2_TGTPORT      12
#define DLHdi_Ix_LH_SpV2_RESERVED     13
#define DLHdi_Ix_LH_SpV2_top          14

// send packet V2 command all headers indices

#define DLHdi_Ix_AH_SpV2_ATN          0
#define DLHdi_Ix_AH_SpV2_ID           1
#define DLHdi_Ix_AH_SpV2_LENLO        2

⌨️ 快捷键说明

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