找回密码
 立即注册

QQ登录

只需一步,快速开始

帖子
查看: 1416|回复: 6
收起左侧

一个单片机程序中的函数,在仿真运行时无法达到预期效果,想问问该怎么改?

[复制链接]
ID:1020489 发表于 2022-5-3 19:49 来自触屏版 | 显示全部楼层 |阅读模式
void warn()  //报警函数   低电平有效
{
   if((TH>WenDu)&&(RH>ShiDu))                              
     {
      bee=0; //报警
                        fan=0;//风扇
                        heater=0;//加热
     }   
     else if((TH<WenDu)&&(RH>ShiDu))
    {         bee=0; //报警
                        fan=1;
                        heater=0;//加热
    }
                 else if((TH>WenDu)&&(RH<ShiDu))
    {         bee=1;
                        fan=0;
                        heater=1;
    }
                else if((TH<WenDu)&&(RH<ShiDu))
    {         bee=1;
                        fan=1;
                        heater=1;
    }}
回复

举报

ID:883242 发表于 2022-5-3 21:03 | 显示全部楼层
你预期的效果是什么用软件勉强可以看出来,没达到效果你自己不说谁也猜不到是没达到什么效果。
回复

举报

ID:523803 发表于 2022-5-3 21:54 | 显示全部楼层
不要用else if
回复

举报

ID:161164 发表于 2022-5-3 22:57 | 显示全部楼层
只看代码没问题
预期效果是什么?
TH/WenDu/RH/ShiDu的单位相符吗?
有些代码会把数值乘大10倍来显示小数位
回复

举报

ID:121859 发表于 2022-5-4 11:22 | 显示全部楼层
关键是你预期效果是什么?知道你的预期,才能知道如何帮你。
回复

举报

ID:425825 发表于 2022-5-4 17:58 | 显示全部楼层
首先说明一下你的要求,而后捋清楚逻辑关系
回复

举报

ID:1020489 发表于 2022-5-4 18:52 来自触屏版 | 显示全部楼层
lkc8210 发表于 2022-5-3 22:57
只看代码没问题
预期效果是什么?
TH/WenDu/RH/ShiDu的单位相符吗?

温湿度传感器的程序是我从黑51这移植的,TH和RH是带小数了。我现在把乘10加在显示里后,湿度比较好使了,温度的还是没有用。我不懂这个if()里的表达式为什么没用。
V}TXT9H0X`1KM01Y{(0HSW3(1).png
回复

举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

Powered by 单片机教程网

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