CANOpen学习(一)
CANOpen学习(一)
- CANOpen心跳功能学习
- 修改串口PIN脚和CAN的PIN脚
- 原本timer中发送心跳包的相关逻辑
- 修改心跳发送逻辑
- 修改定时器周期为10us
- 修改timer.c文件中发送心跳包的逻辑
- 修改节点关于心跳时间的设置
- 重新测试,按照500ms进行心跳包发送
CANOpen心跳功能学习
结合周立功Can分析仪+硬石科技canopen心跳主站源码+rtthread的定时链表思想+正点原子stm32f407开发板,学习festival源码关于canopen心跳功能的实现和改写。本文章仅用于自学记录和分享,如阅读中发现不完整或有误,欢迎及时指正,文件附件代码只是自己随意修改的学习资料,所以如无必要不要下载。
链接地址:https://download.csdn.net/download/weixin_43695159/85493568
修改串口PIN脚和CAN的PIN脚
根据正点原子开发板,对相关硬件进行配置
原本timer中发送心跳包的相关逻辑
原本心跳发送是在定时器中断中,定时器时钟设置为1MHZ,计数周期设置为最大0xFFFF,我也没有完全明白这个逻辑,而且实际通过周立功can分析仪测试下来发现心跳包发送频率很高且不是周期发送,如下图:
修改心跳发送逻辑
修改定时器周期为10us
配置定时器分频系数和周期计数值,把定时中断时间设为为10us,在定时中断中进行系统时钟计数。
修改timer.c文件中发送心跳包的逻辑
并且将这个函数放到裸机主循环中进行
修改节点关于心跳时间的设置
重新测试,按照500ms进行心跳包发送
CANOpen学习(一)相关推荐
- CANopen学习笔记
CANopen学习笔记 文章目录 CANopen学习笔记 1.NMT 1.1.NMT的Boot_up (节点上线报文) 1.2.NMT 节点状态与心跳报文 1.3.NMT节点守护 1.4 .NMT节点 ...
- linux canopen软件,CANopen学习笔记
1. TPDO和RPDO都是针对从站来说的,协议上没有有讲任何一个关于主站的概念,协议就只是定义从站,没有定义主站任何东西. TPDO:从站->主站 RPDO:主站->从站 2. PDO的 ...
- CanOpen学习笔记5-- CanFestival使用提示
1,PDO Parameter Callbacks设置调用:PDO初始化程序中,会设置其三个参数Transmission type.Inhibit time.Event timer对应的回调函数,当这 ...
- canOpen学习十之canOpen应用实现紧急事件发送
一.简介 所谓紧急事件就是系统出现错误后需要告知其他设备我出错了,其他设备做出对应的反应. 紧急事件用到的索引是0x1001和0x1003,下面详细介绍一下这两个索引 对象0x1001: 对象0x10 ...
- 《CANOpen》 学习笔记5
<CANOpen> 学习笔记5 CANOpen 学习笔记5 驱动器 CANopen 调试笔记 驱动器 CANopen 调试笔记 驱动器 Copley 公司提供的 <CANopenPr ...
- 嵌入式CANopen协议从入门到落地产品(更新2021.9.8)
一.前言 我写CANopen系列博文的初衷是分享如何使用STM32单片机开发一款CANopen产品,所谓实战为主,理论为辅.只看CANopen协议的理论是很枯燥,而且根本看不会.我认为掌握CANope ...
- C#开发CANopen主站(SDO收发数据)
C#开发CANopen主站(SDO收发数据) 一.准备工作 熟悉CANopen相关知识,可以参考我的另一篇博客<CANopen学习笔记> 获取周立功或者广成科技的上位机二次开发包及驱动 熟 ...
- 机器人开发--CanOpen
机器人开发--CanOpen 1 介绍 1.1 概述 1.2 应用 2 历史发展 3 协议 3.1 协议细节(来自CiA文档) 3.2 协议框架 OSI 模型 服务 COB-ID NMT SYNC 紧 ...
- POWERLINK 工业实时以太网协议简介
高端制造,在当前历史背景下独立自主是必经之路.先进技术是买不来的,高端制造是国之重器. 何为POWERLINK ?先来说下什么是工业以太网. 工业以太网 平常我们听的最多用的最多的Internet互联 ...
最新文章
- python的继承用法_【后端开发】python中继承有什么用法?python继承的用法详解
- 运营商级网络地址转换(LSN/CGN)方案介绍
- sql 子查询(mysql)
- 探探自动配对PHP_CentOS7 - 安装Apache HTTP Server和PHP
- HDU3507-Print Article-斜率dp入门题
- Summed-Area Variance Soft Shadow Mapping(SAVSM):二
- php访问c#接口,介绍C#中的接口
- Webpack 中 css import 使用 alias 相对路径
- 深入剖析ConcurrentHashMap(2)
- 用word怎么做c语言框图作业,在Word中绘制简单C语言流程图(精)
- 第四次作业之四则运算
- 开发测试环境 k8s node节点磁盘不足运维
- 深入剖析ReentrantLock公平锁与非公平锁源码实现
- 软式棒垒球运动进校园
- 未来微型计算机发展趋势,简述什么是单片机(单片机未来发展趋势)
- 全球第二!食在爱尔兰,安全感满满!
- PhD positions 008-2021-FEB
- android联系人管理源码,计算机毕业课程设计源码-145安卓Android通讯录管理系统
- android连续调用setVisibility(View.VISIBLE)和setVisibility(View.Gone)
- 使用FFmpeg,将mp4等格式转mp3格式
热门文章
- 通过frp搭建属于自己的免费稳定的内网穿透服务
- shell中的提示符及其功能
- BehaviorTree.CPP
- 既能java又能vue薪资,据说最近股市又开始热闹了 :),用 Java 多线程 + Vue 搞了一个 A 股大屏,看能不能找个好工作。...
- Photoshop勾勒出轮廓
- PHP读取显示当前目录的图片
- Linux权限(重点)
- SFT-250手提式安全轴流风机
- matlab机器人自动分拣_YOLOv3 + Matlab Robotics ToolBox 实战 -- 软包装药品的机器人分拣系统设计与仿真...
- 机器人抓矸石_研究提出多机械臂协同煤矸分拣机器人