51单片机程序烧录问题,用stc官方工具,提示文件过大 60
同一个c程序,大小为244字节,同样是用STC的官方烧录工具,芯片型号为STC12cLE5202AD,其内存大小为256b,有2K闪存,用单片机厂家提供的hex文件可以正...
同一个c程序,大小为244字节,同样是用STC的官方烧录工具,芯片型号为STC12cLE5202AD,其内存大小为256b,有2K闪存,用单片机厂家提供的hex文件可以正常烧录(我不知道厂家用什么程序生成的hex文件),但经过keil编译后就提示文件超出有效空间,我已经把startup文件都删了,还是如此...求高手指教
我再详细说明一下情况,我写了个c51程序,用keil4,code size用small编译会出错,用compact正常编译,编译出来的hex文件大小为1.36k,并没有超过2k。后来经过试验发现我只要声明中断服务就无法通过small的编译(只要删了函数后面的interrupt就正常通过),错误类型为improper fix up,但是用compact就正常。然后我就找了个厂家提供的例程,一个很简单的用timer0模拟输出pwm驱动直流电机的程序,我用厂家例程文件夹里的hex文件就可以直接通过stc的烧录工具烧进单片机里,但我用keil开了个工程,调用的就是厂家文件夹里的源程序,用small编译就同样出现上述情况,用compact编译得到一个跟厂家提供的hex文件同样大小的hex,用烧录工具一打开就提示文件超出有效空间,这究竟是什么情况? 展开
我再详细说明一下情况,我写了个c51程序,用keil4,code size用small编译会出错,用compact正常编译,编译出来的hex文件大小为1.36k,并没有超过2k。后来经过试验发现我只要声明中断服务就无法通过small的编译(只要删了函数后面的interrupt就正常通过),错误类型为improper fix up,但是用compact就正常。然后我就找了个厂家提供的例程,一个很简单的用timer0模拟输出pwm驱动直流电机的程序,我用厂家例程文件夹里的hex文件就可以直接通过stc的烧录工具烧进单片机里,但我用keil开了个工程,调用的就是厂家文件夹里的源程序,用small编译就同样出现上述情况,用compact编译得到一个跟厂家提供的hex文件同样大小的hex,用烧录工具一打开就提示文件超出有效空间,这究竟是什么情况? 展开
4个回答
展开全部
经过keil编译后就提示文件超出有效空间?编译的是哪个文件?你自己的文件,还是厂家提供的源程序?
经过keil编译后就提示文件超出有效空间?是编译器说内存溢出还是说rom空间不够,还是说你烧写的时候烧写程序警告。
说清楚!
还有就是把源程序贴出来。
经过keil编译后就提示文件超出有效空间?是编译器说内存溢出还是说rom空间不够,还是说你烧写的时候烧写程序警告。
说清楚!
还有就是把源程序贴出来。
追问
源程序是厂家提供的,应该跟源程序无关吧?
追答
把厂家的源程序发过来,我试着编译一下看看,是你的软件的问题,还是程序本身的问题。
还有你的,用烧录工具一打开就提示文件超出有效空间,编译出来的hex文件大小为1.36k,这个不合理。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
keil破解了吗,没有破解的只能编1k程序
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询