[AVR单片机] 宏定义后加个函数是什么用法???

[复制链接]
3478|5
 楼主| areshan 发表于 2010-8-23 14:52 | 显示全部楼层 |阅读模式
#if defined ( ZDO_BIND_UNBIND_REQUEST )
/*
* ZDP_BindReq - bind request
*
* @MT SPI_CMD_ZDO_BIND_REQ
* (UInt16 DstAddr,
*  UInt64 SrcAddress,
*  byte SrcEndpoint,
*  uint16 ClusterID,
*  zAddrType_t *DstAddress,
*  byte DstEndpoint,
*  byte SecuritySuite)
*
*/
#define ZDP_BindReq( dstAddr, SourceAddr, SrcEP, \
              ClusterID, DestinationAddr, DstEP, SecurityEnable ) \
                       ZDP_BindUnbindReq( Bind_req, dstAddr, \
                            SourceAddr, SrcEP, ClusterID, \
                            DestinationAddr, DstEP, SecurityEnable )
#endif
上面#define 后面加个函数是什么用法???没有见过,哪位大侠能给小弟上堂课???
粉丝 发表于 2010-8-23 15:01 | 显示全部楼层
#define ZDP_BindReq( dstAddr, SourceAddr, SrcEP, \
              ClusterID, DestinationAddr, DstEP, SecurityEnable )

                       ZDP_BindUnbindReq( Bind_req, dstAddr, \
                            SourceAddr, SrcEP, ClusterID, \
                            DestinationAddr, DstEP, SecurityEnable )
重新多起一个名字而已。兼容以前写的软件名称。
潜艇8421 发表于 2010-8-23 15:13 | 显示全部楼层
#define ZDO_BIND_UNBIND_REQUEST  1        //在头文件中定义1之后。
//#define ZDO_BIND_UNBIND_REQUEST  0

#if defined ( ZDO_BIND_UNBIND_REQUEST )     //这变成真,就执行随后宏中的语句。
#define ZDP_BindReq( )    ZDP_BindUnbindReq( )
#endif
 楼主| areshan 发表于 2010-8-23 15:34 | 显示全部楼层
哦,谢谢大家,没有看到后面还有个函数
 楼主| areshan 发表于 2010-8-23 15:35 | 显示全部楼层
return fillAndSend( &ZDP_TransID, dstAddr, End_Device_Bind_req, len );
上面的return 返回的是函数???
kanprin 发表于 2010-8-23 16:20 | 显示全部楼层
等价于
a=fillAndSend( &ZDP_TransID, dstAddr, End_Device_Bind_req, len );
return a;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

127

主题

728

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部