stm32移植freemodbus

1、设置串口

开启串口中断

2、设置定时器

已知在freemodbus中默认定义:当波特率大于19200时,判断一帧数据超时时间固定为1750us,当波特率小于19200时,超时时间为3.5个字符时间。这里移植的是115200,所以一帧数据超时时间为1750us

这里采用TIM2,TIM2挂载在ABP1上,主频为72MHz。我们此处取预分频系数72-1,可以得到对应的分频频率为1MHz,即0.000001s=0.001ms=1us,自动重载值设置为1750,得到超时时间1750us

开启定时器的中断

3、设置串口中断优先级大于定时器中断

相关推荐
Deitymoon18 小时前
STM32——外部中断按键控制led
stm32·单片机·嵌入式硬件
czwxkn18 小时前
7STM32(stdl)flash内部闪存
stm32·单片机·嵌入式硬件
咕噜咕噜啦啦18 小时前
STlink下载程序
stm32·单片机
Deitymoon20 小时前
STM32——串口中断接收
stm32·单片机·嵌入式硬件
charlie11451419121 小时前
嵌入式C++实践开发第21篇(单片机实践):按钮输入 —— 硬件原理、消抖与HAL API
开发语言·c++·单片机
一起搞IT吧21 小时前
Android性能系列专题理论之十一:block IO问题分析思路
android·嵌入式硬件·智能手机·性能优化
余生皆假期-21 小时前
YuanHub 源码分析【一】FlashDB 初始化与项目应用
笔记·单片机·嵌入式硬件
Deitymoon1 天前
STM32——串口通信发送数据
stm32·单片机·嵌入式硬件
玩转单片机与嵌入式1 天前
嵌入式AI场景:哪些应用场景不适合将AI模型部署到单片机(MCU)中?
人工智能·单片机·嵌入式硬件
czwxkn1 天前
8STM32(stdl)低功耗模式
stm32·单片机·嵌入式硬件