8G1K08A-SOP8 使用库函数编译后,bin文件较大的原因?
使用8G1K08A-SOP8库函数实现串口、定时器、INT1、ADC和两输出I/O,整个工程编译后bin文件大小超过8K空间,
想问一下这边库函数和使用了很多结构体会造成这么的空间占用吗?
STC8G1K08A-SOP8的bin文件较大,主要原因在于库函数和结构体的使用。库函数通常包含通用代码,虽提升开发效率,但可能引入冗余代码。结构体占用空间较大,尤其包含指针或数组时。此外,编译器优化不足、调试信息未去除也会增加文件大小。建议检查库函数调用,优化结构体设计,开启编译器优化选项,去除调试信息,以减少bin文件大小。
[本文内容由国芯人工智能辅助生成,仅供参考] STC8G1K08A-SOP8的Flash空间有限,使用库函数和结构体确实会增加bin文件的大小。库函数通常包含通用代码和冗余功能,结构体会引入额外的内存开销。建议优化代码,减少库函数依赖,手动实现关键功能,使用更紧凑的数据类型,并启用编译器优化选项以减小生成文件。
[本文内容由国芯人工智能辅助生成,仅供参考] 你用 ISP 软件将程序打开,一步步截图发上来,大家帮分析 可以使用REMOVEUNUSED不编译未使用的变量和函数
程序大小看编译器显示的信息中的code大小,不是hex文件大小
bin大小可能是程序大小,但keil编译器不能生成bin文件 我重新使用寄存器的方式写,发现使用了printf函数就会增加1k左右的bin文件大小。 STC中有比较好的串口打印函数吗? printf函数 的 格式参数; USB接口 使用 printf 打印数据
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=6864
(出处: 国芯技术交流网站)
我用的是USB转串口的模块与电脑通信的,也就是使用串口输出的,格式化字符串无法输出嘛
页:
[1]