jnyyz 发表于 2023-8-31 20:55:02

STC8H8K64U升级到STC32G12K128,出现C251编译错误|已解决请高手帮助看看都需要如何调整

本帖最后由 STCAI-32位8051 于 2024-5-31 10:03 编辑

CLASSES (EDATA (0x0-0xFFF),
HDATA (0x0-0xFFF))
*** ERROR L115: PARTIAL SEGMENT BELONGS TO DIFFERENT MEMORY CLASS
    SEGMENT: ?STACK
    MODULE:D:\PROGRAM FILES (X86)\KEIL\C251\LIB\C2SXS.LIB (?C_START)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
    SYMBOL:?C_STARTUP
    MODULE:D:\PROGRAM FILES (X86)\KEIL\C251\LIB\C2SXS.LIB (?C_START)
   DEFINED:STARTUP.obj (?C_STARTUP)
*** WARNING L30: MEMORY SPACE OVERLAP
    SEG:   ?CO?STARTUP?3
    FROM:    FF0000H   
    TO:      FF0003H   
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:?C_START
    MODULE:STARTUP.obj (?C_STARTUP)
*** ERROR L119: REFERENCE MADE TO ERRONEOUS SEGMENT
    SEGMENT: ?C_C51STARTUP
    MODULE:STARTUP.obj (?C_STARTUP)
    ADDRESS: FF5800H
*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
    SYMBOL:?C_START
    MODULE:STARTUP.obj (?C_STARTUP)
    ADDRESS: FF5802H
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:P1n_pure_input
    MODULE:StcRtc.obj (StcRtc)
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:?P1n_pure_input?BYTE
    MODULE:StcRtc.obj (StcRtc)
*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
    SYMBOL:P1n_pure_input
    MODULE:StcRtc.obj (StcRtc)
    ADDRESS: FF6F5CH
*** ERROR L119: REFERENCE MADE TO ERRONEOUS SEGMENT
    SEGMENT: ?C_C51STARTUP
    MODULE:D:\PROGRAM FILES (X86)\KEIL\C251\LIB\C2SXS.LIB (?C_START)
    ADDRESS: FF5815H
******************************************************************************
* RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT; USED: 9AE5H BYTE (1936%) *
******************************************************************************
Program Size: data=17.3 edata+hdata=2718 xdata=0 const=9321 code=31633
*** ERROR L115: PARTIAL SEGMENT BELONGS TO DIFFERENT MEMORY CLASS
    SEGMENT: ?STACK
    MODULE:D:\PROGRAM FILES (X86)\KEIL\C251\LIB\C2SXS.LIB (?C_START)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
    SYMBOL:?C_STARTUP
    MODULE:D:\PROGRAM FILES (X86)\KEIL\C251\LIB\C2SXS.LIB (?C_START)
   DEFINED:STARTUP.obj (?C_STARTUP)
*** WARNING L30: MEMORY SPACE OVERLAP
    SEG:   ?CO?STARTUP?3
    FROM:    FF0000H   
    TO:      FF0003H   
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:?C_START
    MODULE:STARTUP.obj (?C_STARTUP)
*** ERROR L119: REFERENCE MADE TO ERRONEOUS SEGMENT
    SEGMENT: ?C_C51STARTUP
    MODULE:STARTUP.obj (?C_STARTUP)
    ADDRESS: FF5800H
*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
    SYMBOL:?C_START
    MODULE:STARTUP.obj (?C_STARTUP)
    ADDRESS: FF5802H
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:P1n_pure_input
    MODULE:StcRtc.obj (StcRtc)
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:?P1n_pure_input?BYTE
    MODULE:StcRtc.obj (StcRtc)
*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
    SYMBOL:P1n_pure_input
    MODULE:StcRtc.obj (StcRtc)
    ADDRESS: FF6F5CH
*** ERROR L119: REFERENCE MADE TO ERRONEOUS SEGMENT
    SEGMENT: ?C_C51STARTUP
    MODULE:D:\PROGRAM FILES (X86)\KEIL\C251\LIB\C2SXS.LIB (?C_START)
    ADDRESS: FF5815H
*** ERROR L250: CODE SIZE LIMIT IN RESTRICTED VERSION EXCEEDED
    LIMIT:   0800H BYTES
Target not created.

丽江春水 发表于 2024-5-31 10:00:54

本帖最后由 STCAI-32位8051 于 2024-5-31 10:03 编辑

把原编译的辅助文件全部删除,重新编译就行了

电子DIY小家 发表于 2024-6-12 16:15:53

工程打包发上来看看吧

LJIAN 发表于 2025-3-27 12:45:51

电子DIY小家 发表于 2024-6-12 16:15
工程打包发上来看看吧

可以帮我看看这个吗?STC8G的代码移植到STC32G,代码只是把8G的头文件改成了32G的

报错

