找回密码
 立即注册
查看: 191|回复: 9

一个简单的数码管程序,链接时出错,说是有重复定义

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2025-04-22 12:16:00
已绑定手机

2

主题

10

回帖

66

积分

注册会员

积分
66
发表于 2025-4-22 12:16:00 | 显示全部楼层 |阅读模式
Rebuild target 'Target 1'
compiling Demo.c...
Demo.c(81): warning C138: expression with possibly no effect
compiling delay.c...
compiling smg.c...
linking...
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
    SYMBOL:  WEI_t
    MODULE:  .\Objects\smg.obj (smg)
   DEFINED:  .\Objects\Demo.obj (Demo)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
    SYMBOL:  SMG_t
    MODULE:  .\Objects\smg.obj (smg)
   DEFINED:  .\Objects\Demo.obj (Demo)
*** WARNING L57: UNCALLED FUNCTION, IGNORED FOR OVERLAY PROCESS
    NAME:    usb_bulk_intr_in/usb
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    NAME:    VSPRINTF/VSPRINTF
*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    NAME:    PUTCH/VSPRINTF
Program Size: data=8.3 edata+hdata=435 xdata=192 const=165 code=5003
Target not created.
Build Time Elapsed:  00:00:01

try07_SMG.7z

65.73 KB, 下载次数: 4

回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2025-04-22 12:16:00
已绑定手机

2

主题

10

回帖

66

积分

注册会员

积分
66
发表于 2025-4-22 12:17:16 | 显示全部楼层
想把源程序发上来,没有找到 上传附件 的按钮!

找了好几遍,没有发现“重复定义的情况啊”


静待大神的指点,个人感觉可能是模块包含这方面出问题。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:468
  • 最近打卡:2025-06-16 07:06:57
已绑定手机

79

主题

5131

回帖

9138

积分

超级版主

DebugLab

积分
9138
发表于 2025-4-22 12:58:21 | 显示全部楼层
插入代码:

截图202504221257369826.jpg

上传附件:
截图202504221258181379.jpg

点评

源程序己发,请大神指点一下!  发表于 2025-4-22 13:41
谢谢  发表于 2025-4-22 13:37
DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:567
  • 最近打卡:2025-06-16 12:27:03

11

主题

1193

回帖

5522

积分

论坛元老

积分
5522
发表于 2025-4-22 17:41:54 | 显示全部楼层
替你改了。


try07_SMG.7z (72.69 KB, 下载次数: 8)

点评

谢谢你!刚才重新编译了,下载到实验箱,运行也符合预想的状态。我仔细看了两遍,我还是不清楚你改的什么地方,我是什么地方出差错了,还请...没有起作用。   发表于 2025-4-22 19:20
谢谢!我先看。  发表于 2025-4-22 18:57
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:567
  • 最近打卡:2025-06-16 12:27:03

11

主题

1193

回帖

5522

积分

论坛元老

积分
5522
发表于 2025-4-22 19:26:59 | 显示全部楼层
这两个数组,不是全部的函数都在用,不可以放在smg.h。


//声明数码管的 码表数组
unsigned int SMG_m[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,\
                      0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E};

//声明数码管的 位序数组
unsigned int WEI_m[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};


所以才会出这个错误。
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
    SYMBOL:  WEI_t
    MODULE:  .\Objects\smg.obj (smg)
   DEFINED:  .\Objects\Demo.obj (Demo)
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
    SYMBOL:  SMG_t
    MODULE:  .\Objects\smg.obj (smg)
   DEFINED:  .\Objects\Demo.obj (Demo)

点评

谢谢!长见识了  发表于 2025-4-22 19:33
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-6-16 18:08 , Processed in 0.134579 second(s), 74 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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