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、设置串口中断优先级大于定时器中断

相关推荐
雾削木2 分钟前
FLASH ARM内核 SRAM RCC ADC I/O
arm开发·单片机·嵌入式硬件
Wave84532 分钟前
FreeRTOS软件定时器
stm32·单片机·嵌入式硬件
Miuney_MAX2 小时前
【单片机】之日志存储
单片机·嵌入式硬件
MCM-RL1111114 小时前
自由落体颅脑损伤打击器 自由落体打击器 脑损伤打击器 自由颅脑损伤落体操作臂
嵌入式硬件·物联网·测试工具·安全·信号处理
sayang_shao4 小时前
STM32 F4移植LVGL 9.4.0版本教程(Keil工程,裸机)
stm32·gui·lvgl
Shylock_Mister4 小时前
STM32低功耗模式解析与应用指南
stm32·单片机·嵌入式硬件
ACP广源盛1392462567313 小时前
GSV2006@ACP#2 进 4 出 HDMI2.0 中继器(带音频提取 / 嵌入功能)全解析
单片机·嵌入式硬件·音视频
王林(瑞昱Realtek,龙迅)13 小时前
视频拼接,分割,矩阵技术方案介绍
图像处理·嵌入式硬件·显示器·8k显示·画面拼接