找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 655|回复: 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;
    }}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
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倍来显示小数位
回复

使用道具 举报

5#
ID:121859 发表于 2022-5-4 11:22 | 只看该作者
关键是你预期效果是什么?知道你的预期,才能知道如何帮你。
回复

使用道具 举报

6#
ID:425825 发表于 2022-5-4 17:58 | 只看该作者
首先说明一下你的要求,而后捋清楚逻辑关系
回复

使用道具 举报

7#
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 (27.12 KB, 下载次数: 30)

V}TXT9H0X`1KM01Y{(0HSW3(1).png
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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