微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > Warning: function "HCI_LE_ConnUpdateCmd" declared implicitly

Warning: function "HCI_LE_ConnUpdateCmd" declared implicitly

时间:10-02 整理:3721RD 点击:

我在从机工程里移植主机程序。

发现一个警告Warning[Pe223]: function "HCI_LE_ConnUpdateCmd" declared implicitly

跟踪进去,发现在hci.h文件里有定义。在1445行

需要定义:

#if defined(CTRL_CONFIG) && (CTRL_CONFIG & INIT_CFG)

extern hciStatus_t HCI_LE_ConnUpdateCmd( uint16 connHandle,

uint16 connIntervalMin,
uint16 connIntervalMax,
uint16 connLatency,
uint16 connTimeout,
uint16 minLen,
uint16 maxLen );
#endif // CTRL_CONFIG=INIT_CFG

请问,这个怎么定义呀?怎么弄?

谢谢了!

头文件没包含?

包含了

include "hci.h"

没有申明函数原型吧?解决办法看这边: http://blog.sina.com.cn/s/blog_629f56a70100irbn.html

这个定义的含义是:如果你宏定义中出现了CTRL_CONFIG,而且CTRL_CONFIG的值按位与INIT_CFG后的值为真,那么就声明 HCI_LE_ConnUpdateCmd这个函数原型,反之不声明。所有这些都是在编译环节完成的,

你的警告显然是没有声明函数原型,也就是说要么你移植的程序没有宏定义CTRL_CONFIG,要么你定义了CTRL_CONFIG,但是定义的数值不等于INIT_CFG,

可以先去掉#if defined(CTRL_CONFIG) && (CTRL_CONFIG & INIT_CFG)  和#endif // CTRL_CONFIG=INIT_CFG 这两句,试试。

谢谢你的回复。

去掉#if defined(CTRL_CONFIG) && (CTRL_CONFIG & INIT_CFG)  和#endif // CTRL_CONFIG=INIT_CFG 这两句,还是一样鞥名。

没有声明!

你可以再从机工程里,把从机程序都删掉,添加主机程序。

添加相应的文件,比如profile的central.c .h

我的程序也没有你们的那么复杂有宏定义,文件也包含进去了。但是怎么也提示说declared implicity呢?求大神指导

buildConfig.cfg中有,修改为

//-DHOST_CONFIG=BROADCASTER_CFG
//-DHOST_CONFIG=OBSERVER_CFG
//-DHOST_CONFIG=PERIPHERAL_CFG
//-DHOST_CONFIG=CENTRAL_CFG
//-DHOST_CONFIG=BROADCASTER_CFG+OBSERVER_CFG
//-DHOST_CONFIG=PERIPHERAL_CFG+OBSERVER_CFG
//-DHOST_CONFIG=CENTRAL_CFG+BROADCASTER_CFG
-DHOST_CONFIG=PERIPHERAL_CFG+CENTRAL_CFG

真厉害
谢谢你 

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top