打印

出现这样的警告是什么意思?导致程序不能执行!

[复制链接]
1788|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yzzly|  楼主 | 2012-5-14 10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
gp, ui, TE, TI, se
本帖最后由 yzzly 于 2012-5-14 10:34 编辑

C\stm32f10x_usart.c(711): warning:  #167-D: argument of type "volatile Uint08 *" is incompatible with parameter of type "Uint08 *"

Uint08  volatile  Rxd2_buf[UART2_BUF_LEN],Rxd2_Cnt,Rxd2_len,Rxd2_timer;

void Usart2RxdProcess(void)
{
    Uint08 Temp;
    Temp=AritAccTotal08(&Rxd2_buf[1],Rxd2_len-5);
    if(Rxd2_buf[Rxd2_len-3]==Temp)
    {
        Year=(Rxd2_buf[GPRMC_YearH]-0x30)*10+(Rxd2_buf[GPRMC_YearL]-0x30);
        Month=(Rxd2_buf[GPRMC_MonthH]-0x30)*10+(Rxd2_buf[GPRMC_MonthL]-0x30);
        Day=(Rxd2_buf[GPRMC_DayH]-0x30)*10+(Rxd2_buf[GPRMC_DayL]-0x30);
        Hour=(Rxd2_buf[GPRMC_HourH]-0x30)*10+(Rxd2_buf[GPRMC_HourL]-0x30)+8;
        Minute=(Rxd2_buf[GPRMC_MinuteH]-0x30)*10+(Rxd2_buf[GPRMC_MinuteL]-0x30);
        Second=(Rxd2_buf[GPRMC_SecondH]-0x30)*10+(Rxd2_buf[GPRMC_SecondL]-0x30);
    }
    Flags.SetTime=0;
    Flags.Rxd2Over=0;
}

Uint08 AritAccTotal08(Uint08 *Point,Uint08 Len)          //按字节计算累加和
{
    Uint08 Sum=0;
    while(Len--)
    {
         Sum=Sum+*Point++;
    }
    return(Sum);
}

怎么做才不矛盾???????
沙发
yzzly|  楼主 | 2012-5-14 10:43 | 只看该作者
把定义Rxd2的volatile去掉就可以!!不知道会不会影响结果!!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

427

主题

1173

帖子

3

粉丝