CANOpen紧急报文

19 篇文章 3 订阅 ¥299.90 ¥399.90
CANOpen紧急报文在设备出现错误时触发,通过错误表记录并报告主站。文章详细介绍了紧急报文的初始化、停止、发送、错误发生、错误恢复和处理流程,涉及错误码、错误掩码等关键概念。
摘要由CSDN通过智能技术生成

紧急报文,当设备内部发生错误时触发该对象,即发送设备内部错误代码。
在canopen内部维持一个错误表,对发生的错误进行记录。当错误发生后从表中查看该错误是否已经发生并未被解决时,则报告主站;如果错误被解决则从表中清除,当所有错都被解决,则报告主站。
canopen记录了所有错误的历史记录,当前是否有错误发生,所有错误掩码,目前为止发生过的错误种数。
/* 紧急报文初始化 */
void emergencyInit(CO_Data *d)
{
	/* 按索引号0x1003和子索引号0x00注册字典入口的回调函数 */
  RegisterSetODentryCallBack(d, 0x1003, 0x00, &OnNumberOfErrorsUpdate);

	/* 错误个数 */
  *d->error_number = 0;
}

/* 紧急报文停止 */
void emergencyStop(CO_Data* d)
{
  
}

/* 发送紧急报文 */
UNS8 sendEMCY(CO_Data *d, UNS16 errCode, UNS8 errRegister, const void *Specific, UNS8 SpecificLength)
{
	Message m;
  
	MSG_WAR(0x3051, "sendEMCY", 0);
  
	/* cob_
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值