AT89c2051单片机能烧写多大的程序文件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AT89c2051单片机能烧写多大的程序文件?相关的知识,希望对你有一定的参考价值。
我的程序用keil编译后是CODE:978。但是在烧写的时候烧写的程序总是超过2k,结果导致一直提示数据校验错误,这到底是怎么回事?请高手指点指点!!
最大2K,从你的截图上看,最后一个错误地址已经到09D6了,转换成十进制就是2518字节。你程序明显超了400多字节解决办法:
1。精简程序
2。C改汇编
3。换AT89c4051追问
为什么生成的hex文件会大那么多呢?有没有什么办法能在不改变程序的情况下减少一些??因为改用汇编的话太麻烦了。
会不会在我们生成的hex文件是不是多了一些没有的程序出来占用了能存??
如果有源代码,那就试试在keil里面设置代码大小优化(最终生成的代码量小),操作方法(我的是英文版):
项目工作区Project框里的Target 1右键->Options for Target 'Target'->选择C51选项卡->在 侧重Emphasis下拉框里面选择第一项Favor size
然后重新编译代码,代码会小一些,如果代码小于2K就OK.
假如没有源代码或者优化出来的code还是大于2K,只有换AT89c4051 ,这块单片机价格和2051差得不多,除了flash是4K以外,其他和2051一样可以直接替换AT89C2051。
以上是关于AT89c2051单片机能烧写多大的程序文件?的主要内容,如果未能解决你的问题,请参考以下文章
烧写程序时提示文件末地址超过芯片容量,单片机AT89c2051,写的程序代码无论多少烧写时都出现一样的问题