Красный светодиод не выключается на игровой площадке Adafruit Circuit Classic
При использовании традиционной программы-примера Blink индикатор мигает, как и ожидалось. Даже при записи с нуля digitalWrite
постоянное многократное переключение 13-го контакта на высокий и низкий работает нормально. Проблема в том, что я пытаюсь использовать CircuitPlayground.redLED(false)
. Это не имеет никакого эффекта, и пример Hello_Blink
для Circuit Playground вообще не работает. Светодиод горит постоянно, что бы я ни делал.
Я просмотрел исходный код библиотеки CircuitPlayground, и она также использует контакт 13 и делает практически то же самое, что и традиционная программа мигания.
Не уверен, что еще может быть причиной этого.
Это рабочий скетч Blink
:
// функция настройки запускается один раз, когда вы нажимаете сброс или включаете плату
void setup() {
// инициализируем цифровой вывод LED_BUILTIN как выход.
pinMode(LED_BUILTIN, OUTPUT);
}
// функция цикла запускается снова и снова навсегда
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // включаем светодиод (HIGH - уровень напряжения)
delay(1000); // ждем секунду
digitalWrite(LED_BUILTIN, LOW); // выключаем светодиод, понижая напряжение
delay(1000); // ждем секунду
}
А это скетч Hello_Blink
, который не работает (светодиод горит постоянно):
#include <Adafruit_CircuitPlayground.h>
void setup() {
CircuitPlayground.begin();
}
void loop() {
CircuitPlayground.redLED(HIGH);
delay(500);
CircuitPlayground.redLED(LOW);
delay(500);
}
Изменение HIGH
и LOW
на true
и false
ничего не дает.
Я также заметил еще две странные вещи. Динамик издает слышимый щелчок, когда плата сбрасывается при использовании скетча Hello_Blink
(или любого другого скетча, использующего библиотеку CircuitPlayground), как будто контакт № 5 также находится в высоком положении. Кроме того, я добавил эти две строки
pinMode(6, OUTPUT);
digitalWrite(6, HIGH);
в setup()
обеих программ, а затем проверил #6 с помощью мультиметра. Пин №6 ни к чему не подключен. Традиционная программа мерцания позволяет пину подняться, как и ожидалось. Однако в скетче CircuitPlayground штифт остается внизу.
Я использую эту библиотеку с atmega32u4.
@Daffy, 👍3
1 ответ
Лучший ответ:
Похоже, это ошибка в библиотеке Circuit Playground. Здесь была открыта проблема.
https://github.com/adafruit/Adafruit_CircuitPlayground/issues/40
Редактировать: это действительно была ошибка, теперь она исправлена в версии библиотеки 1.8.4.
- Есть ли функция Adafruit для инвертирования цветов моего экрана для языка Arduino?
- Запись загрузчика на Adafruit Feather 32u4
- Использование кольца NeoPixel без Arduino
- Использование аккумуляторов 18650 с повышающим преобразователем 3,7 В в 5 В.
- Пороговые напряжения цифрового ввода-вывода для ATmega32u4
- Как погасить светодиод за определенное время с помощью FastLED
- Как считать положительные электрические импульсы?
- Микропроект Arduino с низким энергопотреблением Bluetooth