RegisterMailboxCallback

注册一个函式,当信箱消息进入时,KINGSTAR 子系统将呼叫该函数。

语法

KsError RegisterMailboxCallback(
     MailboxCallback callback,
     PVOID context
);

参数

callback:信箱讯息进来时将呼叫的函式指标。请见 MailboxCallback 类型。

context:若需要,传递给回呼函式的指标。

回传值

如果此函式执行成功,会回传 errNoError,否则会传回错误码。如需更多有关错误码的资讯,请参阅 KsError 清单。

可用的 EtherCAT 状态

ecatInit, ecatBoot, ecatPreOP, ecatSafeOP, ecatOP

范例

复制
/*
*    Assume that there is already a callback function in namespace userApp:
*    namespace userApp
*    {
*        static UCHAR VoEData[2048] = { 0 };
*
*        int mbCallBack(PVOID Context, INT SlaveId, MailboxType Type, MailboxData Data)
*        {
*            if (Type == MailboxType::mbVoe)
*                memcpy((void*)VoEData, (void*)Data.Voe.Data, Data.Voe.DataLength);
*
*            return 0;
*        }
*    }
*/
MailboxCallback callBack = userApp::mbCallBack;
nRet = RegisterMailboxCallback(callBack, NULL);

使用需求

  RT Win32
最低支援版本 4.2 4.2
标头档 ksapi.h ksapi.h
程式库 KsApi_Rtss.lib KsApi.lib

参见

Create

RegisterCallback

Start