hongkong 发表于 2013-2-25 16:33:16

请教C8051F,Keil开发环境,编译生成的Hex大于64K,怎么解决?

请教C8051F,Keil开发环境,编译生成的Hex大于64K,要下载到MCU中怎么做?

brieve 发表于 2013-2-25 16:49:16

什么c8051f单片机ROM大于64k啊?

dtlz 发表于 2013-2-25 16:49:25

精简或优化程序

lgnativs 发表于 2013-2-25 16:50:34

可以分段的.你找一下,对应的芯片的例程,应该会有说明的.

hongkong 发表于 2013-2-25 17:42:22

谢谢,各位 转换成bin 文件可以吗?转换后小于64K

hcambridge 发表于 2013-2-25 17:57:36

烧录进去的实际是bin,HEX里有地址等信息是不会烧录到芯片里的。
看实际bin的大小才是需要flash的大小。

hhxb 发表于 2013-2-25 18:02:22

ls正解
超过你所选芯片的FLASH大小软件会提示的

清雨影 发表于 2013-2-25 18:38:13

烧吧,HEX64K实际估计只有十几K

WillFeng 发表于 2013-2-25 21:14:12

580flash128k

cocom 发表于 2013-2-25 21:39:42

C8051F有一些型号的FLASH是大于64K的(大概有128K的),可以用KEIL的ROM分段技术分成4个32K的区块,KEIL会编译成四个32K区块的,下载程序会自动下载这四个HEX文件的。

jlhgold 发表于 2013-2-26 07:34:28

hex不是实际文件大小.bin才是!

hongkong 发表于 2013-2-26 09:29:39

谢谢各位!

laujc 发表于 2013-2-26 09:58:52

用过ROM大于64K的51芯片,芯片的做法是有一个通用的区块,比如32K,再有片选几个32K的区块.
这样程序的最大寻址不会超过2^16,即64K

Alimy 发表于 2013-2-26 15:10:05

调下优化等级看看是否hex大小有变化。。
页: [1]
查看完整版本: 请教C8051F,Keil开发环境,编译生成的Hex大于64K,怎么解决?