OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
楼主: whj467467274672

CANOPEN协议栈的移植以及使用

  [复制链接]

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-1-23 21:36:23 | 显示全部楼层
whj467467274672 发表于 2019-1-15 08:50
第一个心跳的问题,你看下我前面给别人的回答,有个地方需要修改定时器的最大计数器,你看看你用的是不是 ...

头像换了差点没认出来!
1.关于心跳时间不准的问题,在timerscfg.h中有MS_TO_TIMEVAL(ms)和US_TO_TIMEVAL(us)两个宏定义没有修改为对应心跳的ms单位
2.已经可以通过PC端发送相应的数据来改变RPDO中映射到的变量值,即已经可以在程序中来通过变量的值对LED的开关

不过也遇到新的问题需要请教:
1.TPDO映射的数据怎么发送出去?
2.我在从预处理模式切换为操作模式时,会收到TPDO的数据,不过也只有一次,为什么会这样?
3.怎么样才能通过PC端的命令回读到TPDO和RPDO的映射值呢?

非常感谢楼主!
正点原子逻辑分析仪DL16劲爆上市
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-1-24 08:58:11 | 显示全部楼层
NewGuard 发表于 2019-1-23 21:36
头像换了差点没认出来!
1.关于心跳时间不准的问题,在timerscfg.h中有MS_TO_TIMEVAL(ms)和US_TO_TIMEVA ...

1,在对象字典里面选择好TPDO映射的数据的位置,比如说索引0x2000 子索引0x01应该就可以了。在多说一点比如说0x1800是TPDO参数那么你在这个里面设置好你想怎么发送TPDO1,然后你需要在0x1a00设置数据映射到哪里,映射的地址就是我前面说的0x2000  0x01,这样应该就能解决你的疑问。
2,你看下的设置的TPDO的发送类型,这个你可以自己看下资料,设置成你需要的状态。
3,PDO叫过程数据,他是主动发送的,板子发过来的对他而言是TPDO,对于PC就是RPDO,你这个现在不理解是因为你还没做2个开发板通讯。你在查第二个问题的时候应该能看到关于第三个问题的答案。
最后,我有小小的请求,你这边整理到的资料可否在这个帖子共享一下。让希望学习CANOPEN的人能更方便的在这个帖子学习。
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-1-24 08:58:38 | 显示全部楼层
NewGuard 发表于 2019-1-23 21:36
头像换了差点没认出来!
1.关于心跳时间不准的问题,在timerscfg.h中有MS_TO_TIMEVAL(ms)和US_TO_TIMEVA ...

1,在对象字典里面选择好TPDO映射的数据的位置,比如说索引0x2000 子索引0x01应该就可以了。在多说一点比如说0x1800是TPDO参数那么你在这个里面设置好你想怎么发送TPDO1,然后你需要在0x1a00设置数据映射到哪里,映射的地址就是我前面说的0x2000  0x01,这样应该就能解决你的疑问。
2,你看下的设置的TPDO的发送类型,这个你可以自己看下资料,设置成你需要的状态。
3,PDO叫过程数据,他是主动发送的,板子发过来的对他而言是TPDO,对于PC就是RPDO,你这个现在不理解是因为你还没做2个开发板通讯。你在查第二个问题的时候应该能看到关于第三个问题的答案。
最后,我有小小的请求,你这边整理到的资料可否在这个帖子共享一下。让希望学习CANOPEN的人能更方便的在这个帖子学习。
回复 支持 反对

使用道具 举报

21

主题

45

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
252
金钱
252
注册时间
2018-7-16
在线时间
13 小时
发表于 2019-1-24 11:52:40 | 显示全部楼层
收藏了,多谢楼主。
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-1-24 12:38:00 | 显示全部楼层
whj467467274672 发表于 2019-1-24 08:58
1,在对象字典里面选择好TPDO映射的数据的位置,比如说索引0x2000 子索引0x01应该就可以了。在多说一点比 ...

