实现FreeModbus协议所需要的软/硬件需求

汽车电子功能安全标准ISO26262解析(三)——硬件部分 1. The necessary activities and processes for the product development at the hardware level include: (1) the hardware implementation of the technical safety concept; (2) the analysis of potential ha... 阅读详情

实现FreeModbus协议所需要的软/硬件需求

The hardware requirements are minimal - Any reasonable microcontroller with a serial interface, at least some RAM to hold the modbus frames should suffice.
A UART which support and interrupts and has at least an receiver buffer full and transmit buffer empty interrupt.
A timer capable of creating the t3.5 character timeout timer for Modbus RTU.

实现Modbus协议对硬件的需求是极其少的-任何一个具有串行接口和一定量的能够处理modbus数据帧的RAM就足够了。
一个支持中断的异步串行接口,该中断至少包括接收缓冲区满中断和发送寄存器空中断
一个定时器,用以产生Modbus的RTU模式所需要的T3.5个字符的超时时间

For the software part a simple event queue is necessary. The STR71X/FreeRTOS port uses FreeRTOS queues for this purpose to reduce the time spent in the Modbus task. Smaller microcontrollers will most likely come without an operating system. In that case a simple implementation with a global variable is possible (The Atmel AVR port uses such an implementation).

对于软件部分而言,实现Modbus仅仅需要一个简单的事件队列。在STR71X/FreeRTOS 的移植中,使用了FreeRTOS的队列来实现了该事件队列以降低处理Modbus任务时的时间消耗。较小的微控制器往往不使用实时内核,在这种情况下,可以通过全局变量的使用来实现这个事件队列(Atmel的AVR控制器的移植中使用了该方法)。

The actual memory requirements depend on the used modules. The first table shows the required memory with all supported functions compiled in. Values for the ARM where obtained using the GNUARM compiler collection 3.4.4 with -O1 in ARM mode. The AVR values where obtained using the WinAVR compiler collection 3.4.5 with -Os.

实际的内存需求量决定于使用的模块的多少。第一个表列出了所有功能模块所需要的内存量。对应ARM来讲,内存量的获取是通过使用GNUARM编译器在使用-O1命令下统计得来的。AVR所需要得内存量是通过WINAVR编译器在使用-Os命令下统计得来得。Module ARM Code ARM RAM (static) AVR Code AVR RAM (static)
Modbus RTU (Required) 1132Byte 272Byte 1456Byte 266Byte
Modbus ASCII (Optional) 1612Byte 28Byte 1222Byte 16Byte
Modbus Functions [1] 1180Byte 34Byte 1602Byte 34Byte
Modbus Core (Required) 924Byte 180Byte 608Byte 75Byte
Porting Layer (Required [2]) 1756Byte 16Byte 704Byte 7Byte
Totals 7304Byte 530Byte 5592Byte 398Byte

[1]: Actual size depends on the available Modbus functions. They are configurable in the header file mbconfig.h.
[2]: Depends on the hardware.

STM32移植FreeModbus RTU教程2(FreeModbus的移植) 基于原子F103精英版RS485实验工程的Freemodbus RTU的移植资源准备及Freemodbus文件内容说明Freemodbus文件说明开始移植 Freemodbus到stm32平台工程中工程文件内modbus文件夹内容的添加keil工程内modbus源码及头文件的添加keil工程接口函数的补充及报错的解决 资源准备及Freemodbus文件内容说明 移植FreeModbus版本为 FreeModbus V1.6提取码:1xkk 硬件平台为原子F103精英版,移植基础工程为 实验RS485通讯模板 阅读详情

相关推荐

FreeModbus 移植笔记- 1-认识FreeModbus

FreeModbus 移植笔记 目录 1 FreeMODBUS介绍 2 FreeMODBUS官网及源码下载地址 3 移植之前的准备 3.1FreeModbus V1.6 ​​​​​​​3.2Modbus 3.3 Modbus Registers ​​​​​​​3.4Modbus Configuration ​​​​​​​3.5Utilities ​​​​​​​3.6移植和头文件 ​​​​​​​3.7FreeModbus Examples ​​​​​​​3.8Port...

BigAntHome的博客 6851

FreeModbus ascill工作模式数据接收发送分析

