- 博客(5)
- 收藏
- 关注
原创 MCU微小系统下的纯整形快速正余弦三角函数实现
当MCU平台资源非常紧张且只有整数运算指令时,可以通过查表近似运算来快速得到正余弦等各种三角操作。为规避浮点操作,可通过0~90度角度放大得到一个整数输入区间,相应结果也适当放大便于工程计算和精度取舍。具体实现如下。实现框架:1)整数对齐: 计算角度0.00~90.00度区间放大100倍取整到0~9000整数,以便于整数处理。 三角相应结果放大1000倍。 比如sin(30),实际输入时30对应3000(放大100倍),结果0.5对应500(放大1000倍)。2)定义并实
2021-07-12 14:43:27 1099
原创 MCU裸系统下快速平方根实现
很多MCU平台均没有支持完整的数学运算指令,此时如果计算算术平方根就需要利用软件函数库,但是这些库代码一般都会占用不少的ROM空间,当ROM区域特别紧张时可能无法利用现成的库代码,此时就要自己实现一个快速平方根。以下是一个典型的逼近法实现的快速平方根函数,只用了整数乘法就可以做到32位范围内的整数平方根计算,并且计算中边界值始终按照二分法定位可以显著缩短查找逼近时间,算法复杂度近似于Log2(N)。算法:0) 声明并准备如下变量: value - 要计算平方根的原始输入数值 s - 平
2021-07-09 17:49:50 345 1
原创 华大HC32L系列运行中FLASH热擦除
华大HC32L系列运行中FLASH热擦除实现运行中自己擦除自己1)预留Secure区域2)调整驱动运行位置3)编写一个新的擦除烧写程序实现运行中自己擦除自己目前很多项目实现都要支持MCU级别的OTA,通过各种通讯途径从OTA Server拿到版本后并最终要烧写到运行区域并用新版本启动系统。由于华大的擦除程序必须从Flash开头区域运行(小于Flash偏移0x8000,部分型号略有差异),一般会通过放置在头部的Loader来实现这个。但是当容量受限,本身APP空间已经不够的情况下Loader可能就会被拿掉
2021-07-08 14:32:14 1152 3
原创 IOT主流MCU: STM32和ESP32的学习了解
1. 背景和总体介绍一直以来都忙于做各种项目和产品,使得始终未能抽空很好的总结一下积累的在STM32L系列和ESP32这些MCU上的各种知识点,正好这次开发完之前的主体框架及版本后距离下一个大版本有了个空档期,我打算详细的记录一下这些知识点和学习心得并和各位进行交流。希望在和大家交流的同时,也能得到反馈并更正自己认识上的不足或者错误。由于接触和掌握的局限性,这里记录的内容只是我自己在工作和学习...
2019-10-15 17:28:05 10432 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人