📄 fir.h
字号:
#ifndef _IR_FIR_H_
#define _IR_FIR_H_
#include <windows.h>
#include <types.h>
#include <memory.h>
#include <excpt.h>
//#include <nkintr.h>
//#include <oalintr.h>
#include <drvlib.h>
#include <vr4122io.h>
//#include <eagle.h>
#include <linklist.h>
#include <ndis.h>
#include <settings.h>
#include "device.h"
#define PSIUREG8(x) (volatile unsigned char *)(pVRIO + (x))
#define PSIUREG16(x) (volatile unsigned short *)(pVRIO + (x))
#define PFIRREG16(x) (volatile unsigned short *)(pVRIO + (x))
#define PDMAREG16(x) (volatile unsigned short *)(pVRIO + (x))
#define PDMAREG32(x) (volatile unsigned long *)(pVRIO + (x))
#define PCMUREG16(x) (volatile unsigned short *)(pVRIO + (x))
#define PGIUREG16(x) (volatile unsigned short *)(pVRIO + (x))
#define SIUREG8(x) (*PSIUREG8(x))
#define SIUREG16(x) (*PSIUREG16(x))
#define FIRREG16(x) (*PFIRREG16(x))
#define DMAREG16(x) (*PDMAREG16(x))
#define DMAREG32(x) (*PDMAREG32(x))
#define CMUREG16(x) (*PCMUREG16(x))
#define GIUREG16(x) (*PGIUREG16(x))
#define IRDA_DMA_BUF_SIZE 0x0800
#define IRDA_DMA_PAGE_SIZE 0x0400
#define FIRFRSTRREG_FRST 0x0001
#define FIRDPINTRREG_FDPINT1 0x0001
#define FIRDPINTRREG_FDPINT2 0x0002
#define FIRDPINTRREG_FDPINT3 0x0004
#define FIRDPINTRREG_FDPINT4 0x0008
#define FIRDPINTRREG_FDPINT5 0x0010
#define FIRDPCNTRREG_FDPCNT 0x0001
#define FIRIMRREG_RX_RD_RQ 0x0001
#define FIRIMRREG_TX_WR_RQ 0x0002
#define FIRIMRREG_TX_END 0x0004
#define FIRIMRREG_RX_END 0x0008
#define FIRIMRREG_DMA_END 0x0010
#define FIRIMRREG_RX_VALID 0x0020
#define FIRIMRREG_TX_ERR 0x0040
#define FIRIMRREG_TX_ABORT 0x0080
#define FIRFSRREG_TX_STOP 0x0001
#define FIRFSRREG_RXF_CLR 0x0002
#define FIRFSRREG_TXF_CLR 0x0004
#define FIRFSRREG_F_SIZE_64 0x0008
#define FIRFSRREG_F_SIZE_32 0x0000
#define FIRFSRREG_TX_TH_26_48 0x0030
#define FIRFSRREG_TX_TH_16_32 0x0020
#define FIRFSRREG_TX_TH_8_16 0x0010
#define FIRFSRREG_TX_TH_1_1 0x0000
#define FIRFSRREG_RX_TH_26_48 0x00c0
#define FIRFSRREG_RX_TH_16_32 0x0080
#define FIRFSRREG_RX_TH_4_8 0x0040
#define FIRFSRREG_RX_TH_1_1 0x0000
#define FIRIRSR1REG_IRDA_EN 0x0080
#define FIRIRSR1REG_IRDA_MD 0x0002
#define FIRIRSR1REG_MIR_MD 0x0001
#define FIRIRSR1REG_FIR 0x0000
#define FIRIRSR1REG_MIR_F 0x0002
#define FIRIRSR1REG_MIR_H 0x0003
#define FIRCRCSRREG_DATA_INV 0x0001
#define FIRCRCSRREG_CRC_NV 0x0002
#define FIRCRCSRREG_NON_CRC 0x0004
#define FIRCRCSRREG_DPLL_DIS 0x0010
#define FIRCRCSRREG_4PPM_DIS 0x0020
#define FIRCRCSRREG_RX_EN 0x0040
#define FIRCRCSRREG_TX_EN 0x0080
#define FIRFIRCRREG_F_WIDTH_S1_D7 0x0000
#define FIRFIRCRREG_F_WIDTH_S2_D8 0x0001
#define FIRFIRCRREG_F_WIDTH_S3_D9 0x0002
#define FIRFIRCRREG_F_WIDTH_S4_D10 0x0003
#define FIRFIRCRREG_F_WIDTH_S5_D11 0x0004
#define FIRFIRCRREG_F_WIDTH_S6_D12 0x0005
#define FIRFIRCRREG_W_PULSE_7_8 0x0000
#define FIRFIRCRREG_W_PULSE_8_9 0x0008
#define FIRFIRCRREG_W_PULSE_9_10 0x0010
#define FIRFIRCRREG_W_PULSE_10_11 0x0018
#define FIRFIRCRREG_PA_LEN_1 0x0020
#define FIRFIRCRREG_PA_LEN_2 0x0040
#define FIRFIRCRREG_PA_LEN_4 0x0060
#define FIRFIRCRREG_PA_LEN_16 0x0080
#define FIRFIRCRREG_PA_LEN_32 0x00e0
#define FIRMIRCRREG_M_WIDTH_1 0x0000
#define FIRMIRCRREG_M_WIDTH_2 0x0001
#define FIRMIRCRREG_M_WIDTH_3 0x0002
#define FIRMIRCRREG_M_WIDTH_4 0x0003
#define FIRMIRCRREG_M_WIDTH_5 0x0004
#define FIRMIRCRREG_M_WIDTH_6 0x0005
#define FIRMIRCRREG_M_WIDTH_7 0x0006
#define FIRMIRCRREG_M_WIDTH_8 0x0007
#define FIRMIRCRREG_M_WIDTH_9 0x0008
#define FIRMIRCRREG_M_WIDTH_10 0x0009
#define FIRMIRCRREG_M_WIDTH_11 0x000a
#define FIRMIRCRREG_M_WIDTH_12 0x000b
#define FIRMIRCRREG_M_WIDTH_13 0x000c
#define FIRMIRCRREG_M_WIDTH_14 0x000d
#define FIRMIRCRREG_M_WIDTH_15 0x000e
#define FIRMIRCRREG_M_WIDTH_16 0x000f
#define FIRMIRCRREG_M_WIDTH_17 0x0010
#define FIRMIRCRREG_M_WIDTH_18 0x0011
#define FIRMIRCRREG_M_WIDTH_19 0x0012
#define FIRMIRCRREG_M_WIDTH_20 0x0013
#define FIRMIRCRREG_M_WIDTH_21 0x0014
#define FIRMIRCRREG_M_WIDTH_22 0x0015
#define FIRMIRCRREG_M_WIDTH_23 0x0016
#define FIRMIRCRREG_M_WIDTH_24 0x0017
#define FIRMIRCRREG_M_WIDTH_25 0x0018
#define FIRMIRCRREG_M_WIDTH_26 0x0019
#define FIRMIRCRREG_M_WIDTH_27 0x001a
#define FIRMIRCRREG_M_WIDTH_28 0x001b
#define FIRMIRCRREG_M_WIDTH_29 0x001c
#define FIRMIRCRREG_M_WIDTH_30 0x001d
#define FIRMIRCRREG_M_WIDTH_31 0x001e
#define FIRMIRCRREG_M_WIDTH_32 0x001f
#define FIRMIRCRREG_STA_LEN_1 0x0020
#define FIRMIRCRREG_STA_LEN_2 0x0040
#define FIRMIRCRREG_STA_LEN_4 0x0060
#define FIRMIRCRREG_STA_LEN_16 0x0080
#define FIRMIRCRREG_STA_LEN_32 0x00e0
#define FIRDMACRREG_DEMAND_1 0x0000
#define FIRDMACRREG_DEMAND_2 0x0001
#define FIRDMACRREG_DEMAND_3 0x0002
#define FIRDMACRREG_DEMAND_4 0x0003
#define FIRDMACRREG_DEMAND_5 0x0004
#define FIRDMACRREG_DEMAND_6 0x0005
#define FIRDMACRREG_DEMAND_7 0x0006
#define FIRDMACRREG_DEMAND_FREE 0x0007
#define FIRDMACRREG_TRANS_MD_MEM2TDR 0x0000
#define FIRDMACRREG_TRANS_MD_RDR2MEM 0x0040
#define FIRDMACRREG_ACES_MD 0x0080
#define FIRDMAERREG_DMA_EN 0x0001
#define FIRDMAERREG_DMA_BUSY 0x0002
#define FIRTXIRREG_TXF_EMP 0x0001
#define FIRTXIRREG_TXF_FULL 0x0002
#define FIRTXIRREG_TXF_UNDR 0x0004
#define FIRTXIRREG_TXTH_OV 0x0010
#define FIRTXIRREG_LAST_TFL 0x0020
#define FIRTXIRREG_TX_BUSY 0x0080
#define FIRRXIRREG_RXF_EMP 0x0001
#define FIRRXIRREG_RXF_FULL 0x0002
#define FIRRXIRREG_RX_TH_O 0x0010
#define FIRRXIRREG_LAST_RFL 0x0020
#define FIRRXIRREG_END_DATA 0x0040
#define FIRRXIRREG_RX_BUSY 0x0080
#define FIRIFRREG_RX_RD_RQ 0x0001
#define FIRIFRREG_TX_WR_RQ 0x0002
#define FIRIFRREG_TX_END 0x0004
#define FIRIFRREG_RX_END 0x0008
#define FIRIFRREG_DMA_END 0x0010
#define FIRIFRREG_RX_VALID 0x0020
#define FIRIFRREG_TX_ERR 0x0040
#define FIRIFRREG_TX_ABORT 0x0080
#define FIRRXSTSREG_MRXF_OV 0x0002
#define FIRRXSTSREG_ABORT 0x0004
#define FIRRXSTSREG_CRC_ERR 0x0008
#define FIRRXSTSREG_RXF_OV 0x0010
#define FIRRXSTSREG_VALID 0x0080
#define DMAMSKREG_DMAMSKFOUT 0x0001
NDIS_STATUS
InitializeFIR(
IN OUT PIR_DEVICE pIrDevice
);
NDIS_STATUS
DeinitializeFIR(
IN OUT PIR_DEVICE pIrDevice
);
NDIS_STATUS
StartFIR(
IN PIR_DEVICE pIrDevice
);
NDIS_STATUS
StopFIR(
IN PIR_DEVICE pIrDevice
);
NDIS_STATUS
SendFIR(
IN PIR_DEVICE pIrDevice
);
BOOL
RecvFIR(
PIR_DEVICE pIrDevice,
PRX_BUFFER pRxBuf
);
NDIS_STATUS
FIRSetSpeed(
IN DWORD dwNewSpeed
);
VOID
FIRMediaBusy(
IN PIR_DEVICE pIrDevice
);
#endif // _IR_FIR_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -