一、前言
该笔记的程序:github
二、实验目的
CANopen从站有一个变量tx_Value,映射到TPDO1上。接着,当变量tx_Value发生变化时,通过TPDO1发送出去,滤波时间为200ms。
三、对象字典OD
跟上一章节一样,创建一个变量tx_Value。
通过变量tx_Value映射到TPDO1上。
Transmission Type必须设置0xFF,然后Inhibit Time设置2000,单位0.1ms的话,相当于滤波200ms。如下图所示:
最后,保存,将对象字典生成c代码。
四、TPDO1数据变化发送,滤波时间200ms
4.1、main.c
如上图所示,相当于产生一个数据变化的事件。
按照程序的意思,变量tx_Value每10ms累加1。相当于这个数值(事件)每10ms变化一次。
在Watch窗口下,确实能看到tx_Value一直在变化。
4.2、让CANopen从站进入操作状态
文章来源:https://www.toymoban.com/news/detail-415710.html
4.3、TPDO1的CAN数据包
如上图所示,TPDO1的发送间隔是200ms,等于滤波时间。
虽然变量tx_Value每10ms变化一次,又因为滤波时间为200ms,所以TPDO1最终是200ms发送一次出来。文章来源地址https://www.toymoban.com/news/detail-415710.html
到了这里,关于CANopen | 对象字典OD 07 - 创建对象字典变量,变量变化时发送TPDO1,滤波时间200ms的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!