pic数据转换问题请教

[复制链接]
2278|4
 楼主| 永不落的星 发表于 2010-12-16 12:34 | 显示全部楼层 |阅读模式
编译时shidu=10*humi_val.f 和wendu=10*temp_val.f 出现这样的警告implicit conversion of float to integer 传感器数据显示不了 这是什么原因啊 转换代码如下 请教

uint wendu ,shidu;
typedef union   
{ unsigned int i;      //定义了两个共用体
  float f;  
} value;
value humi_val,temp_val;

humi_val.f=(float)humi_val.i;                 
            temp_val.f=(float)temp_val.i;                 
            calc_sht11(&humi_val.f,&temp_val.f);           
             wendu=10*temp_val.f;
            LCD_disp_char(2,1,wendu/1000+'0');            
            LCD_disp_char(3,1,(wendu%1000)/100+'0');        
            LCD_disp_char(4,1,(wendu%100)/10+'0');         
            LCD_disp_char(6,1,(wendu%10)+'0');              
            
             shidu=10*humi_val.f;
            LCD_disp_char(2,2,shidu/1000+'0');              
            LCD_disp_char(3,2,(shidu%1000)/100+'0');         
            LCD_disp_char(4,2,(shidu%100)/10+'0');           
            LCD_disp_char(6,2,(shidu%10)+'0');   

源码在下面

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
yewuyi 发表于 2010-12-16 13:34 | 显示全部楼层
wendu=10*temp_val.f;

temp_val.f,它的数据类型为浮点,wendu的数据类型为整型,互不匹配,所以警告。
 楼主| 永不落的星 发表于 2010-12-16 15:09 | 显示全部楼层
恩 这个我知道 上面的是先前的 可我把数据类型对过来还是出现同样的警告 我把它移到51上没有警告 而且代码完全可以运行  请教
yewuyi 发表于 2010-12-16 15:26 | 显示全部楼层
在PICC里面,浮点的字长好像有24BIT和32BIT可选择,在MPLAB中设置一下看看是否可以。
 楼主| 永不落的星 发表于 2010-12-16 16:07 | 显示全部楼层
24BIT和32BIT的都试过 还是同样的警告 我觉得是转换的问题 但不知道如何改
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

72

帖子

0

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