AntonioBerna / AntonioBerna/arduino-projects

Edit projects that use `delay()` function instead of `millis()` 🔌

Open
#3 0 comments 0 reactions 0 assignees View on GitHub
bug enhancement
Dominant language
C++
Stars
1
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Edit the projects for using `millis()` instead of `delay()` function.

For example, to make an LED flash every half second you could use a `src/main.cpp` similar to this:

```cpp
#include

#include "blink.h"

const uint32_t interval = 500;
uint32_t lastUpdate = 0;

Blink led = Blink(LED_BUILTIN);

void setup() {
pinMode(led.pin, OUTPUT);
lastUpdate = millis();
}

void loop() {
if (millis() - lastUpdate >= interval) {
lastUpdate = millis();
led.toggle();
}
}
```

where `include/blink.h` contains:

```cpp
#pragma once

#include

class Blink {
public:
uint8_t pin;

Blink(uint8_t pin);
void toggle(void);
};

Blink::Blink(uint8_t pin) : pin(pin) {};
void Blink::toggle(void) { digitalWrite(pin, !digitalRead(pin)); }
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.