跳到主要内容

小计算器

Modbus CRC 计算;输入 MCU 时钟和目标波特率,算出 BRR 分频值、实际波特率和误差;IP / 子网计算,判断电脑和板子在不在同一网段。

数据只在你的浏览器里处理,不会上传。串口收发、粘贴的报文和计算结果都不经过本站服务器。

用途

使用步骤

  1. 填 USART 所在总线的时钟(MHz),例如 STM32F103 的 USART1 在 APB2 = 72 MHz,USART2/3 在 APB1 = 36 MHz。
  2. 填目标波特率,选 16 倍或 8 倍过采样。
  3. 页面给出理想分频 USARTDIV、取整后的 BRR 值、实际波特率和误差;误差超过 ±2% 时会提示。

按 STM32 F1 / F4 等系列 USART_BRR 的写法计算:16 倍过采样时小数部分 4 位,8 倍过采样时 3 位。例如 72 MHz、115200、16 倍过采样:USARTDIV = 39.0625,BRR = 0x0271,误差 0。其他厂家的分频方式可能不同,以芯片参考手册为准。

IP / 子网计算

填板子 IP 和子网掩码(24、/24 或 255.255.255.0 都行,也可以直接写 192.168.1.20/24),算出网段、网络地址、广播地址、可用地址范围和主机数。只做 IPv4;掩码不连续(例如 255.0.255.0)、某段超过 255、有前导 0 或空格时会提示。

再填电脑 IP,页面用一句话告诉你两边在不在同一网段,例如「电脑 192.168.1.100 和板子 192.168.1.20 在同一网段 192.168.1.0/24,可以直接通信」;不在同一网段时给出改法,例如「电脑要改成 192.168.1.x」。这一步对应上手指南里「电脑和板子要在同一网段」。

/31 按 RFC 3021 处理:只用于点对点链路,2 个地址都分给主机,没有网络地址和广播地址;/32 只有一个地址。/30 共 4 个地址,可用 2 个。

其他工具