2023-02-24 19:18:18 +03:00
|
|
|
|
---
|
|
|
|
|
title: "🔴 Индикатор загрузки программы Ardiuno"
|
|
|
|
|
date: 2023-02-24T19:06:07+03:00
|
|
|
|
|
draft: false
|
|
|
|
|
tags: [arduino, tips]
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
Написал простую функцию, которая моргает встроенным светодиодом,
|
|
|
|
|
когда ардуинка запускается.
|
|
|
|
|
|
|
|
|
|
Функцию `init_blink()` необходимо использовать в цикле `setup()`,
|
|
|
|
|
потому что в ней используется функция `delay()`,
|
|
|
|
|
вызов которой в `loop()` может негативно повлиять на выполнямый код.
|
|
|
|
|
|
|
|
|
|
```c
|
|
|
|
|
void init_blink(int times) {
|
|
|
|
|
for (int count = 0; count < times; count++) {
|
|
|
|
|
digitalWrite(LED_BUILTIN, HIGH);
|
|
|
|
|
delay(200);
|
|
|
|
|
digitalWrite(LED_BUILTIN, LOW);
|
|
|
|
|
delay(200);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Функция имеет один аргумент `times`, который принимает цисловое значение.
|
|
|
|
|
|
|
|
|
|
Он отвечает за количество морганий свотодиодом при вызове функции.
|
|
|
|
|
|
|
|
|
|
Использовать функцию нужно так:
|
|
|
|
|
|
|
|
|
|
```c
|
|
|
|
|
void setup() {
|
|
|
|
|
// код инициализации
|
|
|
|
|
|
|
|
|
|
init_blink(5);
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Светодиод моргает каждые 200 милисекунд.
|
|
|
|
|
|
|
|
|
|
### Изменить время между зажиганием светодиода
|
|
|
|
|
|
|
|
|
|
Чтобы изменить время моргания светодиодом, можно изменить значение
|
|
|
|
|
в функции `delay()`, а можно сделать это более элегатно, добавив аргумет.
|
|
|
|
|
|
|
|
|
|
```c
|
2023-02-24 19:21:01 +03:00
|
|
|
|
void init_blink(int times, int delay_time) {
|
2023-02-24 19:18:18 +03:00
|
|
|
|
for (int count = 0; count < times; count++) {
|
|
|
|
|
digitalWrite(LED_BUILTIN, HIGH);
|
2023-02-24 19:21:01 +03:00
|
|
|
|
delay(delay_time);
|
2023-02-24 19:18:18 +03:00
|
|
|
|
digitalWrite(LED_BUILTIN, LOW);
|
2023-02-24 19:21:01 +03:00
|
|
|
|
delay(delay_time);
|
2023-02-24 19:18:18 +03:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Использовать функцию так:
|
|
|
|
|
|
|
|
|
|
```c
|
|
|
|
|
void setup() {
|
|
|
|
|
// код инициализации
|
|
|
|
|
|
|
|
|
|
init_blink(5, 200);
|
|
|
|
|
}
|
|
|
|
|
```
|