OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8555|回复: 19

使用库函数的时候,每次都会遇到的一个问题

[复制链接]

30

主题

156

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-6-14
在线时间
206 小时
发表于 2012-7-14 20:57:59 | 显示全部楼层 |阅读模式
我的工程是使用的原子大哥的一个范例来做的,就是使用库函数+ucGUI,但是我每次编译的时候,都会出现同一个问题:

这个问题移植都是困扰着我使用库函数的原因,在使用那个寄存器版本的程序是不可能出现这样的问题的,上面的意思也我明白,就是重复定义,可是,我将原子大哥的ucGUI+ucOS的那个范例中关于液晶驱动的“LCDDriver”中的全部文件夹全部都拷贝过来,问题依然如故,我也不知道其中的问题是处在那里,我目前唯一知道的,就是问题是处在这个驱动上面,但是,无论是头文件,还是其他的部分,我都检查过,就是不知道问题出现在那个地方,请各位大侠给看看,看是什么原因导致的,网上的我也查过了,这个问题纠结了好多天依然没有解决,我在附件中附上我的源代码。我想,如果这个问题能解决,那么就可以将ucGUIBuilder4.0软件,直接添加到这个上面用了,这个问题解决了,我也会与大家一起分享一下。

跑马灯(库).zip

1.94 MB, 下载次数: 184

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

30

主题

156

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-6-14
在线时间
206 小时
 楼主| 发表于 2012-7-14 21:06:28 | 显示全部楼层
这个图像可能不怎么清楚,我粘贴一个:
“C:\Keil\ARM\INC\ST\STM32F10x\stm32f10x_type.h(23): error:  #256: invalid redeclaration of type name "s32" (declared at line 312 of "..\?-μ???stm32f10x.h")”
C:\Keil\ARM\INC\ST\STM32F10x\stm32f10x_type.h(27): error:  #256: invalid redeclaration of type name "sc32" (declared at line 316 of "..\?-μ???stm32f10x.h")
回复 支持 反对

使用道具 举报

30

主题

156

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-6-14
在线时间
206 小时
 楼主| 发表于 2012-7-14 21:07:39 | 显示全部楼层
请各位不要来句重复定义,这个我也知道,如果是一开始遇到这个问题的话,那我也不会在这个上面问了,希望各位大神伸出援助之手。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-7-14 21:54:09 | 显示全部楼层
你搜索s32有定义的头文件.肯定有2个以上有定义过s32,然后去掉其中一个头文件 .
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

30

主题

156

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-6-14
在线时间
206 小时
 楼主| 发表于 2012-7-14 22:19:03 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
嗯,说是这样说,但是一直都找不到其中的原因,这个肯定我也是明白是重复定义了,就是说有两个定义了s32,但是,我就是搞不懂,为什么这个程序会无缘无故的链接到“C:\Keil\ARM\INC\ST\STM32F10x”这个下面的文件夹中来,而且我的工程文件都好像没有定义过“stm32f10x_type.h”这个头文件,但是编译时候出现的错误,很显然又和这个文件相关。
回复 支持 反对

使用道具 举报

30

主题

156

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-6-14
在线时间
206 小时
 楼主| 发表于 2012-7-14 23:08:40 | 显示全部楼层
回复【5楼】jiafangshi:
---------------------------------
问题已经解决了,明天我附上我的原始版本的程序和一个软件,可以加快大家开发ucGUI,哈哈,,,我也是初学者,花了两天时间,来建立一个ucGUI的最最基础的模版程序,终于弄好了,唉
回复 支持 反对

使用道具 举报

19

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2012-9-7
在线时间
0 小时
发表于 2012-9-20 22:04:23 | 显示全部楼层
回复【6楼】jiafangshi:
---------------------------------
大哥我也遇到了和你相同的问题,到底是怎么回事?求赐教,感激不尽!
回复 支持 反对

使用道具 举报

19

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2012-9-7
在线时间
0 小时
发表于 2012-9-20 22:04:57 | 显示全部楼层

