
简介 FreeModbus 是一款开源的 Modbus 协议栈,但是只有从机开源,主机源码是需要收费的。同时网上也没有比较好的开源的 Modbus 主机协议栈,在这样的背景下,armink 大神开发了这款支持主机模式的 FreeModbus 协议栈。 本文的分为2篇推送,分别介绍如何在潘多拉开发板上运行 Modbus 主机与从机。首先介绍串口方式通信的 Modbus 主机和从机。然后介绍如何使用网络进行 Modbus 通信。 准备工作1、首先演示使用串口作为 Modbus 通信通道的方式,将潘多拉开发板的 uart2 通过 usb 转串口线连接到电脑上 2、使用 usb 线连接开发板的 st-link 接口到电脑上,打开电源开发,开发板上电。 3、查看设备管理器,可以看到两个串口设备,一个用来 shell 通信,一个用来 Modbus 通信。 ![]() 运行 Modbus 主机配置工程 在 RT-Thread 源码目录下找到潘多拉的bsp rt-thread\bsp\stm32\stm32l475-atk-pandora ,在此目录下打开 ENV 工具。 配置 FreeModbus 软件包1、输入 menuconfig 命令打开配置工具 ![]() 2.按照下面的路径进入 FreeModbus 软件包的配置菜单,并开启主机模式
3.配置主机模式选项 进入 Mastar mode 配置菜单,然后开启主机示例程序,如下图所示: ![]()
配置硬件 uart2 然后返回到主菜单,进入硬件配置的菜单里开启 uart2 。
![]() 退出 menuconfig 配置工具并保存。然后 pkgs --update 下载软件包,然后 scons --target=mdk5 生成工程。 ![]() 运行示例程序 打开工程,在 FreeModbus 分组里可以看到主机的示例代码 sample_mb_master.c 关键代码如下所示:
![]() 输入 mb_master_samlpe 运行主机示例程序。 |
MCSDK FOC应用详解
STM32F10xxx 正交编码器接口应用笔记 及源代码
基于STM32定时器ETR信号的应用示例
《无刷直流电机控制应用 基于STM8S系列单片机》
STM32定时器触发SPI逐字收发之应用示例
【银杏科技ARM+FPGA双核心应用】STM32H7系列10——ADC
【银杏科技ARM+FPGA双核心应用】STM32H7系列57——MDK_FLM
无刷直流电机控制应用+基于STM8S系列单片机---电子书
STM32 USB的程序,包含固件、驱动和测试用的应用程序
工业以太网总线ETHERCAT驱动程序设计及应用(扫描版)