小编Tar*_*lbi的帖子

写延迟计时器()

我写了这段代码,如果输入为HIGH就发送短信,你可以在其中看到,但问题是我有4个输入和延迟()s是致命的,如果我需要在一个单独的东西做一个非常错误时间(我用4个输入).

所以我需要在void loop(),Send_SMS()和initia()中用millis()或其他东西来改变delay().

有人可以帮助我,并提前谢谢你.

const int DI = 2;
const int DT = 3;
const int DGP1 = 4;
const int DGP2 = 5;

int value1_old = 0;
int value2_old = 0;
int value3_old = 0;
int value4_old = 0;

unsigned long previousMillis = 0;
unsigned long interval=100;

#include<SoftwareSerial.h>
SoftwareSerial SIM900 (7, 8);

void setup() {
    pinMode(DI, INPUT);
    pinMode(DT, INPUT);
    pinMode(DGP1, INPUT);
    pinMode(DGP2, INPUT);

    SIM900.begin(19200);
    SIM900power();
    delay(20000);

}

void SIM900power(){
    digitalWrite(9 ,HIGH);
    delay(1000);
    digitalWrite(9 ,LOW);
    delay(5000);
}

void initia(){
    SIM900.print("AT+CMGF=1\r"); …
Run Code Online (Sandbox Code Playgroud)

c timer arduino delay

7
推荐指数
1
解决办法
295
查看次数

标签 统计

arduino ×1

c ×1

delay ×1

timer ×1