您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> 编译警告,
本帖共有591个阅读者
发表帖子 发表投票 回复主题
编译警告,
tzg74500(论坛游民)
tzg74500
头衔:社区公民
帮派:无帮无派
帖数:87
金钱:806
积分:110
注册时间:2011/7/31
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
编译警告,

uint32 i;
//*pDMA0_START_ADDR = &DisplayBuffer_565[0][0];
i=(uint32)(&DisplayBuffer_565[0][0]);
i=i-hs_pnt*46;
*pDMA0_START_ADDR=i;

这是编译警告:
".\lcd.c", line 50: cc0513: {D} warning: a value of type "uint32" cannot be
          assigned to an entity of type "void *"
  *pDMA0_START_ADDR=i;                        //这个如何更改好??????????????



这家伙很懒,什么也没有留下!
等级:论坛游民 参考IP地址:*.*.*.*
2012/3/24 11:22:02
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

你的警告可能是由这句产生的:

i=(uint32)(&DisplayBuffer_565[0][0]);

把 (uint32) 去掉试试。

另外你的 hs_pnt 类型是否为uint32?

通常警告不需要处理,代码也可正常运行,编译器会帮你处理。


这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2012/3/24 15:41:44
tzg74500(论坛游民)
tzg74500
头衔:社区公民
帮派:无帮无派
帖数:87
金钱:806
积分:110
注册时间:2011/7/31
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

知道,我也不处理,但嫌这个警告烦。


这家伙很懒,什么也没有留下!
等级:论坛游民 参考IP地址:*.*.*.*
2012/3/24 16:04:20
tzg74500(论坛游民)
tzg74500
头衔:社区公民
帮派:无帮无派
帖数:87
金钱:806
积分:110
注册时间:2011/7/31
3信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

关键是这个定义:*pDMA0_START_ADDR

它定义为:

#define pDMA0_START_ADDR   (_PTR_TO_VOL_VOID_PTR   DMA0_START_ADDR)

(_PTR_TO_VOL_VOID_PTR    定义为:

void * volatile *,是void行,所以和uint32型有区别,所以就出现这个问题。




这家伙很懒,什么也没有留下!
等级:论坛游民 参考IP地址:*.*.*.*
2012/3/24 16:24:34
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
4信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
记得VDSP4.0上有个关闭警告提示的开关,关闭的话就不再提示警告了。5.0上刚才找了找,没找到,不知道是否还存在这个功能。

这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2012/3/24 22:03:35
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159300 Call, 1 Queries, Processed in 0.015625 second(s),