我把问题解决后,现在还差PDO的事件发送还没搞定,解决后我发个总结出来
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-1-24 14:12:40 | 显示全部楼层
本帖最后由 NewGuard 于 2019-1-24 14:30 编辑
whj467467274672 发表于 2019-1-24 08:58
1,在对象字典里面选择好TPDO映射的数据的位置,比如说索引0x2000 子索引0x01应该就可以了。在多说一点比 ...

1.看了资料,PDO多用两种类型事件和时间触发发送协议为0x01和0xFE
2.我这边设置了两个板子TPDO参数和映射值,一个是事件触发另一个是时间触发
3.事件触发只有在预操作模式切换为操作模式时返回了一次数据,后面即使通过SDO的方式改变事件触发的变量值,也不会有返回数据的
4.时间触发的PDO根本就没有返回数据,好奇怪

设置参数如下:

2019-01-24_140635.jpg
2019-01-24_142756.jpg
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-1-24 14:29:43 | 显示全部楼层
NewGuard 发表于 2019-1-24 14:12
1.看了资料,PDO多用两种类型事件和时间触发发送协议为0x01和0xFE
2.我这边设置了两个板子TPDO参数和映 ...

你把发送类型设置成0XFF 看看结果
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-1-24 14:35:20 | 显示全部楼层
whj467467274672 发表于 2019-1-24 14:29
你把发送类型设置成0XFF 看看结果

谢谢回答。修改为0xFF(设备子协议特定事件),好像没有效果。只在第一次模式切换时有数据返回
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-1-24 14:49:33 | 显示全部楼层
NewGuard 发表于 2019-1-24 14:35
谢谢回答。修改为0xFF(设备子协议特定事件),好像没有效果。只在第一次模式切换时有数据返回

/* index 0x1800 :   Transmit PDO 1 Parameter. */
UNS8 TLP_ObjDiction_highestSubIndex_obj1800 = 6; /* number of subindex - 1*/
UNS32 TLP_ObjDiction_obj1800_COB_ID_used_by_PDO = 0x180;        /* 384 */
UNS8 TLP_ObjDiction_obj1800_Transmission_Type = 0xFF;        /* 255 */
UNS16 TLP_ObjDiction_obj1800_Inhibit_Time = 0x0;        /* 0 */
UNS8 TLP_ObjDiction_obj1800_Compatibility_Entry = 0x0;        /* 0 */
UNS16 TLP_ObjDiction_obj1800_Event_Timer = 0xC8;        /* 200 */
UNS8 TLP_ObjDiction_obj1800_SYNC_start_value = 0x0;        /* 0 */
ODCallback_t TLP_ObjDiction_Index1800_callbacks[] =
这是我项目中截取的一部分配置。
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-1-24 15:31:47 | 显示全部楼层
whj467467274672 发表于 2019-1-24 14:49
/* index 0x1800 :   Transmit PDO 1 Parameter. */
UNS8 TLP_ObjDiction_highestSubIndex_obj1800 = 6; ...

1.我不确定我是不是找到问题原因了,Inhibit time的单位感觉像是*0.1s,把这个值设为0或者比Event time (*ms)的值小,就可以定时发送出PDO的数据了
2.但事件触发(SDO改变映射值)在Inhibit time和Event time设为0的且协议类型为FE FF情况下,还是无法触发其发出数据,不知道你是怎么解决这个问题的。

