找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8152|回复: 22
收起左侧

keil4编程零错误,无法生成hex文件 。

  [复制链接]
ID:50092 发表于 2019-7-27 23:20 | 显示全部楼层 |阅读模式
5黑币
  代码没有错误
O37D4S_3%Q(FFL2`{7Q3B$O.png
hex未生成
1.png

2.png

3.png

4.png



程友们  请教

回复

使用道具 举报

ID:546770 发表于 2019-7-28 08:37 | 显示全部楼层
有两个错误,ERRORL107说的是你的单片机RAM不够,ERRORL105说的是data空间不够!
回复

使用道具 举报

ID:439613 发表于 2019-7-28 08:45 | 显示全部楼层
ss

你看看 你那个选项框 : 目标1“目标1”设置选项  中有个框select Folder 点击 看你选择的地址是哪里
地址看看选的是哪里

要是还不行,就重新装一下
回复

使用道具 举报

ID:438003 发表于 2019-7-28 08:50 来自手机 | 显示全部楼层
如何生产hex,https://jingyan.baidu.com/article/fd8044fa232bf05031137a21.html
回复

使用道具 举报

ID:438003 发表于 2019-7-28 08:51 来自手机 | 显示全部楼层
或者是你软件可能有问题。
回复

使用道具 举报

ID:438003 发表于 2019-7-28 08:58 来自手机 | 显示全部楼层
keil软件百度云链接链接:https://pan.baidu.com/s/1MXg-1xHgblkvziia-L3KJQ提取码:y308复制这段内容后打开百度网盘手机App,操作更方便哦
回复

使用道具 举报

ID:52944 发表于 2019-7-28 09:29 | 显示全部楼层
第二幅图和第三幅图显示内存空间溢出,参考https://blog.csdn.net/yishengzhiai005/article/details/25755181
回复

使用道具 举报

ID:50092 发表于 2019-7-28 09:57 | 显示全部楼层
12345678.. 发表于 2019-7-28 08:50
如何生产hex,https://jingyan.baidu.com/article/fd8044fa232bf05031137a21.html

谢谢你的回答,这个我早就看过了,不行。
回复

使用道具 举报

ID:50092 发表于 2019-7-28 10:15 | 显示全部楼层
小黑屋525 发表于 2019-7-28 08:37
有两个错误,ERRORL107说的是你的单片机RAM不够,ERRORL105说的是data空间不够!

谢谢你的回答,怎么解决呢?
回复

使用道具 举报

ID:50092 发表于 2019-7-28 10:20 | 显示全部楼层
换52 ;出现Program Size: data=149.0 xdata=0 code=2452  (程序大小:数据=149.0 xdata=0代码=2452)
回复

使用道具 举报

ID:546770 发表于 2019-7-28 10:38 | 显示全部楼层
迵忆那段程序 发表于 2019-7-28 10:15
谢谢你的回答,怎么解决呢?

右键单击Target选择“Options for Target'Target1'”就会出来一个框,在memory model中选择compact:variables in pdata试试:
回复

使用道具 举报

ID:243491 发表于 2019-7-28 10:59 | 显示全部楼层
要么换单片机,要么减少你的代码量
回复

使用道具 举报

ID:390234 发表于 2019-7-28 11:11 | 显示全部楼层
换内存更大的单片机
回复

使用道具 举报

ID:524818 发表于 2019-7-28 12:53 | 显示全部楼层
keil4卸载重装,装完了破(不汉化)英文界面再试试
回复

使用道具 举报

ID:307020 发表于 2019-7-29 16:33 | 显示全部楼层
Error 107 MCU RAM不够,图形数据太大了,减减肥吧。



回复

使用道具 举报

ID:365677 发表于 2019-7-30 11:14 | 显示全部楼层
把idata改为xdata
回复

使用道具 举报

ID:317612 发表于 2019-7-30 11:42 | 显示全部楼层
应该是ram不够
回复

使用道具 举报

ID:592379 发表于 2019-7-30 15:29 | 显示全部楼层
单片机ram太小,第一个错误都已经告诉你了
回复

使用道具 举报

ID:588778 发表于 2019-7-31 10:31 | 显示全部楼层
data空间已经不够用,可能有好多函数,函数内部的局部变量又没有定义空间,系统会将变量分配到你在Otions for Target 对话框里的设置的空间,网上搜一下都有
https://www.cnblogs.com/bison1989/archive/2011/06/02/2067626.html
回复

使用道具 举报

ID:589552 发表于 2019-8-1 16:51 | 显示全部楼层
编译提示消息很明显指出:  idata 溢出,空间不足长度为 0x80H。  因此导致 数组变量dispRam被丢弃。
回复

使用道具 举报

ID:509627 发表于 2019-8-5 10:21 | 显示全部楼层
main.c都没有吗
回复

使用道具 举报

ID:579077 发表于 2019-8-5 18:07 | 显示全部楼层
[img]点击project-----options for Target''Target 1"  会弹出来一个对话框中,选择output栏,勾选ceeate Hex file再编译一下就可以了
回复

使用道具 举报

ID:590652 发表于 2019-8-6 09:52 | 显示全部楼层
这不是软件问题,是你的内存超出了,看你图2,内存有149了,51单片机只能装128个字节,你需要换52芯片(写程序时选择52芯片)52内存有256个字节,还要换个头文件,REGX52.H。还有一个办法就是把你数组前加的code改成data,他就会存储在外部存储器上,想当于我们电脑里的机械硬盘。看你下面编译输出窗口中data有没有超出128,如果超出就还是不行,就得换52或者更高级的单片机
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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