标题: STC89C52RC单片机小问题 [打印本页]

作者: WANGCHONG    时间: 2017-7-30 11:15
标题: STC89C52RC单片机小问题
STC89C52RC单片机内部程序存储空间为8k,为啥我的hex文档14k还能够下载进去

作者: lijn    时间: 2017-7-30 15:32
楼主,上传个图片看看。
作者: angmall    时间: 2017-7-30 16:43
HEX 文件是ascii码的16进制文件,包含的校验位在里边,程序烧写更可靠,但是文件所占空间更大
作者: 7890.    时间: 2017-7-30 17:06
程序 在编译完成后会出现程序的大小,date=xxx xdate=yyyycode
作者: wulin    时间: 2017-7-30 18:06
通常hex文档比实际烧写的程序大5~8倍,烧写的程序大小看这里。



作者: include599    时间: 2017-7-30 18:43
你可以用记事本打开Hex文件,会看到十六进制数字,烧录软件会吧这些文本转换成二进制数据烧录,所以最终烧入单片机的数据量不是Hex文件的大小,应该是Bin文件的大小
作者: WANGCHONG    时间: 2017-7-30 20:57
wulin 发表于 2017-7-30 18:06
通常hex文档比实际烧写的程序大5~8倍,烧写的程序大小看这里。

他这个是16进制的吧,怎么圈的红色区域(代码长度)程序大小为多少k,是不是转化为二进制后就是字节数
作者: XXXZZZ    时间: 2017-7-30 22:01
件所占空间大
作者: admin    时间: 2017-7-30 22:17
其实只有前面一部分的hex下载进去了,所以这个程序肯定是运行不正常的.
作者: WANGCHONG    时间: 2017-7-31 13:13
admin 发表于 2017-7-30 22:17
其实只有前面一部分的hex下载进去了,所以这个程序肯定是运行不正常的.

运行不正常不能把,能够达到程序所要实现的效果
作者: WANGCHONG    时间: 2017-7-31 13:17
wulin 发表于 2017-7-30 18:06
通常hex文档比实际烧写的程序大5~8倍,烧写的程序大小看这里。

Build target '目标 1'
assembling STARTUP.A51...
compiling 123.c...
123.C(24): warning C290: missing return value
linking...
Program Size: data=14.0 xdata=0 code=567
creating hex file from "123"...
"123" - 0 Error(s), 1 Warning(s).这个程序下载到单片机内部程序大小为多少呢
作者: qq704661078    时间: 2017-7-31 15:00
只是电脑文件系统的文件存储方式不一样而已,实际代码大小请参考这里:(电脑文件属性显示10.2K)

搜狗截图20170731145418.png (96.17 KB, 下载次数: 67)

搜狗截图20170731145418.png

作者: wulin    时间: 2017-7-31 17:42
WANGCHONG 发表于 2017-7-30 20:57
他这个是16进制的吧,怎么圈的红色区域(代码长度)程序大小为多少k,是不是转化为二进制后就是字节数

把这个16进制数换算成10进制就可以知道程序有多大,如某程序代码长度0E38H,换算成10进制3640,就是3.64K
作者: WANGCHONG    时间: 2017-8-1 09:04
wulin 发表于 2017-7-31 17:42
把这个16进制数换算成10进制就可以知道程序有多大,如某程序代码长度0E38H,换算成10进制3640,就是3.64K

原来如此啊
作者: lngdzfl    时间: 2018-9-23 15:52
学习了,谢谢分享问题
作者: ryxx    时间: 2018-9-23 22:16
分为code xdata data     hex文件不代表程序空间 可能一部分在数据存储区一部分在代码存储区
作者: 起个啥名好    时间: 2018-9-24 19:36
HEX 文件是ascii码的16的进制文件,包含的校验位在里边,程序烧写更可靠,但是文件所占空间更大




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1