3718|9

59

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

Wince依据编译根据据BSP定制的工程时怎样区分编译BSP和Wince自带的同名函数? [复制链接]

WinCE本身自带了很多函数和不同厂家所BSP里函数同名,那么WinCE在编译连接时,怎么样区分的到底上应该编译自带的函数还是BSP当中函数了。先上一网址http://space.itpub.net/?uid-16803921-action-viewspace-itemid-510085。
此帖出自WindowsCE论坛

最新回复

所谓WinCE自带的,很多并不是一定要在你的工程中使用,比如显示驱动,WinCE自带了GPE类代码,但并没有要求你一定要用这个,你只要实现相应的接口,具体是用WinCE默认的方式,还是自定义的方式,都是可以的。 其实googleman说的是对的,就是根据你BSP里代码的结构,决定了需要不需要使用wince中的某些文件,而这些,都在source文件里指定。  详情 回复 发表于 2010-6-10 10:52
点赞 关注
 

回复
举报

76

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
先自回一贴!googleman说是依据source文件当中链接的库不同,我不态理解。关键是我刚开始定制工程时,并没有指定要链接哪些库,Wince编译时怎么知道在BSP当中有重名函数,它是针对此平台选定函数,而不去链接WinCE 自带同名功能函数(实际上这些函数最后还是调用的bsp当中的函数)。
此帖出自WindowsCE论坛
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
怎么没有人回贴了!是这个问题太简单,还是我没有说清楚。
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

4
 
楼主可否举个例子?
此帖出自WindowsCE论坛
 
 
 

回复

57

帖子

0

TA的资源

一粒金砂(初级)

5
 
引用 2 楼 cjdxling 的回复:
怎么没有人回贴了!是这个问题太简单,还是我没有说清楚。


的确是有点简单,我们觉得就是这么回事啊,sources啊。我都不知道怎么表达呢。
此帖出自WindowsCE论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

6
 
ms-help://MS.VSCC.v80/MS.VSIPCC.v80/MS.WindowsCE.v60.en/CE_DevelopingDrivers/html/45d6131f-66d2-431c-ad12-232e7b23a94e.htm还有

// This example driver comes with a stubbed-out implementation of the
// low-level NLed interfaces.  OEMs that wish to produce their own
// driver can write a module containing the low-level entry points
// in their platform and simply link with the library containing this module.
// The linker will bring in the rest of the driver as an MDD.
//
// The low-level interfaces necessary that must be overridden to produce
// a platform-specific PDD are:
//
//      NLedDriverPowerDown
//      NLedDriverGetDeviceInfo
//      NLedDriverSetDevice
//      NLedDriverInitialize
//      NLedDriverDeInitialize
此帖出自WindowsCE论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

7
 
好现在举个例子,请大家帮着分析下按照WinCE自带的s3c2410BSP来说它实现中断使能功能的函数是OALIntrEnableIrqs,但是它这个函数是被WinCE 自带的函数0MInterruptEnable()来调用的,WinCE 自带这个0MInterruptEnable()这个函数位于它的oem.c文件中。但是在我现在这个EP9315开发板的interrput.c文件当中也有一个0MInterruptEnable()函数,它就是最使能我的这块开发板中中断的函数。显然是当我们在驱动中调用InterruptInitialize()函数时,它只能去调用我的开发板BSP当中这个
0MInterruptEnable()函数,而不能去调用wince自带oem.c文件当中0MInterruptEnable()函数。而在oem.c和interruput.c文件当中都包含定义0MInterruptEnable()函数的头文件,所以wince在编译时,肯定两个不能同时编译了,对吧,不然编译都通不过。我在定制工程时,并没有设置什么特别的参数,wince怎么实现这种智能编译的了。
此帖出自WindowsCE论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

8
 
googleman说明source文件,我现在把这三个source文件都贴上来,请大家分析下。
oem.c(wince 自带)
!if 0
Copyright (c) Microsoft Corporation.  All rights reserved.
!endif
!if 0
Use of this source code is subject to the terms of the Microsoft end-user
license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
If you did not accept the terms of the EULA, you are not authorized to use
this source code. For a copy of the EULA, please see the LICENSE.RTF on your
install media.
!endif

TARGETNAME=oal_intr_common
TARGETTYPE=LIBRARY

SOURCES= \
    ioctl.c \
    oem.c
此帖出自WindowsCE论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

9
 
{28b9def9-43f1-4a93-850d-4f2f5691c02e}
此帖出自WindowsCE论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

10
 
所谓WinCE自带的,很多并不是一定要在你的工程中使用,比如显示驱动,WinCE自带了GPE类代码,但并没有要求你一定要用这个,你只要实现相应的接口,具体是用WinCE默认的方式,还是自定义的方式,都是可以的。

其实googleman说的是对的,就是根据你BSP里代码的结构,决定了需要不需要使用wince中的某些文件,而这些,都在source文件里指定。
此帖出自WindowsCE论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表