找回密码
 立即注册
楼主: durongze

官方给的例子里面源文件只有一个sample.c的话, 命令行下如何生成hex呢?

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:429
  • 最近打卡:2025-05-08 00:01:49
已绑定手机

19

主题

3196

回帖

4956

积分

论坛元老

积分
4956
发表于 2024-5-8 12:49:20 | 显示全部楼层
c51生成obj文件,bl51对obj编译,最后oh51生成hex
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-05-08 04:33:05

79

主题

631

回帖

1152

积分

金牌会员

积分
1152
发表于 2024-5-8 18:38:09 | 显示全部楼层
kk*** 发表于 2024-5-8 12:23
Keil C51不清楚,但是SDCC和gcc类似,先sdcc生成ihx文件,再packihx转成hex文件

F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\C251.EXE @main.__i

F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\L251.EXE @sample.lnp

F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\OH251.EXE sample H386 RANGE (0 - 0xFFFFFF)

F:\stc\STC32G-DEMO\03-7Segment\C>dir /b
build_stc.bat
main.c
sample.build_log.htm
sample.uvgui.du
sample.uvopt
sample.uvproj
功能说明.txt
----------------------
我本来是想弄清楚具体应该怎么编译,原理这个我知道的。
----------------------
上面是我后来弄清楚的具体命令,这个已经确定了。
不过应该少了步骤,具体少了哪一步还没弄清楚。
不过上面的命令很奇怪,还得进一步分析。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-05-08 04:33:05

79

主题

631

回帖

1152

积分

金牌会员

积分
1152
发表于 2024-5-8 22:42:17 | 显示全部楼层
so*** 发表于 2024-5-8 12:49
c51生成obj文件,bl51对obj编译,最后oh51生成hex

嗯,这个是原理。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:459
  • 最近打卡:2025-05-08 09:04:05
已绑定手机

13

主题

1271

回帖

3027

积分

论坛元老

积分
3027
发表于 2024-8-6 11:28:28 | 显示全部楼层
duro*** 发表于 2024-5-8 18:38
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\C251.EXE @main.__i

F:\stc\STC32G-DEM ...

C51和C251是一样的方法,命令行下运行:
SET C251INC=D:\C251\INC
SET C251LIB=D:\C251\LIB

D:\C251\C251.exe main.c
D:\C251\L251.exe main.obj
D:\C251\OH251 main hex
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:459
  • 最近打卡:2025-05-08 09:04:05
已绑定手机

13

主题

1271

回帖

3027

积分

论坛元老

积分
3027
发表于 2024-8-6 11:30:31 | 显示全部楼层
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-05-08 04:33:05

79

主题

631

回帖

1152

积分

金牌会员

积分
1152
发表于 2024-8-13 18:25:17 | 显示全部楼层
21cns*** 发表于 2024-8-6 11:30
更多细节可以看https://www.stcaimcu.com/forum.php?mod=viewthread&tid=8320&highlight=%E5%91%BD%E4%BB%A ...

你的没写步骤啊,就设置个变量就完事了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:459
  • 最近打卡:2025-05-08 09:04:05
已绑定手机

13

主题

1271

回帖

3027

积分

论坛元老

积分
3027
发表于 2024-8-13 19:04:33 | 显示全部楼层
duro*** 发表于 2024-8-13 18:25
你的没写步骤啊,就设置个变量就完事了。

命令就三条,你试试就知道了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:459
  • 最近打卡:2025-05-08 09:04:05
已绑定手机

13

主题

1271

回帖

3027

积分

论坛元老

积分
3027
发表于 2024-8-13 19:11:45 | 显示全部楼层
duro*** 发表于 2024-8-13 18:25
你的没写步骤啊,就设置个变量就完事了。

F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\C251.EXE @main.__i       -----main.--i文件就是个文本文件,里面是c文件名及参数,可以直接写到C251.exe命令后面

F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\L251.EXE @sample.lnp-------------sample.lnp文件就是个文本文件,里面是obj文件名及参数,可以直接写到L251.exe命令后面

F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\OH251.EXE sample H386 RANGE (0 - 0xFFFFFF)

以下文件,命令行编译时不需要
sample.build_log.htm
sample.uvgui.du
sample.uvopt
sample.uvproj
功能说明.txt


这下清楚了没?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-05-08 04:33:05

79

主题

631

回帖

1152

积分

金牌会员

积分
1152
发表于 2024-8-14 07:22:43 | 显示全部楼层
21cns*** 发表于 2024-8-13 19:11
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\C251.EXE @main.__i       -----main.-- ...

感谢大佬啊。。。。 。各位小伙伴,没跟上的赶紧学习。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:225
  • 最近打卡:2025-05-08 04:33:05

79

主题

631

回帖

1152

积分

金牌会员

积分
1152
发表于 2024-8-14 07:24:04 | 显示全部楼层
21cns*** 发表于 2024-8-6 11:28
C51和C251是一样的方法,命令行下运行:
SET C251INC=D:\C251\INC
SET C251LIB=D:\C251\LIB

     会啦,谢谢大佬。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-9 03:10 , Processed in 0.122861 second(s), 111 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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