从28388例程-echoBackSolution去理解EnterCAT原理

概述:

使用开发板型号:28388D
CCS版本:CCS9
S-S-C工具使用建议参考:EnterCAT工具使用
使用的例程路径:c2000\C2000Ware\libraries\communications\Ethercat\f2838x\examples\f2838x_cpu1_echoback_solution

重点理解(站在ESC的角度):

  1. 输入数据映射(ESC需要发送的数据映射)?
  2. 数据如何处理(主业务逻辑)?
  3. 输出数据映射(ESC需要接收的数据映射)?
  4. 如何自己编辑和生成EnterCAT的XML字典配置文件?

下面

1. 输出数据映射(ESC需要接收的数据映射)

概述:

代码:

/**
\brief    This function will copies the outputs from the
 ESC memory to the local memory.
        This function is only called in case of an SM2 
        (output process data) event.
	大致意思:从ESC存储区拷贝数据到本地存储区(DSP)
	此方法将在SM2事件触发时调用
	补充:
	SM事件
		数据帧到达每一个ESC时会产生一个SM事件,并且触发一个SM中断
*/
void PDO_OutputMapping(void)
{
	SetpointValues0x7000.Value1 = *pData;
	pData++;
	SetpointValues0x7000.Value2 = *pData;
}

2. 数据如何处理(主业务逻辑)

void APPL_Application(void){
	//数据处理示例
	Results0x6000.Result1 += Parameters0x8000.Inc1;
	Results0x6000.Result2 =
	SetpointValues0x7000.Value1+SetpointValues0x7000.Value2;
}

2. 输入数据映射(ESC需要发送的数据映射)

void APPL_InputMapping(UINT16* pData)
{
	*pData = Results0x6000.Result1;
	pData++;
	*pData = Results0x6000.Result2;
	pData++;
	*pData = Results0x6000.Toggle;
}

提问:

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
高级例程-基于两个mini板的CAN通讯是一种使用CAN(Controller Area Network)协议进行通信的方式。CAN是一种面向实时的通信协议,常用于车载系统、工业自动化、航空航天等领域。 在本例程中,我们使用两个mini板,一个作为发送方,一个作为接收方。两个mini板通过CAN总线相连,利用CAN通信协议进行数据的交换。 首先,我们需要正确配置两个mini板的CAN通信参数,包括波特率和CAN标识符等。然后,发送方通过CAN总线发送数据帧,包含了数据和标识符。接收方监听CAN总线上的数据帧,如果接收到与自身标识符匹配的数据帧,则接收方会解析数据并进行相应的操作。 这个例程可以实现不同设备之间的数据交换和控制。例如,我们可以将一个mini板作为温度传感器,实时采集环境温度,并将数据通过CAN发送给另一个mini板,作为数据接收方。接收方可以根据接收到的温度数据,进行相应的控制,例如触发报警、控制风扇等。 使用高级例程-基于两个mini板的CAN通讯,可以简化数据传输和通信过程,提高系统的可靠性和实时性。同时,CAN通信协议也具有良好的抗干扰性能,适用于工业环境等复杂场景。 总之,高级例程-基于两个mini板的CAN通讯是一种基于CAN协议的通信方式,可以实现不同设备之间的数据传输和控制。它具有高可靠性、实时性和抗干扰性等优点,在各种应用领域有着广泛的应用前景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值