📄 epa.c
字号:
EPAErrEntry, EPAErrEntry, EPAErrEntry, Get_Attrib_Pos_Input, EPAErrEntry, Set_Attrib_Pos_Input, Clr_Attrib_Pos_Input, EPAErrEntry,
EPAErrEntry, EPAErrEntry, Domain_DownLoad_Pos_Input, Domain_UpLoad_Pos_Input, Read_Pos_Input, Write_Pos_Input, EPAErrEntry, EPAErrEntry,
Ack_Noti_Pos_Input, Alter_Monitor_Pos_Input, EPAErrEntry, FS_ComOpen_Pos_Input, FS_ComClose_Pos_Input, EPAErrEntry, FS_Maintain_Pos_Input, FS_MaintainReq_Pos_Input,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, Get_Attrib_Neg_Input, EPAErrEntry, Set_Attrib_Neg_Input, Clr_Attrib_Neg_Input, EPAErrEntry,
EPAErrEntry, EPAErrEntry, Domain_DownLoad_Neg_Input, Domain_UpLoad_Neg_Input, Read_Neg_Input, Write_Neg_Input, EPAErrEntry, EPAErrEntry,
Ack_Noti_Neg_Input, Alter_Monitor_Neg_Input, EPAErrEntry, FS_ComOpen_Neg_Input, FS_ComClose_Neg_Input, EPAErrEntry, FS_Maintain_Neg_Input, FS_MaintainReq_Neg_Input,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, Ann_Input, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, Distribute_Input, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
};
#endif // NS_MODULE_EN == 0 && FS_MODULE_EN > 0
#if NS_MODULE_EN == 0 && FS_MODULE_EN == 0
static EPA_ENTRY EPA_Vec[256] =
{
EPAErrEntry, Find_Tag_Query_Input, Find_Tag_Reply_Input, Get_Attrib_Input, Ann_Input, Set_Attrib_Input, Clr_Attrib_Input, EPAErrEntry,
EPAErrEntry, EPAErrEntry, Domain_DownLoad_Input, Domain_UpLoad_Input, Read_Input, Write_Input, Distribute_Input, Event_Noti_Input,
Ack_Noti_Input, Alter_Monitor_Input, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
CSAnnInput, CSEndAnnInput, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, Get_Attrib_Pos_Input, EPAErrEntry, Set_Attrib_Pos_Input, Clr_Attrib_Pos_Input, EPAErrEntry,
EPAErrEntry, EPAErrEntry, Domain_DownLoad_Pos_Input, Domain_UpLoad_Pos_Input, Read_Pos_Input, Write_Pos_Input, EPAErrEntry, EPAErrEntry,
Ack_Noti_Pos_Input, Alter_Monitor_Pos_Input, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, Get_Attrib_Neg_Input, EPAErrEntry, Set_Attrib_Neg_Input, Clr_Attrib_Neg_Input, EPAErrEntry,
EPAErrEntry, EPAErrEntry, Domain_DownLoad_Neg_Input, Domain_UpLoad_Neg_Input, Read_Neg_Input, Write_Neg_Input, EPAErrEntry, EPAErrEntry,
Ack_Noti_Neg_Input, Alter_Monitor_Neg_Input, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, Ann_Input, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, Distribute_Input, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry, EPAErrEntry,
};
#endif // NS_MODULE_EN == 0 && FS_MODULE_EN == 0
void EPAInit(void) {
uint8 err;
gDefNI = GetDefNI();
#if CS_MODULE_EN > 0
CSInit();
#endif // CS_MODULE_EN
MIBInit();
gpEPAMsgQ = OSQCreate(gEPAMsgQTbl, MSG_AMOUNT_EPA);
OSTaskCreate(EPAInput, (void*)0, (void*)(&EPAStack[STACK_SIZE_EPA]), TASK_PRIORITY_EPA);
gpEPAMsgSem = OSSemCreate(MSG_AMOUNT_EPA);
gpEPAMsgMCB = OSMemCreate(gEPAMsgPool, MSG_AMOUNT_EPA, sizeof(EPAMsg), &err);
#if FS_MODULE_EN > 0
FSInit();
#endif // FS_MODULE_EN
#if NS_MODULE_EN > 0
NSInit();
#endif // NS_MODULE_EN
MacroInit();
}
void EPAOutput(PSock psock, uint8 srv_id, uint8 com_type, uint16 msg_id) {
ShiftSock(psock, PROTOCOL_EPA_FB, PROTOCOL_EPA);
psock->payload[0] = srv_id;
psock->payload[1] = com_type;
psock->payload[2] = 0x20;
psock->payload[3] = 0x20;
h2n16(psock->length, psock->payload + 4);
h2n16(msg_id, psock->payload + 6);
psock->src_port = EPA_PORT;
UDPOutput(psock);
}
static void EPAInput(void *pdata) {
uint16 msg_id;
uint8 err, com_type, srv_id;
PSock psock;
while(1) {
psock = (PSock)OSQPend(gpEPAMsgQ, TASK_TIMEOUT_EPA, &err);
srv_id = psock->payload[0];
com_type = psock->payload[1];
n2h16(psock->payload + 4, &psock->length);
n2h16(psock->payload + 6, &msg_id);
ShiftSock(psock, PROTOCOL_EPA, PROTOCOL_EPA_FB);
(EPA_Vec[srv_id])(psock, com_type, msg_id);
}
}
static void EPAErrEntry(PSock psock, uint8 com_type, uint16 msg_id) {
PutSock(psock);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -