其实ST的HAL库与FreeModbus移植很配哦--FreeModbus从站设计(8)

FreeModbus从站设计(8)-用HAL库函数理清Modbus的数据收发流程

关键词:FreeModbus STM32F103 CubeMX HAL库

1.基本框图

如图1所示,HAL库的函数中,与Freemodbus协议栈相关的,主要是定时器和串口的操作部分。孔丙火(微信公众号:孔丙火)认为,可以这样简单描述:在协议栈完成初始化后,就将串口(RS485)设置为接收状态,等待主站的数据,当接收到主站的一个字节的数据后,开启定时器,在3.5个字符周期内如果接收到了第二个字节的数据,则将定时器清零重新开始计时,若果3.5个字符周期内没有接收到新的字节,则认为一帧数据接收完毕,开始处理数据,并相应地发送回复数据,回复数据也是逐个字节进行发送的。

图1

2.接口函数

2.1 vMBPortSerialEnable()

(0)

相关推荐

  • JPEG图片解码能力——STM32F769I 图像处理能力评测之三

    硬件平台:STM32F769IDISCOVERY软件开发平台:Keil 5.1测试方法:1.采用SD卡,并把测试的图片存放到根目录中.SD卡的容量为8G,Class 4.选用3种色彩丰富程度差别较大的 ...

  • UC头条:STM32基于标准库函数和HAL库编程差异

    本文目的是以串口通信来简要分析STM32使用标准库函数和HAL库函数编程的差异. 目录 (一)开发方式 1.配置寄存器 2.库函数 3.HAL库 (二)库函数与HAL库对比 1.串口通信实验 2.库函 ...

  • 【STM32】HAL库 STM32CubeMX教程三

    前言 上一节我们讲解了STM32CubeMX的基本使用和工程的配置,那么这一节我们正式来学习CubeMX配置STM32的各个外设功能了 今天我们会详细的带你学习STM32CubeMX配置外部中断,并且 ...

  • STM32教程(五)HAL库之GPIO函数及实例详细介绍!

    今天介绍STM32 HAL库的GPIO函数库,首先打开stm32f4xx_hal_gpio.h文件,我们能看到一些结构体定义以及GPIO引脚的地址定义等等, 这些都很好理解,我们需要重点看HAL库中G ...

  • STM32 串口DMA接收 Openmv / K210 整数、小数字符串数据 (基于HAL库)

    目录 前言 一.工程配置 二.串口DMA部分代码 1.源文件UART_DMA.c 2.头文件UART_DMA.h 3.stm32f1xx_it.c的修改 4.串口收发DMA测试 三.字符串数字提取代码 ...

  • 用CubeMX + HAL库开发它不香吗?

    干货福利,第一时间送达! 摘要:如果你学过STC51,你一定知道STC51操作是极其方便的.如果你学过STM32的库函数,你一定知道STM32操作是极其繁琐的.传统的库函数开发方式,将太多时间花费在各 ...

  • FreeModbus移植经验分享

    一   为什么要移植Freemodbus 为什么要移植Freemodbus,这个问题需要从两个方面来回答.第一,modbus是一个非常好的应用层协议,它很简洁也相对完善.对于还没有接触过modbus的 ...

  • freemodbus移植、实例及其测试方法

    Modbus简介 参考:Modbus​协议​深入​讲解 https://www.ni.com/zh-cn/innovations/white-papers/14/the-modbus-protocol ...

  • Cubemx与HAL库系列教程|ADC DMA多通道采集详解

    什么是ADC 资料源码获取见文末 你以为的ADC 哈哈,开个玩笑,S11 EDG LPL最后的荣光,加油~~~ 说起来ADC,先来聊聊模拟信号与数字信号 模拟信号与数字信号简介 模拟信号 模拟电压信号 ...

  • STM32:Flash擦除与读写操作(HAL库)

    应用平台:STM32F030F4P6ST官方库:STM32Cube_FW_F0_V1.9.0背景知识绝大多数的单片机和微控制器(ARM,x86),地址空间都是以字节为单位的,也就是说一个地址是一个字节 ...