登录/注册

stm32f103硬件除法

更多

STM32F103 的硬件除法支持及优化方法如下:

  1. Cortex-M3 内核特性
    STM32F103 基于 ARM Cortex-M3 内核,不包含硬件除法器(如 UDIV/SDIV 指令)。所有除法运算均由软件实现,执行时间较长(32位除法需数十个时钟周期)。

  2. 编译器处理方式

    • 直接使用 / 运算符时,编译器会自动调用运行时库的软件除法函数(如 __aeabi_uidiv 无符号除法)。
    • 示例代码:
      uint32_t a = 1000, b = 5;
      uint32_t result = a / b; // 触发软件除法
  3. 优化建议

    • 移位替代除法:对 2 的幂次方除数,用右移代替(如 x / 8x >> 3)。
    • 定点数缩放:将浮点运算转换为整数运算(如 x / 3.14x * 100 / 314)。
    • 查表法:预计算常用除数的倒数,改用乘法(如 x / 7 ≈ x * (1/7))。
    • 避免实时计算:在非关键代码段执行除法,或预先计算结果。
  4. 性能对比 运算类型 时钟周期 (approx)
    32位无符号除法 12-40 周期
    32位乘法 1 周期
    移位操作 1 周期
  5. 特殊注意事项

    • 除零保护:需手动检查除数是否为0,避免程序崩溃。
    • 数据类型选择:无符号除法比有符号更快,尽量使用 uint32_t

若需硬件加速,可考虑升级到带 Cortex-M4/M7 的型号(如 STM32F4/F7),其支持单周期硬件除法指令。

STM32F103VET6

1970-01-01 08:00:00 至 1970-01-01 08:00:00

ARM系列STM32F103芯片的解密方法

破解STM32F103芯片的方法

2023-09-19 09:03:40

ch32v103stm32f103的区别

ch32v103与stm32f103的区别  Ch32v103与STM32f103

2023-08-22 15:49:00

基于STM32F103的SVPWM算法实现

基于STM32F103的SVPWM算法实现

资料下载 jinyi7016 2022-03-22 12:12:17

STM32F103用户使用手册

STM32F103用户使用手册

资料下载 倚東聽海 2021-12-06 09:47:21

基于STM32f103的输入捕获测频率和占空比

基于STM32f103的输入捕获测频率和占空比

资料下载 shyshyshy 2021-08-02 10:10:24

基于STM32f103的FFT频率测试程序下载

基于STM32f103的FFT频率测试程序下载

资料下载 shyshyshy 2021-08-02 10:07:20

基于STM32f103使用的DAC正弦波

基于STM32f103使用的DAC正弦波

资料下载 shyshyshy 2021-08-02 10:05:00

STM32F103 GPIO内部电路图讲解

STM32F103 GPIO内部电路图讲解

2023-02-01 16:32:14

基于STM32F103单片机的矩阵按键设计

本实验使用STM32F103单片机,主题代码通用的。

2022-12-09 17:18:46

采用STM32F103硬件ADC功能进行光照强度采集

光照强度采集ADC方式采集,STM32F103本身自带有硬件ADC功能。将采集到的数据实时刷新到屏幕上即可完成波形显示。

2022-05-31 11:32:52

芯片短缺如何用HK32F103换掉STM32F103

本篇笔记主要记录因为芯片短缺,使用HK32F103换掉了STM32F103的过程和注意事项。 准备工作 准备之前的STM32F103工程。 测试

2021-11-01 14:14:48

GD32E103/F303系列与STM32F103硬件是怎样替换的

GD32E103/F303系列与STM32F103有哪些相同点?GD32E103

2021-10-15 08:33:10

stm32f030和stm32f103功能差异

stm32f030和stm32f103功能差异主要表现在哪?

2021-07-22 09:35:47

基于STM32F103的三相变频器方案设计

成熟三相变频器方案,基于STM32F103设计开发: 原理图和PCB源文件(AD软件)。 BOM清单 基于STM32F103控制源代码工程文件(keil) 软件

2020-12-07 10:33:38

7天热门专题 换一换
相关标签