永发信息网

如何让这个arduino小程序在延迟后,切换前,重新检测一次if条件?

答案:2  悬赏:40  手机版
解决时间 2021-02-19 02:17
如何让这个arduino小程序在延迟后,切换前,重新检测一次if条件?
最佳答案
#include "xxx"

#define TIME_100MS    1
#define TIME_1S       10
#define TIME_5S       50
#define TIME_10S      100
#define TIME_30S      300



typedef struct
{
    uint16_t modeChange;
    uint16_t ledShow;
}timeCnt_t;
timeCnt_t timeCnt;

const byte ledPin = 13;            // Use the LED on pin 13.


void setup(void)
{
    //system init...

    // LED init...
    pinMode(ledPin, OUTPUT);
    digitalWrite(ledPin, LOW);                 // Turns the LED off.
}

void loop (void)
{
    //task 1
    if (rvotage > 49 && rhomecr < 4 && digitalRead(swich)) //电压大于49v 电流小于4A 逆变器状态开时
    {
        if (timeCnt.modeChange > TIME_30S)
        {
            h2s(); //转换到太阳能
        }
    }
    else
    {
        timeCnt.modeChange = 0;
    }

    //task 2
    if (timeCnt.ledShow > TIME_1S)
    {
        timeCnt.ledShow = 0;
        digitalwrite(ledpin,!digitalread(ledpin));
    }

    //task 3
    // ...
}


//定时器中断调用,arduino有现成的MsTimer2库,设置下就好。
void TimeCbk (void) //be called every 100ms
{
    (timeCnt.modeChange < 65535) ? (timeCnt.modeChange++) : (timeCnt.modeChange = 0);
    (timeCnt.ledShow < 65535) ? (timeCnt.ledShow++) : (timeCnt.ledShow = 0);
}
全部回答
再加一个判断呗追问你好,怎样写?追答if (rvotage > 49 && rhomecr < 4 && digitalRead(swich)) //电压大于49v 电流小于4A 逆变器状态开时
{
delay(3000); //延迟30秒
if (rvotage > 49 && rhomecr < 4 && digitalRead(swich)) //电压大于49v 电流小于4A 逆变器状态开时 { h2s(); //转换到太阳能
}
}追问不好意思,第二次判断无效,还是会根据第一次判断来动作。追答rvotage 和 rhomecr怎么来的?再取值一次
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
常州市诚旭钣金厂地址有知道的么?有点事想过
一种新发现的细菌中有a、b、c等基因,如图9表
三星平板YP_G70CW怎么刷机,
飞机送人可以送上飞机吗
承诺人在承诺书上签字按手印有法律效力吗?
太极缘地址在哪,我要去那里办事
dnf沉默之克蕾雅h
2018年木门十大品牌都分别有什么?
名将三国血战长坂坡里BOSS的名字的第二个字拼
炼化企业产生的油泥、废弃催化剂在最终处置前
问下大家 我想在网上买几件好看的男装 大家介
在三亚买房后悔担心海啸
犬舍那么多苍蝇 他们如何做到既消灭苍蝇又不
下列属于人体内环境的组成成分是 ①血浆、组
省黄海农场一分场在哪里啊,我有事要去这个地
推荐资讯
一个小女孩儿在脱衣服,图片上标的是rosi写真
缘聚婚庆地址有知道的么?有点事想过去
谁能教我用CAD画简单的电气图!谢谢1!
吉祥酒家地址在哪,我要去那里办事
怎么手机数据恢复
请问,-皿-!!郁闷!关于遗忘骑士,面对遗忘骑
南楼中心小学在什么地方啊,我要过去处理事情
洛江公寓我想知道这个在什么地方
2.75*3.8+2.75*6.2简便怎么算
今年厦门白鹭洲还有花灯看嘛?听说今年取消了
求夏目友人帐4片尾曲
mill give you to the white rose!什么意思
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?