ADC12 问题

[复制链接]
1239|7
 楼主| waitingf 发表于 2014-6-29 23:01 | 显示全部楼层 |阅读模式
Curr_Volt = caltmp >> 12;                   //Curr_Volt = caltmp / 2^n
   ptr[0] = Curr_Volt / 100;                   //Hex->Dec变换
    t1 = Curr_Volt - (ptr[0] * 100);
    ptr[2] = t1 / 10;
    ptr[3] = t1 - (ptr[2] * 10);
    ptr[1] = 10;                                //shuzi表中第10位对应符号"."
    //在液晶上显示变换后的结果
    for(i = 0;i < 4;i++)
      LCD_write_char((6 + i),1,shuzi[ptr]);

向大家请教一下,各条语句是什么意思呢?
 楼主| waitingf 发表于 2014-6-29 23:02 | 显示全部楼层
求助大家了
someonewho 发表于 2014-6-29 23:39 | 显示全部楼层
ptr[0] = Curr_Volt / 100;                   //Hex->Dec变换
    t1 = Curr_Volt - (ptr[0] * 100);
    ptr[2] = t1 / 10;
    ptr[3] = t1 - (ptr[2] * 10);
程序可简化为:
   ptr[0] = Curr_Volt / 100;                   //Hex->Dec变换
   ptr[1] =10;
   ptr[2] = (Curr_Volt % 100)/ 10;
   ptr[3] = Curr_Volt % 10;
电子小顽童 发表于 2014-7-24 17:20 | 显示全部楼层
很简单,你代入一个值试一下,比如Curr_Volt = 330 ,分别计算各式就知道每一步怎么来的了
comeon201208 发表于 2014-7-24 23:31 | 显示全部楼层
同意楼上的,分步调试一下的就知道的啊。
angerbird 发表于 2014-7-27 17:43 | 显示全部楼层
这个还不是很明白楼主的意图的啊
angerbird 发表于 2014-7-27 17:44 | 显示全部楼层
看楼主的程序的就是一个简单的独处采集的数据的并通过一定的算法的吧采集结果的转化成自己所需要的结果的啦。
hnsdyd 发表于 2014-8-8 08:02 | 显示全部楼层
第一步是将AD采样的16进制数据转化为十进制,之后就是将十进制的个位,十位,百位等分别显示,你可以代入一个值试一下,不知道你是不是想问这个
您需要登录后才可以回帖 登录 | 注册

本版积分规则

104

主题

1138

帖子

3

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