![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
stm32fx
文章平均质量分 82
stm32f系列的工具,框架,知识见解等
Twortemo
要技术,也要头发
展开
-
malloc 和 free 封装编写,代码中确认剩余堆空间
前景 :在我之前一篇文章中测试的第三点,探讨了堆(HEAP)空间内,对于malloc申请实际使用大小的探讨(可能又不严谨的地方),基于原本的malloc和free函数,进行封装,使得弄够在代码中检测堆是否溢出(自测无太大用处,但确实好用,以防万一出现问题)结论 :采用1字节对齐的方式,该结构体长度如图所示22个字节,但在实际空间申请的时候计算出来的act_size是0x20,也就是32个字节,最后空间释放的时候,能够得到实际上释放和申请的空间确实是0x20(32)个字节。结语 :随便写写,有用,但不多。原创 2023-06-15 16:13:41 · 121 阅读 · 0 评论 -
基于STM32F103RCx的RAM空间分布探讨
对照1~5可得,同堆区HEAP,当申请的空间加上0x04个字节后被0x08整除不了的时候,需要自动补齐,但由上式代码段可得知,栈顶往下,并没有类似堆区的起始0x08个字节不可用区域。这里会发现STACK地址减去uartRecBuff为0x9C,比设置的0x96多出了0x06个字节,这0x06个字节是进行对齐使用的,使得STACK能够被0x08整除。所以,假设用户malloc的量是n个,能够使用的最大malloc的大小是Heap_Size - 0x08 - 0x04 * n。原创 2023-04-19 11:46:21 · 405 阅读 · 1 评论 -
Boot loader更新及跳转App的三种方案
内心OS:emmm,画图画得好丑,详细讲述方案三硬件环境:STM32F103RC为例代码工具:STM32CubeMX编译环境:Keil5。原创 2023-04-17 12:17:54 · 2411 阅读 · 5 评论