文章目录1. ASCII帧结构介绍2. FreeModBus ASCII工作模式发送数据代码分析3. FreeModBus ASCII工作模式接收数据代码分析 前面分析代码一直是拿RTU工作模式来分析的,不知道ascill工作模式有何不同。其实除了帧起始和末尾格式有些差异外,其它基本是一致的。大概的差异点有下面几点 1.ASCII是以字符’:‘开始,以回车 换行结束-’\r,’\n’(CR,LF...

armwind的专栏 1226

FreeModbus——介绍(二)

参考自百度百科,里面还有移植介绍,非常详细1. FreeMODBUS是一个人写的协议。它是一个针对嵌入式应用的一个免费(自由)的通用协议的移植。2. FreeMODBUS 提供了RTU/ASCII 传输模式及支持3. FreeModbus不能做主机。

自学嵌入式 1818

Hardware Recommendations【硬件推荐】

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33894992的博客 175

一文说清freemodbus如何实现RTU协议

通过详尽分析freemodbus的代码结构与运行逻辑,揭示其如何高效实现Modbus RTU协议的串行通信过程。重点剖析帧处理、定时控制与状态机设计,帮助开发者快速掌握freemodbus在实际嵌入式项目中的应用技巧。

weixin_36303807的博客 1022

STM32平台下FreeModbus TCP协议栈集成指南

深入讲解在STM32平台如何移植和配置freemodbus协议栈,实现TCP通信功能。结合嵌入式开发细节,帮助开发者快速掌握freemodbus的应用与调试技巧。

weixin_36001279的博客 1142

FreeModbus开源协议简介

个人笔记,供个人查阅。FreeModbus是奥地利人写的Modbus协议,主要针对嵌入式应用的免费通用Modbus协议的移植。modbus通信协议栈包括两层:应用层协议(定义了数据模型和功能)和网络层。FreeModbus提供了RTU/ASCII传输模式和TCP协议支持,遵循BSD许可证(意味着用户可以将FreeModbus应用于商业环境中)。

weixin_47077788的博客 4031

FreeModbus ASCII传输

首先,在使能modbus协议栈的时候,会调用pvMBFrameStartCur函数 /* 使能modbus */ eMBErrorCode eMBEnable(void) { eMBErrorCode eStatus = MB_ENOERR; /* modbus还未使能 */ if(eMBState == STATE_DISABLED) { /* 启动modbus */ pv...

lushoumin的博客 1041

10分钟教你玩起来freemodbus

源码获取 本节教程源码资料获取方式: 1、公众号后台回复“modbus” 2、小飞哥gitee仓库自提 3、留言区获取资料链接 freemodbus是什么? 简介及应用场景 FreeMODBUS是一个奥地利人写的Modbus协议。它是一个针对嵌入式应用的一个免费(自由)的通用MODBUS协议的移植。Modbus是一个工业制造环境中应用的一个通用协议。Modbus通信协议栈包括两层:Modbus应用层协议,该层定义了数据模式和功能;另外一层是网络层。 协议介绍 FreeMODBUS 提供了R

qq_16519885的博客 1万+

STM32 FreeModbus RTU Slave 实现指南

本文还有配套的精品资源,点击获取 简介:本文详细介绍了如何在STM32微控制器上实现基于FreeModbus库的Modbus RTU Slave模式,以建立设备间的通信。首先,解释了Modbus RTU协议和其四种基本命令,然后详细描述了STM32F103微控制器的相关特性。接下来,文章指导如何配置FreeModbus库到STM32项目中,并进行硬件资源映射和通信命令的解析...

weixin_34456923的博客 2005

freemodbus v1.6最新版本

FreeMODBUS一个奥地利人写的Modbus协议。它是一个针对嵌入式应用的一个免费(自由)的通用MODBUS协议的移植。Modbus是一个工业制造环境中应用的一个通用协议。Modbus通信协议栈包括两层:Modbus应用层协议,该层定义了数据模式和功能;另外一层是网络层。

FreeMODBUS库 实现串口的选择切换

FreeMODBUS库 实现串口的选择切换 日期 作者 版本 说明 2020.12.16 Hxj V1.0 完成主体 目录FreeMODBUS库 实现串口的选择切换介绍一、FreeMODEBUS的串口配置源码头文件源文件二.使用指南思路说明:使用步骤 介绍 在FreeMODBUS 库中是不支持串口在运行的时候进行切换,同时也不支持多串口同时运行,必须得从新的配置才能进行串口的输出的选择。这样就使得程序有他的局限性。下文将会着重介绍如何进行选择性配置串口的输出。 一、FreeMODE

qq_45531642的博客 2779

MODBUS协议中文版(高清版)

MODBUS协议中文版(高清版),主要讲述串行链路和TCP/IP上的MODBUS标准及开发指导

【STM32】FreeModbus 移植Modbus-RTU从机协议到STM32详细过程

是否使能Modbus-ASCII、Modbus-RTU、Modbus-TCP,这是只使能Modbus-RTU。协议栈应支持的最大 Modbus 功能码数量。/** FreeModbus库:用于Modbus ASCII/RTU的可移植实现。* 版权所有(c)2006-2018 Christian Walter <cwalter@embedded-solutions.at>* 保留所有权利。

林愿留的博客 1万+

ModBus 报文解析

modbus 报文解析 可惜帮助开发与PLC或人机界面的电路板

【深圳】IBM V3500存储维修 更换控制器故障

今天给大家分享的是深圳.福田区一个电商客户公司一台IBM Storwize v3500存储控制器故障从远程诊断 收集日志 分析结果的实际案例,如图所示通过存储管理口登陆进去后直接看到少了一个控制器,经过工程师分析日志后判定为该控制器损坏,接下来更换控制器配件,标准套件的控制器不带子卡和电池,所以需要把故障控制器上的子卡和电池拆下来装到新控制器上,这个电池拆还需要点技巧,接着把新的控制器插回V3500主机,等待大约十分钟后,新控制器指示灯全绿,管理界面看到节点已联机;冠峰科技-爱科技爱分享。

OuYangYuXi的博客 4574

FreeModbus应用系列之一

FreeModbus应用总结系列之一FreeModbus简介硬件需求移植1. 物理层接口文件的修改1.1portserial.c中函数的修改porttimer.c中函数的修改2. 应用层回调函数的修改3. 应用层初始化及协议访问初始化及运行FreeModbus启动流程分析 FreeModbus简介 FreeMODBUS是一个奥地利人写的Modbus协议。它是一个针对嵌入式应用的一个免费(自由)的通用MODBUS协议的移植。Modbus是一个工业制造环境中应用的一个通用协议。Modbus通信协议栈包括两层:M

宁静致远的博客 4095

使用电荷放大器处理压电加速度计输出

电阻器 R p模拟传感器的绝缘电阻,为产生的电荷创建泄漏路径。在此图中,顶部波形显示传感器产生的电荷,而底部波形显示电荷放大器的输出。这需要具有大输入阻抗的放大级,以防止产生的电荷通过与传感元件并联的放大器的输入阻抗泄漏。换句话说,电荷放大器补偿传感器产生的电荷 q p ,反馈电容器 C F中具有相反极性的等量电荷。因此,任何与传感器并联的绝缘电阻,如电缆的绝缘电阻或传感器的漏电电阻Rp,都不能流过电流。漂移是指电荷放大器输出在一段时间内发生的变化,而不是由被测物理参数的变化(我们讨论的加速度)引起的。

weixin_45260069的博客 3903

从零构建:STM32F103与FreeModbus的双协议融合实战

本文详细介绍了如何在STM32F103微控制器上实现FreeModbus库支持的ModbusRTU与ModbusTCP双协议融合方案。通过协议栈选型、环境搭建、资源分配与任务调度等关键技术点解析,提供了一套完整的工业控制与物联网通信解决方案,帮助开发者高效实现设备间的可靠通信。

flink9streamer的博客 895

opencv去除印章痕迹

今天看到一个很有意思的程序,就是去除票据上的红色印章,觉得很有意思,就把它抄过来记录一下,同时自己也开了一下脑洞。 原来的程序来自:https://www.cnblogs.com/skyfsm/p/7638301.html 可以看到图像效果很不错,下面是源码实现: #include &lt;iostream&gt; #include &lt;opencv2/imgproc/imgpro...

zeng_haoyu的博客 7956

Centos7 XFS(dm-0):Internal error XFS_WANT_CORRUPTED_GOTO

在k8s的道路上我们都是小白,每天启动虚机都会遇到各种各样的问题,这不。部署的k8s虚机启动发现操作系统启动异常,提示如下报错信息。进入/dev/mapper目录下,查询目录下路径信息。可以通过对文件系统进行修复操作,操作如下。重启完成后虚机恢复正常登录。

hedao0515的专栏 4583
上一篇: FreeMODUS简介
下一篇: 模块-modbus模块
control_tech
博客等级 码龄17年 53粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值