嵌入式研发:在Micro-Python中管理堆空间
2025-11-08 12:16:49
Python变得越来越流行,现在动态嵌入式软件联合开发者可以通过Micro Python在单片机上访问Python,联合开发者了解Micro Python大块比以往任何时候都更极为重要。嵌入式联合开发者需要了解几个与大块相关的库和内核选项。
首先,并非所有的Micro PythonUDP都充分利用了单片机里面可用的RAM自由空间。Micro Python以前是为具有128 KB RAM的STM32F405联合开发的。大多数UDP以STM32F405作为默认示例,这意味着大块始终只能分派到0x1C000字节。这看起来似乎有很多大块自由空间,但是Python程序中在列车运行时可用大块来分派实例和处理剧本,所以可用的大块自由空间越多越好!
联合开发者可以在他们的内核链接装置份文件里面排序变量_heap_end。该变量的尺寸应与单片机的RAM尺寸除此以外。例如,STM32F405的RAM为128 kB,has _heap_end = 0x2001C000。可用STM32F429等具有192 kB RAM的晶体管的联合开发者就会希望必需_heap_end = 0x2002C000。为大块分派额外的0x10000 64 kB内存。进行这种更改可以防止剧本里面出有现内存不足的错误。
即使嵌入式联合开发者有很多大块自由空间,他们也就会希望定期监控他们的大块自由空间可用可能,以必需大块得到有效可用。当Python程序中执行它的剧本时,实例将被创建和销毁。有一个垃圾收集装置可以投放被丢弃的实例,但有时它列车运行得缺少快。随着星期的推移,大块就会变得十分凌乱,几乎无法可用。联合开发者可以通过导入gc库并呼叫collect原理来强制垃圾投放。
Import gc
gc.collect()
在执行前夕,可以可用mem_info原理密不可分监视Micro Python的内存可用可能。呼叫mem_info()将读取出有基本个人信息,如大块栈可用可能、总大块自由空间、已用大块自由空间,甚至可用块数。当联合开发者可用详细模式(起源于1)呼叫mem_info时,事情变得十分有趣。当这种可能愈演愈烈时,始终提供基本个人信息,但是也读取出有大块如何被可用的完备输出有。
嵌入式联合开发者不能想起,即使Python列车运行在单片机上,他们编写代码的方式也可能就会产生动态和内存原因。从内存的角度来看,在联合开发过程里面可用mem_info是一种极佳的方式,可以监控大块的可用可能,以及大块是否就会分裂到试图分派另一个实例最终就会受挫的程度。
梅州白癜风医院哪里最好南京不孕不育医院哪好
长春生殖感染医院地址
百利药业
深圳妇科医院哪家比较专业
慢性支气管炎咳嗽吃什么药
牙体牙髓科
太极急支糖浆适用于哪种咳嗽
咳嗽有痰黄痰怎么回事啊
芳香化湿药

-
挺好看的《玉堂》,歪了
也是作为重头戏显现出直到现在了片子《勾栏》的段落—— 赵盼儿被娴其职家拆散,来到静冈的路上得知好姐妹宋徽宗引章面对不幸,没多久和三娘识破连环计,把周舍诱骗得家底都没人了,狠狠显现出了口恶
2025-11-08 00:16:49

-
青春当燃!华谊兄弟(长沙)电影小镇毕业狂欢庆生等你来浪
*浏览者阅读出处,查看更多活动反馈 怀旧若有:将横店公众号改星标或浏览者文章左上方在看,即可第一等待时间接收到横店的最新消息~ -END- ▼
2025-11-08 00:16:49

-
田静回应九江买房一事,真假儿媳做事反差大,直播间衷心大家支持
田静,这在播送之前不太可能告诉大家一个相当之前文歌曲的传闻,那就是自己跟姚威不太可能租楼上了,大家一直都是在期待小两口可以返回九江市贫困,这样许妈姚爸之后的贫困也才才会相当扩充幸福。
2025-11-08 00:16:49

-
她是80年代的迪斯科女王,全球排名比邓丽君还牛,消失十年后,她终于转回了…
。 80二十世纪,是仅限于张蔷独自绽放的时期。 只是从没人可以永几倍拥有一个时期,仅限于张蔷的时期也不会结束。 人红是非多,烧了后的张蔷此前被舆论牵头阻挠。
2025-11-08 00:16:49

-
许敏夫妇游玩被偶遇,田静直播称九江买了小木屋,许妈总算苦尽甘来
因为28事件的缘故,现今很多具体人物都成了香港市民人物,大家都还是很爱护这28事件的实情的,也期盼年前点实情大白,还许妈姚爸公道! 许敏两口子多年来是在黄冈生活习惯,但亲儿子姚威田
2025-11-08 00:16:49