同样非常感谢楼主的无私帮助!
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-1-24 16:20:57 | 显示全部楼层
NewGuard 发表于 2019-1-24 15:31
1.我不确定我是不是找到问题原因了,Inhibit time的单位感觉像是*0.1s,把这个值设为0或者比Event time ( ...

我没用过事件发送,你找到原因了,可以告诉我一下。
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-1-26 09:34:44 | 显示全部楼层
本帖最后由 NewGuard 于 2019-1-26 10:00 编辑
whj467467274672 发表于 2019-1-24 16:20
我没用过事件发送,你找到原因了,可以告诉我一下。

我还是没搞定,也发帖了,好像没人指导,暂时先搁置着吧。
另外能否问下,之前都是从机模式,如果是主机模式,大概是一个怎样操作思路,
我看网上说主机检测到从机上线后,SDO配置从机参数、主机PDO的处理这些都
是需要自己写函数吗?我不知道怎么下手,有没有相应的例子给参看下,非常感谢!

另外我把从机的学习之路总结下,希望对有需要的人有些帮助,在此也感谢楼主的无私帮助。
1.我是基于HAL库STM32F407VET6,不过这个也不影响。
2.移植过程基本上都是按楼主的操作,当然编译时有报错的差不多都能解决。
3.另外有两个地方需要修改
  3.1 getElapsedTime()函数中的last_time_set = TimeCNT;应放在TimeDispatch()前面,这个也是前面的童鞋找到的问题所在。
  3.2 MS_TO_TIMEVAL和US_TO_TIMEVAL两个宏定义,需要修改为对应的中断时间,否则会对你的字典配置参数的ms和us单位有影响
  // The timer is incrementing every 1 ms.
  #define MS_TO_TIMEVAL(ms) ((ms) * 1)
  #define US_TO_TIMEVAL(us) ((us) / 1000)
4.上面完成后,编译没问题就可以作为从机功能使用了,主要是PDO的映射值,前面也有相应的图片,映射值说白了就是一些变量,这些变量就是你需要关心的地方,当然我目前只是从机,作为主机应该会多些内容吧
5.我把程序配置做一些截图,有疑问的我这边可以继续提供些许帮助,当然我有疏忽或错误的地方还望指出!




1.png
2.png
3.png
4.png
回复 支持 1 反对 0

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-1-26 13:26:58 | 显示全部楼层
本帖最后由 whj467467274672 于 2019-1-26 13:30 编辑
NewGuard 发表于 2019-1-26 09:34
我还是没搞定,也发帖了,好像没人指导,暂时先搁置着吧。
另外能否问下,之前都是从机模式,如果是主机 ...

在CANOPEN里面并没有严格的主从之分,更多的是生产者与消费者模型,你并不用过多的关心主从,大家常说的主从是指具有网络管理的那个站点认为是主站。
就算你不是主站你也是可以发送接收PDO,发送SDO。
如果你需要设置主站的话,你在创建对象字典的时候你选择MASTER就好了。但是你会发现他们一样的。你需要使用主站的话,我记得是有一些回调函数可以检测到哪些站点上线发送boot up的信号,剩下的主从就没什么区别了。不过我忘记是哪个回调函数了,你可以自己先找找看,回头我找到了,在这里回帖告诉你。
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-1-26 17:17:28 | 显示全部楼层
whj467467274672 发表于 2019-1-26 13:26
在CANOPEN里面并没有严格的主从之分,更多的是生产者与消费者模型,你并不用过多的关心主从,大家常说的 ...

1.check_and_start_node(d,nodeId);这个函数可以把上线的节点初始化,不过我是在proceedNODE_GUARD()里面添加了这个函数,不知道有没有问题
2.另外就是,如果主机SDO方式对从机配置,此时从机会响应SDO返回数据,我想问的是这个返回数据需要我们处理还是忽略掉,如果忽略的话,主机配置后的结果我们怎么知道,不一定每次都是成功的吧
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-1-28 17:07:05 | 显示全部楼层
NewGuard 发表于 2019-1-26 17:17
1.check_and_start_node(d,nodeId);这个函数可以把上线的节点初始化,不过我是在proceedNODE_GUARD()里 ...

1,我还没看,这个你自己试试
2,首先你要知道CAN硬件本身是带校验的,CAN一次最多发送8个字节,你用SD0发送16个字节怎么办?协议栈会自动帮你分帧,没记错的话第一个字节来表示。而且你用sdo对从站进行对写操作都会有返回值,你可以通过返回值来判断。
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-28 19:17:18 | 显示全部楼层
whj467467274672 发表于 2017-12-31 16:36
移植步骤:步骤一;在新建好的工程目录下新建文件夹CanFestival,再在CanFestival下新建文件夹driver、inc ...

你好,楼主大侠!
我用vs新建哪个项目呀,mfc还是32位控制台呀,感觉怪怪的,还有我用MCP2515的芯片哦,也可以来你这里移植吗?
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-28 19:52:18 | 显示全部楼层
NewGuard 发表于 2019-1-24 14:12
1.看了资料,PDO多用两种类型事件和时间触发发送协议为0x01和0xFE
2.我这边设置了两个板子TPDO参数和映 ...

你好,大侠,你是用说明原件移植楼主的源码呀,/*移植步骤:步骤一;在新建好的工程目录下新建文件夹CanFestival,再在CanFestival下新建文件夹driver、inc和src,再在inc文件夹下面新建stm32文件夹。
步骤二;将CanFestival-3-10\src目录下的dcf.c、emcy.c、lifegrd.c、lss.c、nmtMaster.c、nmtSlave.c、objacces.c、pdo.c、sdo.c、states.c、sync.c、timer.c共12个文件拷贝到                 CanFestival\src目录下*/
这是怎么新建的呀
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-28 20:10:23 | 显示全部楼层
whj467467274672 发表于 2017-12-31 16:36
移植步骤:步骤一;在新建好的工程目录下新建文件夹CanFestival,再在CanFestival下新建文件夹driver、inc ...

你好,楼主,这第1步是怎么实现的呀,怎么新建那么多文件夹的呀,vs可以吗
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-3-29 08:56:03 | 显示全部楼层
墨香余味 发表于 2019-3-28 20:10
你好,楼主,这第1步是怎么实现的呀,怎么新建那么多文件夹的呀,vs可以吗

第一步是说你得有一个可用的工程
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-30 08:29:20 | 显示全部楼层
whj467467274672 发表于 2019-3-29 08:56
第一步是说你得有一个可用的工程

恩,我新建一个MFC的解决方案啊,然后会出现头文件夹和源文件夹以及资源文件夹了。再新建文件夹的话也就是新建解决方案了就和上面的一样撒
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-30 08:47:34 | 显示全部楼层
whj467467274672 发表于 2019-3-29 08:56
第一步是说你得有一个可用的工程

你好,楼主,能具体数说下吗?还有一点我芯片的板子带有can接口,驱动器也带有can接口,然后直接用网线链接了,把您的这个移植过来就可以看到canopen实现过程是吗?

我目前只是把芯片收发数据实现了
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-3-30 10:37:50 | 显示全部楼层
墨香余味 发表于 2019-3-30 08:47
你好,楼主,能具体数说下吗?还有一点我芯片的板子带有can接口,驱动器也带有can接口,然后直接用网线链 ...

我GET不到你的点,你到底想干什么。我写的有这么难以理解吗?在你前面提问的一个人,也没遇到工程不知道如何建立的问题。
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-31 13:40:33 | 显示全部楼层
本帖最后由 墨香余味 于 2019-3-31 14:46 编辑
whj467467274672 发表于 2019-3-30 10:37
我GET不到你的点,你到底想干什么。我写的有这么难以理解吗?在你前面提问的一个人,也没遇到工程不知道 ...

恩,再试试,好像明白了。
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-31 14:12:46 | 显示全部楼层
whj467467274672 发表于 2019-3-30 10:37
我GET不到你的点,你到底想干什么。我写的有这么难以理解吗?在你前面提问的一个人,也没遇到工程不知道 ...

恩,第1步可以了,可是到第2步最后一句这解压包里没有你说那4个文件呀,名称都对应不上
/*将CanFestival-3-10\examples\TestMasterSlave目录下的TestSlave.c、TestSlave.h、TestMaster.h、TestMaster.c拷贝到canfestival\driver目               录下,并在该目录下新建 stm32_canfestival.c文件。*/
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-31 16:36:22 | 显示全部楼层
whj467467274672 发表于 2019-3-30 10:37
我GET不到你的点,你到底想干什么。我写的有这么难以理解吗?在你前面提问的一个人,也没遇到工程不知道 ...

谢谢,楼主的解答
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-3-31 16:41:19 | 显示全部楼层
NewGuard 发表于 2019-1-26 09:34
我还是没搞定,也发帖了,好像没人指导,暂时先搁置着吧。
另外能否问下,之前都是从机模式,如果是主机 ...

你好,大侠!请问下,你是建立的什么工程呀,比如:MFC,智能设备或者32位控制台应用程序
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-4-1 09:43:37 | 显示全部楼层
墨香余味 发表于 2019-3-31 16:41
你好,大侠!请问下,你是建立的什么工程呀,比如:MFC,智能设备或者32位控制台应用程序

我这是在STM32上跑的工程,如果你想建立一个在PC上跑的 程序,我就帮不上你了,我没有操作经验
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-1 15:55:53 | 显示全部楼层
本帖最后由 墨香余味 于 2019-4-1 16:06 编辑
whj467467274672 发表于 2019-4-1 09:43
我这是在STM32上跑的工程,如果你想建立一个在PC上跑的 程序,我就帮不上你了,我没有操作经验

恩,我知道你的那个是在STM32芯片上跑的工程,也是用vs的呀。只是把板子的固件下载到pc上安装就可以了,可以来收发数据的




回复 支持 0 反对 2

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-1 16:54:14 | 显示全部楼层
本帖最后由 墨香余味 于 2019-4-1 17:13 编辑
whj467467274672 发表于 2019-4-1 09:43
我这是在STM32上跑的工程,如果你想建立一个在PC上跑的 程序,我就帮不上你了,我没有操作经验

还有一点,我按照你说的步骤1、2但是在我的工程里都不显示那些文件呢?
11.png
22.png
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-1 16:55:39 | 显示全部楼层
后面的我弄了个eds文件可以看到对象字典
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-1 18:06:39 | 显示全部楼层
本帖最后由 墨香余味 于 2019-4-1 18:46 编辑

不知道啥原因,错误一大把。。。。 2.png
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-1 19:32:15 | 显示全部楼层
NewGuard 发表于 2019-1-26 09:34
我还是没搞定,也发帖了,好像没人指导,暂时先搁置着吧。
另外能否问下,之前都是从机模式,如果是主机 ...

你好,大侠,能看看我的这些错误吗?我都包含头文件的,编译的时候出来那么多错误。。。这个和版本有关的话,请问您是用的哪个版本呀
回复 支持 反对

使用道具 举报

27

主题

427

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4356
金钱
4356
注册时间
2017-5-30
在线时间
578 小时
 楼主| 发表于 2019-4-2 08:46:54 | 显示全部楼层
墨香余味 发表于 2019-4-1 19:32
你好,大侠,能看看我的这些错误吗?我都包含头文件的,编译的时候出来那么多错误。。。这个和版本有关的 ...

我前面有上传啊,你下载了看下
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-4-2 09:29:53 | 显示全部楼层
墨香余味 发表于 2019-4-1 19:32
你好,大侠,能看看我的这些错误吗?我都包含头文件的,编译的时候出来那么多错误。。。这个和版本有关的 ...

你这个是VS,我用的的是Keil,不一样的编译工具呀
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-2 11:03:17 | 显示全部楼层
whj467467274672 发表于 2019-4-2 08:46
我前面有上传啊,你下载了看下

恩,我是下载你的附件的,也有这些错误
1.png
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-2 11:06:22 | 显示全部楼层
NewGuard 发表于 2019-4-2 09:29
你这个是VS,我用的的是Keil,不一样的编译工具呀

啊,那可以介绍下用的哪些器材吗?还有是什么方式完成的canopen协议呀
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-2 16:15:52 | 显示全部楼层
NewGuard 发表于 2019-4-2 09:29
你这个是VS,我用的的是Keil,不一样的编译工具呀

恩,那你是用什么软件啊?squartus?
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-2 16:53:10 | 显示全部楼层
NewGuard 发表于 2019-1-23 21:36
头像换了差点没认出来!
1.关于心跳时间不准的问题,在timerscfg.h中有MS_TO_TIMEVAL(ms)和US_TO_TIMEVA ...

你好,大侠,可以配置个SDO报文看看吗?带有发送截图的,谢谢
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-2 18:54:34 | 显示全部楼层
NewGuard 发表于 2019-1-26 09:34
我还是没搞定,也发帖了,好像没人指导,暂时先搁置着吧。
另外能否问下,之前都是从机模式,如果是主机 ...

大侠,你好!你这边有没有配置状态机啊,能给个实例吗,谢谢
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-4-3 09:35:25 | 显示全部楼层
墨香余味 发表于 2019-4-2 18:54
大侠,你好!你这边有没有配置状态机啊,能给个实例吗,谢谢

其实我没有相应的实际应用,我当时只是头脑发热想学下can才搞的,我基本上没怎么做(其实是没有相应的目标,所以没太大动力做下去),我表示不太理解你所说的软件啥意思?你没用过Keil吗?你是开发上位机吗?
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-4-3 09:41:00 | 显示全部楼层
墨香余味 发表于 2019-4-2 16:53
你好,大侠,可以配置个SDO报文看看吗?带有发送截图的,谢谢

有个PDO的你可以参考下,关于canfestival的PDO操作
http://www.openedv.com/forum.php ... 5&fromuid=73053
(出处: OpenEdv-开源电子网)
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-3 11:28:43 | 显示全部楼层
NewGuard 发表于 2019-4-3 09:35
其实我没有相应的实际应用,我当时只是头脑发热想学下can才搞的,我基本上没怎么做(其实是没有相应的目 ...

是的呀,没有使用你说的那个软件,想弄个上位机软件用canopen实现与驱动器通讯
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-3 11:36:42 | 显示全部楼层
NewGuard 发表于 2019-4-3 09:41
有个PDO的你可以参考下,关于canfestival的PDO操作
http://www.openedv.com/forum.php?mod=viewthread&t ...

你好,大侠! 你这个是怎么配置的PDO呀,然后还有状态机呢,这个截图我看不太明白啊 1.png ,能注释下吗
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-3 11:43:15 | 显示全部楼层
NewGuard 发表于 2019-4-3 09:41
有个PDO的你可以参考下,关于canfestival的PDO操作
http://www.openedv.com/forum.php?mod=viewthread&t ...

还有你那边是用的什么器材呀,可以具体表述下吗?
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-4-3 13:27:47 | 显示全部楼层
墨香余味 发表于 2019-4-3 11:43
还有你那边是用的什么器材呀,可以具体表述下吗?

我是用canusb的上位机通讯了下而已,操作代码没写,因为我也不太会。而且你这是上位机,我没整过,我只跑了单片机。
回复 支持 反对

使用道具 举报

17

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1312
金钱
1312
注册时间
2017-3-1
在线时间
259 小时
发表于 2019-4-3 13:29:24 | 显示全部楼层
墨香余味 发表于 2019-4-3 11:43
还有你那边是用的什么器材呀,可以具体表述下吗?

我是用canusb的上位机通讯了下而已,操作代码没写,因为我也不太会。而且你这是上位机,我没整过,我只跑了单片机,你可以问问有没有做过上位机跑这个协议的。
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-3 13:34:38 | 显示全部楼层
NewGuard 发表于 2019-4-3 13:29
我是用canusb的上位机通讯了下而已,操作代码没写,因为我也不太会。而且你这是上位机,我没整过,我只跑 ...

好的。
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-3 13:40:37 | 显示全部楼层
NewGuard 发表于 2019-4-3 13:29
我是用canusb的上位机通讯了下而已,操作代码没写,因为我也不太会。而且你这是上位机,我没整过,我只跑 ...

你好,大侠,能分享下usbcan的相关资料吗
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-3 20:51:49 | 显示全部楼层
whj467467274672 发表于 2019-4-2 08:46
我前面有上传啊,你下载了看下

你好,楼主,能注释下配置的PDO报文吗?  
我配置的是这样的   2.png 但是驱动器接受不到啊 CAN_Read(pDevice,accept_PDO,10,rx_data,10);我看得到数据
回复 支持 反对

使用道具 举报

1

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-3-28
在线时间
14 小时
发表于 2019-4-4 09:51:20 | 显示全部楼层
NewGuard 发表于 2019-1-26 09:34
我还是没搞定,也发帖了,好像没人指导,暂时先搁置着吧。
另外能否问下,之前都是从机模式,如果是主机 ...

你好,我想知道这段代码在哪里呀   1.png   哪个文件有呢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 09:13

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表