stm32f103硬件除法
更多
STM32F103 的硬件除法支持及优化方法如下:
-
Cortex-M3 内核特性
STM32F103 基于 ARM Cortex-M3 内核,不包含硬件除法器(如UDIV/SDIV指令)。所有除法运算均由软件实现,执行时间较长(32位除法需数十个时钟周期)。 -
编译器处理方式
- 直接使用
/运算符时,编译器会自动调用运行时库的软件除法函数(如__aeabi_uidiv无符号除法)。 - 示例代码:
uint32_t a = 1000, b = 5; uint32_t result = a / b; // 触发软件除法
- 直接使用
-
优化建议
- 移位替代除法:对 2 的幂次方除数,用右移代替(如
x / 8→x >> 3)。 - 定点数缩放:将浮点运算转换为整数运算(如
x / 3.14→x * 100 / 314)。 - 查表法:预计算常用除数的倒数,改用乘法(如
x / 7 ≈ x * (1/7))。 - 避免实时计算:在非关键代码段执行除法,或预先计算结果。
- 移位替代除法:对 2 的幂次方除数,用右移代替(如
-
性能对比 运算类型 时钟周期 (approx) 32位无符号除法 12-40 周期 32位乘法 1 周期 移位操作 1 周期 -
特殊注意事项
- 除零保护:需手动检查除数是否为0,避免程序崩溃。
- 数据类型选择:无符号除法比有符号更快,尽量使用
uint32_t。
若需硬件加速,可考虑升级到带 Cortex-M4/M7 的型号(如 STM32F4/F7),其支持单周期硬件除法指令。
STM32F103VET6
1970-01-01 08:00:00 至 1970-01-01 08:00:00
采用STM32F103硬件ADC功能进行光照强度采集
光照强度采集ADC方式采集,STM32F103本身自带有硬件ADC功能。将采集到的数据实时刷新到屏幕上即可完成波形显示。
2022-05-31 11:32:52
芯片短缺如何用HK32F103换掉STM32F103
本篇笔记主要记录因为芯片短缺,使用HK32F103换掉了STM32F103的过程和注意事项。 准备工作 准备之前的STM32F103工程。 测试
2021-11-01 14:14:48
基于STM32F103的三相变频器方案设计
成熟三相变频器方案,基于STM32F103设计开发: 原理图和PCB源文件(AD软件)。 BOM清单 基于STM32F103控制源代码工程文件(keil) 软件
2020-12-07 10:33:38
7天热门专题
换一换
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- dtmb信号覆盖城市查询
- EDA是什么?有什么作用?
- 中科院研发成功2nm光刻机
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 如何进行编码器的正确接线?接线方法介绍
- 什么是场效应管?它的作用是什么?
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- amoled屏幕和oled区别
- 苹果nfc功能怎么复制门禁卡
- 单片机和嵌入式的区别是什么
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 苹果笔记本macbookpro18款与19款区别
- 通讯隔离作用
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机