https://blog.csdn.net/baidu_31437863/article/details/82178708

STM32(五) Modbus

https://blog.csdn.net/WHL_YSU/article/details/87864362

基于STM32实现 Modbus协议调试笔记 --利用485通信实现单个字符的接收与发送

http://www.stmcu.org.cn/module/forum/thread-599873-1-1.html

[分享] 标准的modbus通信协议模板(适合新手)

注:      本程序适合新手入门,第一个程序写了如何实现串口的收发多个字节程序
                                         第二个程序写了如何利用主程序循环来监控数据接收
                                         第三个程序写了如何利用定时器来监控数据是否发送和接收完毕
                                         第四个程序写了RS485如何通信通信
                                         第五个程序写了modbus协议。。。。。。。。。。
                                         通过上位机发送一串字节后并在显示屏上显示所发送的数据,大概就是这个功能
                                          芯片是STM32F103VET的,编译器是IAR6.1的。需要的就带走吧!
<ignore_js_op>

1.usart.zip

799.08 KB, 下载次数: 1500, 下载积分: ST金币 -1

<ignore_js_op>

2.usart主程序循环监控.zip

826.95 KB, 下载次数: 1220, 下载积分: ST金币 -1

<ignore_js_op>

3.usart定时器监控.zip

812.14 KB, 下载次数: 1135, 下载积分: ST金币 -1

<ignore_js_op>

4.RS485.zip

816.13 KB, 下载次数: 1567, 下载积分: ST金币 -1

对需要的朋友很有用 modbus在工业现场的底层通信 应用非常广泛. 传个资料 ,版权归网络所有
<ignore_js_op>

MODBUS协议中文版(高清版).pdf

这是班的原理图
<ignore_js_op>

5.modbus协议.zip

3.23 MB, 下载次数: 6040, 下载积分: ST金币 -1

<ignore_js_op>

LY-STM32.pdf

147.16 KB, 下载次数: 835, 下载积分: ST金币 -1

http://www.51hei.com/bbs/dpj-137780-1.html

Modbus 一个工业上常用的通讯协议、一种通讯约定。Modbus协议包括RTU、ASCII、TCP。其中MODBUS-RTU最常用,比较简单,在单片机上很容易实现。modbus协议简单解析如下:
1、主机对从机写数据操作
如果单片机接收到一个报文那么就对报文进行解析执行相应的处理,如上面报文:
    01             06            00 01           00 17          98 04 
  从机地址        功能号          数据地址          数据         CRC校验

假如本机地址是 1 ,那么单片机接收到这串数据根据数据计算CRC校验判断数据是否正确,如果判断数据无误,则结果是:
            HoldDataReg[1]  =  0x0017;
MODBUS主机就完成了一次对从机数据的写操作,实现了通讯。

2、主机对从机读数据操作
主机进行读HoldDataReg[1] 操作,则报文是:
    01             03            00 01           00 01          D5 CA 
从机地址        功能号          数据地址      读取数据个数       CRC校验
那么单片机接收到这串数据根据数据计算CRC校验判断数据是否正确,如果判断数据无误,则结果是:返回信息给主机,返回的信息也是有格式的:
返回内容:  
    01         03            02             0017          F8 4A
  从机地址   功能号     数据字节个数    两个字节数据    CRC校验
MODBUS主机就完成了一次对从机数据的读操作,实现了通讯。

上传的程序是根据手把手教你51单片机的例程修改而来,能实现读/写操作(03,06码),成功通过modbus调试精灵测试,读写通讯正常!
由于刚接触modbus通讯协议,之前一直出现通讯超时的问题,找了网上很多资料,都不得其解,所以把程序拿出来和大家分享。希望和大家相互学习、共同进步!
<ignore_js_op>

所有资料51hei提供下载:
<ignore_js_op> 29. RS485通信实验.rar (273.59 KB, 下载次数: 864)

http://news.eeworld.com.cn/mcu/article_2017100934976.html

在STM32上移植FreeModbus RTU的一点经验总结

