hjx827 发表于 2012-7-28 15:59:47

求助pcf8951 AD转换的问题。

/******************************************************************/
/*                                                                */
/* 数据处理与显示                                                 */
/* 将采集到的数据进行16进制转换为ASCLL码。                        */
/*                                                                */
/******************************************************************/

show_value(uchar ad_data)

{                         //0是第二位小数,1是第一位小数,2是整数部分

    dis=ad_data/51;   //AD值转换为3为BCD码,最大为5.00V。
    dis=dis+0x30;       //转换为ACSII码
    dis=ad_data%51;   //余数暂存
    dis=dis*10;    //计算小数第一位
    dis=dis/51;
    dis=dis+0x30;       //转换为ACSII码
    dis=dis%51;         
    dis=dis*10;    //计算小数第二位
    dis=dis/51;                                                                           //
    dis=dis+0x30;//转换为ACSII码         
}
以上为程序代码
一、uchar ad_data是pcf8951通过ad转换来的电压值,请问这个电压值是16进制的吗?还是几进制?

二、转换为ACSII码的过程能不能给分析一下,为什么除以51,为什么加0x30?最好举个实数的例子。

谢谢各位前辈的指教。

416446891 发表于 2012-12-20 09:41:19

          mark
页: [1]
查看完整版本: 求助pcf8951 AD转换的问题。