回复【6楼】jiafangshi:
回复【5楼】jiafangshi:
---------------------------------
问题已经解决了,明天我附上我的原始版本的程序和一个软件,可以加快大家开发ucGUI,哈哈,,,我也是初学者,花了两天时间,来建立一个ucGUI的最最基础的模版程序,终于弄好了,唉
---------------------------------
大哥我也遇到了和你相同的问题,到底是怎么回事?求赐教,感激不尽!
回复 支持 反对

使用道具 举报

19

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2012-9-7
在线时间
0 小时
发表于 2012-9-20 22:05:14 | 显示全部楼层
回复【6楼】jiafangshi:
---------------------------------
大哥我也遇到了和你相同的问题,到底是怎么回事?求赐教,感激不尽!
回复 支持 反对

使用道具 举报

13

主题

314

帖子

0

精华

高级会员

Rank: 4

积分
713
金钱
713
注册时间
2012-7-20
在线时间
102 小时
发表于 2012-9-20 22:50:53 | 显示全部楼层
这个要关注一下,一直以来不习惯用库函数有很大的原因是这个、莫非有什么软件可以轻松解决?
互联网,智能设备爱好者,欢迎讨论任何有意思的想法。
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2012-9-20
在线时间
0 小时
发表于 2012-9-21 09:13:32 | 显示全部楼层
回复【9楼】zbh2012000:
------------------------------
这个是因为你的库和你的软件版本不匹配造成的!你用的应该是KEIL4.0的版本
万里长城万里空,百世英雄百世梦!!!
回复 支持 反对

使用道具 举报

19

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2012-9-7
在线时间
0 小时
发表于 2012-9-21 10:50:49 | 显示全部楼层
是啊,那怎么解决呢?
回复 支持 反对

使用道具 举报

19

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2012-9-7
在线时间
0 小时
发表于 2012-9-21 10:51:28 | 显示全部楼层
回复【11楼】wucjccit:
---------------------------------
那怎么解决呢?
回复 支持 反对

使用道具 举报

98

主题

408

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1280
金钱
1280
注册时间
2010-12-14
在线时间
0 小时
发表于 2012-9-21 11:37:04 | 显示全部楼层
因为原子的文件引入了类似XXXXlib.h或者XXXmap.h,这些文件在你的工程找不到就会去MDK目录去找,最后找到了就会引用到XXX_type.h,这里面就和你的工程里面的stm32f10x.h重复定义了。。
所以解决的办法是:头文件修改,不要引入XXXlib.h和XXmap.h。
希望openedv能给大家提供一个友好的技术交流平台!
回复 支持 反对

使用道具 举报

10

主题

232

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2288
金钱
2288
注册时间
2012-8-24
在线时间
247 小时
发表于 2013-2-20 14:33:32 | 显示全部楼层
楼主的问题是怎么解决的呢,能否告知,谢谢
单片机技术交流请加127034610
回复 支持 反对

使用道具 举报

1

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2014-12-16
在线时间
0 小时
发表于 2015-1-19 15:03:50 | 显示全部楼层
回复【4楼】正点原子:
------------------------
原子哥   有没有彻底解决的方法     删掉治标不治本
正在入门.........
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-1-19 23:17:48 | 显示全部楼层
回复【16楼】429893437:
---------------------------------
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

2

主题

102

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
281
金钱
281
注册时间
2014-12-21
在线时间
0 小时
发表于 2015-1-19 23:29:00 | 显示全部楼层
回复【16楼】429893437:
---------------------------------
不知道能不能用这种方法解决:

#ifndef xxx
定义一下xxx
#endif
回复 支持 反对

使用道具 举报

1

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2014-12-16
在线时间
0 小时
发表于 2015-1-22 11:39:31 | 显示全部楼层
回复【18楼】exv:
---------------------------------
有试过,不过也麻烦,我直接拷贝程序修改了
正在入门.........
回复 支持 反对

使用道具 举报

4

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2015-3-16
在线时间
3 小时
发表于 2015-3-20 17:53:54 | 显示全部楼层
回复【14楼】张洋:
---------------------------------
我没有引入这些头文件啊,我上次实验是引入了stm32f10x_lib.h   出现了错误,改了这个头文件就好了,但是这次我都没用使用这个头文件,他还是报错
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-24 19:44

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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