stm32——modbus例程网址收藏的更多相关文章

  1. Dart 语法中文在线学习网址收藏

    为了学习flutter UI框架,必须先学好dart语言,故收藏了有关 Dart 语法中文在线学习网址 http://dart.goodev.org/guides/language/language- ...

  2. KEIL5 使用STM32 官方例程

    1. 安装keil5,破解 网上很多安装包/教程,跳过 2.下载官方固件库 https://www.st.com/content/st_com/en.html 在这里找微处理器,STM32 stand ...

  3. yii 的网址收藏

    http://blog.csdn.net/yuhui_fish/article/details/7656929 YII框架多子域名同步登录问题 http://blog.csdn.net/yuhui_f ...

  4. 我的IT相关网址收藏

    it语言学习免费视频: 尚学堂:http://www.sxt.cn/ 慕课网:http://www.imooc.com/course/list 大学生自学网:http://v.dxsbb.com/ 尚 ...

  5. STM32的例程GPIO的汇编指令初探

    任务一:寻找main函数的汇编指令集 任务二:寻找main函数中的SystemClock_Config函数的汇编指令集 寻找main函数的汇编指令集 运行例程中GPIO工程时,总会加载startup_ ...

  6. STM32 modbus CRC16校验

    typedef unsigned char uint8_t; typedef unsigned short uint16_t; typedef int int32_t; const uint16_t ...

  7. CTF_工具网址收藏

    杂项 条形码在线扫描 :    https://online-barcode-reader.inliteresearch.com/ PS弄反色ctr+i    :  https://zhidao.ba ...

  8. JAVA学习网址收藏

    什么是JDK?http://baike.baidu.com/subview/25214/5047948.htm?fr=aladdin Java经典入门教程(环境说明) http://wenku.bai ...

  9. golang 常用网址收藏

    1:beego 模板语法指南:http://blog.go-china.org/03-beego-template 2:go 语言sublimetext2配置:http://www.kankanews ...

随机推荐

  1. Mysql性能优化之---(二)

    建立适当的索引 说起提高数据库性能,索引是最物美价廉的东西了.不用加内存,不用改程序,不用调sql,只要执行个正确的'create index',查询速度就可能提高百倍千倍,这可真有诱惑力.可是天下没 ...

  2. MSSQL 获取数据库、表、字段信息语句

    --获取所有数据库名称 SELECT Name FROM Master..SysDatabases ORDER BY Name --获取库里所有表名 SELECT * FROM SysObjects ...

  3. [转帖]sys.dm_exec_connections (Transact-SQL)

    sys.dm_exec_connections (Transact-SQL) https://docs.microsoft.com/en-us/sql/relational-databases/sys ...

  4. java类和对象详解

    类和对象 java 是面向对象的语言 即 万物皆对象c语言是面向过程语言 一.怎么去描述一个对象? (1)..静态的(短时间内不会改变的东西) 例如:外观,颜色,品牌 (2).动态的(动作) 可以干什 ...

  5. Reactor 线程模型以及在netty中的应用

    这里我们需要理解的一点是Reactor线程模型是基于同步非阻塞IO实现的.对于异步非阻塞IO的实现是Proactor模型. 一 Reactor 单线程模型 Reactor单线程模型就是指所有的IO操作 ...

  6. MySql设计表中的create_time和update_time字段

    一般create_time和update_time字段的类型为datetime类型,长度为0

  7. 【USB】struct usb_device_id 结构体详解

    struct usb_device_id { /* which fields to match against? */ __u16 match_flags; //说明使用哪种匹配方式 /* Used ...

  8. MyBatis 源码篇-资源加载

    本章主要描述 MyBatis 资源加载模块中的 ClassLoaderWrapper 类和 Java 加载配置文件的三种方式. ClassLoaderWrapper 上一章的案例,使用 org.apa ...

  9. Inno Setup CreateProcess 失败:代码 740(Inno Setup打包的程序提升为管理员权限)

    原文参考 https://www.cnblogs.com/SnailProgramer/p/4243666.html http://blog.csdn.net/x356982611/article/d ...

  10. MySQL下载安装图文

    一. MySQL下载 1. 进入MySQL官网官网地址:https://www.mysql.com/ 2. 点击DOWNLOADS 3. 点击Community(GPL) Downloads 4. 找 ...