找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

大佬帮忙看看怎么改计算器单片机程序

查看数: 3396 | 评论数: 6 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-5-13 11:35

正文摘要:

       在网上找的程序,有一个地方不是很明白,改了半天一直出错,求大佬们帮帮忙,晚上做梦都在想。。程序上我会标出不明白的地方希望有大佬解答。一共有两个问题,红色部分标出了,还有一个 ...

回复

ID:466730 发表于 2021-5-13 14:52
ADC0808应该是AD转换芯片吧,转换的结果刚好对应给P1口,赋值给getdata,然后红色部分再把AD转换为电压,然后把电压放大,最后应该少了个放大后的电压转温度的查表吧
ID:909090 发表于 2021-5-13 14:44
hhdsdy 发表于 2021-5-13 14:26
红色的 if(U0)是判断语句,表示当U大于0并且U小于5.2时执行:
{   
    dispbuf[0]=temp%10;

我那个PT100温度小于0,只显示-25.6,不管温度是负多少,数码管一直显示-25.6不变
ID:88256 发表于 2021-5-13 14:26
红色的 if(U<5.2&&U>0)是判断语句,表示当U大于0并且U小于5.2时执行:
{   
    dispbuf[0]=temp%10;
                dispbuf[1]=temp/10%10;
                dispbuf[2]=temp/100%10;
                dispbuf[3]=temp/1000;        
        }


如果U小于或者等于0,或者U大于、等于5.2,则执行:


{
                 
                 dispbuf[0]=temp%10;
                dispbuf[1]=temp/10%10;
                dispbuf[2]=temp/100%10;
                dispbuf[3]=11;
         
          /*dispbuf[0]=0;
                dispbuf[1]=0;
                dispbuf[2]=0;
                dispbuf[3]=0;*/        
         
  }


所以,当U不符合要求时,dispbuf[3]=11;   显示的当然是一个负号
ID:909090 发表于 2021-5-13 14:03
daemondong 发表于 2021-5-13 12:45
U=5.0/255.0*getdata;  应该是转化getdata到 0-5的值 ,可能是电压。不可能小于零,你小于零的数怎么来的? ...

大佬我是网上找的代码,这块就是不明白,我想改一下,改半天老出错,我把电路图贴下面回复了,能帮我看看这块怎么改合适么。就是基于51单片机的PT100温度仿真。
ID:827243 发表于 2021-5-13 12:45
U=5.0/255.0*getdata;  应该是转化getdata到 0-5的值 ,可能是电压。不可能小于零,你小于零的数怎么来的?
deal=U*20*10; 就不清楚想干什么了。

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表