*** ERROR L115: PARTIAL SEGMENT BELONGS TO DIFFERENT MEMORY CLASS
    SEGMENT: ?STACK
    MODULE:D:\KEIL5\C251\LIB\C2ST.LIB (?C_START?)
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    NAME:    RecvData?/drive_iic
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    NAME:    SendACK?/drive_iic
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    NAME:    SendNAK?/drive_iic
*** WARNING L30: MEMORY SPACE OVERLAP
    SEG:   ?CO?STARTUP?3
    FROM:    FF0000H   
    TO:      FF0003H   
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:?C_START
    MODULE:.\Objects\STARTUP.obj (?C_STARTUP)
*** ERROR L119: REFERENCE MADE TO ERRONEOUS SEGMENT
    SEGMENT: ?C_C51STARTUP
    MODULE:.\Objects\STARTUP.obj (?C_STARTUP)
    ADDRESS: FF2D86H
*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
    SYMBOL:?C_START
    MODULE:.\Objects\STARTUP.obj (?C_STARTUP)
    ADDRESS: FF2D88H
*** ERROR L119: REFERENCE MADE TO ERRONEOUS SEGMENT
    SEGMENT: ?C_C51STARTUP
    MODULE:D:\KEIL5\C251\LIB\C2ST.LIB (?C_START?)
    ADDRESS: FF2D9BH
Program Size: data=113.3 edata+hdata=0 xdata=262 const=132 code=15023
Target not created.
Build Time Elapsed:00:00:01


LJIAN 发表于 2025-3-27 12:45:51

电子DIY小家 发表于 2024-6-12 16:15
工程打包发上来看看吧

可以帮我看看这个吗?STC8G的代码移植到STC32G,代码只是把8G的头文件改成了32G的

报错

*** ERROR L115: PARTIAL SEGMENT BELONGS TO DIFFERENT MEMORY CLASS
    SEGMENT: ?STACK
    MODULE:D:\KEIL5\C251\LIB\C2ST.LIB (?C_START?)
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    NAME:    RecvData?/drive_iic
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    NAME:    SendACK?/drive_iic
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    NAME:    SendNAK?/drive_iic
*** WARNING L30: MEMORY SPACE OVERLAP
    SEG:   ?CO?STARTUP?3
    FROM:    FF0000H   
    TO:      FF0003H   
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:?C_START
    MODULE:.\Objects\STARTUP.obj (?C_STARTUP)
*** ERROR L119: REFERENCE MADE TO ERRONEOUS SEGMENT
    SEGMENT: ?C_C51STARTUP
    MODULE:.\Objects\STARTUP.obj (?C_STARTUP)
    ADDRESS: FF2D86H
*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
    SYMBOL:?C_START
    MODULE:.\Objects\STARTUP.obj (?C_STARTUP)
    ADDRESS: FF2D88H
*** ERROR L119: REFERENCE MADE TO ERRONEOUS SEGMENT
    SEGMENT: ?C_C51STARTUP
    MODULE:D:\KEIL5\C251\LIB\C2ST.LIB (?C_START?)
    ADDRESS: FF2D9BH
Program Size: data=113.3 edata+hdata=0 xdata=262 const=132 code=15023
Target not created.
Build Time Elapsed:00:00:01


王昱顺 发表于 2025-3-27 14:11:48

LJIAN 发表于 2025-3-27 12:45
可以帮我看看这个吗?STC8G的代码移植到STC32G,代码只是把8G的头文件改成了32G的

报错


修改好了,可以编译通过了




你的工程有点乱,给你调整了一下:


里面PWM相关的部分我给屏蔽掉了,你操作了不存在的寄存器(这部分是不是拿AI写的?注意检查代码),请参考技术手册的PWM部分重新编写:

LJIAN 发表于 2025-3-27 16:08:55

王昱顺 发表于 2025-3-27 14:11
修改好了,可以编译通过了




代码是我从网上抄的,来源是不是AI我不清楚
看到一堆不知道原因的报错我是真的被吓到了,非常感谢!!!!{:ciya:}

LJIAN 发表于 2025-3-27 16:39:18

王昱顺 发表于 2025-3-27 14:11
修改好了,可以编译通过了




能问一下大佬你做了些什么让编译通过了吗?{:fadai:}

王昱顺 发表于 2025-3-27 18:12:00

LJIAN 发表于 2025-3-27 16:39
能问一下大佬你做了些什么让编译通过了吗?

看着报错一条一条修

LJIAN 发表于 2025-3-30 14:42:06

王昱顺 发表于 2025-3-27 18:12
看着报错一条一条修

大佬,我的这块板子原本是STC8G的,现在焊了块STC32G芯片上去。与STC8G不同,现在接到tb6612电机驱动芯片上STC32G的两个引脚没有PWM功能,如何能让这两个引脚输出PWM波啊?
页: [1] 2
查看完整版本: STC8H8K64U升级到STC32G12K128,出现C251编译错误|已解决请高手帮助看看都需要如何调整