找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1142|回复: 8
收起左侧

关于单片机容量的一个问题

[复制链接]
ID:978416 发表于 2023-2-19 11:21 | 显示全部楼层 |阅读模式
今天在弄一个基于 ,oled显示年月日时间,温度,湿度的程序,用c516已经可以正常显示,但是改成c52rc单片机下载的时候就说空间不够,想问一下各位这种情况怎么解决,.hex文件大小28.1kb
屏幕截图 2023-02-19 111913.png
回复

使用道具 举报

ID:94031 发表于 2023-2-19 14:27 | 显示全部楼层
c516有64k程序内存,c52rc有8k程序内存,28.1k>8k所以装不下,你为什么要改。
回复

使用道具 举报

ID:1063483 发表于 2023-2-19 15:41 | 显示全部楼层
主要原因是程序太长,把程序优化一下,删掉不必要的。如果你有类似数据库表的数据,则要把记录数控制在,最好少于2048条记录。否则,要扩展内存,或者换ROM大的芯片。
回复

使用道具 举报

ID:1063483 发表于 2023-2-19 15:45 | 显示全部楼层
程序太长,优化一下,删掉一些。如果有类似于数据库表的数据,数据表的记录数最好少于2048条记录。否则,只能扩展内存,或者更换有更大内存的芯片。
回复

使用道具 举报

ID:883242 发表于 2023-2-19 17:14 | 显示全部楼层
xuyaqi 发表于 2023-2-19 14:27
c516有64k程序内存,c52rc有8k程序内存,28.1k>8k所以装不下,你为什么要改。

错!hex文件大约是实际长度的3倍,楼主只超了8k一点点。
回复

使用道具 举报

ID:1034262 发表于 2023-2-19 21:09 | 显示全部楼层
首先,选516,打开,看看程序大小,如果比8K多不多,则优化一下是有可能的,大太多就难了。

至于HEX文件,这是一个文本文件,展开成二进制文件,一般比HEX文件小,但是如果用汇编写,随意指定地址,则几十字节的HEX文件,展开成BIN也有可以有60K以上。
回复

使用道具 举报

ID:883242 发表于 2023-2-19 22:19 | 显示全部楼层
coody_sz 发表于 2023-2-19 21:09
首先,选516,打开,看看程序大小,如果比8K多不多,则优化一下是有可能的,大太多就难了。

至于HEX文件 ...

展开bin文件的时候你不会指定偏移地址吗?
回复

使用道具 举报

ID:1045628 发表于 2023-2-21 16:14 | 显示全部楼层
打开hex文件,看看倒数第三行这个蓝色的字,就是存储的地址,算一算有没有超过目标芯片的flash
51hei截图20230221161011.png
回复

使用道具 举报

ID:879348 发表于 2023-2-21 16:52 | 显示全部楼层
把一些字摸数据,图片数据转移到外部存储,只是花这么多时间去兼容一款老掉牙的单片机是否值得
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表