Отключить индикатор состояния Keyboard.h

Как только я включу клавиатуру.h мой светодиод pro micros начинает мигать (насколько я знаю, это указывает на то, что последовательное соединение стабильно или около того).

Но это действительно раздражает, когда на моем столе все время мигает светодиод.

Есть ли возможность отключить это "отладочное" поведение из библиотеки keyboard.h?

, 👍1


2 ответа


Лучший ответ:

1

Эти светодиоды управляются кодом ядра USB и определяются в варианте платы. Для pro micro это файл pins_arduino.h в варианте micro:

#define TXLED0          PORTD &= ~(1<<5)
#define TXLED1          PORTD |= (1<<5)
#define RXLED0          PORTB &= ~(1<<0)
#define RXLED1          PORTB |= (1<<0)
#define TX_RX_LED_INIT  DDRD |= (1<<5), DDRB |= (1<<0), TXLED0, RXLED0

Если вы отредактируете этот файл и удалите все после имени макроса, так что у вас будет 5 пустых макросов, он должен полностью отключить светодиоды.

#define TXLED0
#define TXLED1
#define RXLED0
#define RXLED1
#define TX_RX_LED_INIT

Правка:
Для Sparkfun Pro Microотредактируйте файл по адресу

...\AppData\Local\Arduino15\packages\SparkFun\hardware\avr\1.1.13\variants\promicro

Это связано с тем, что у него есть дополнительный пакет, который не установлен по умолчанию.

,

Это не сработало для меня. Я даже удалил их полностью, но никакой ошибки не было. Может быть, я нахожусь в неправильном каталоге или мне нужно что-то перекомпилировать? Нужно ли мне менять его в каком-то другом месте, так как pro micro нуждается в дополнительных библиотеках для работы в любом случае? Полный путь, который я использовал : C:\Program Файлы (x86)\Arduino\hardware\arduino\avr\variants\micro\pins_arduino.h, @GoldenDremora

Если вам нужно было установить больше пакетов плат (я не использовал эту плату), то файл будет где-то в этом пакете., @Majenko

Работает сейчас :D. Если кому-то интересно: Файл, который вам нужно отредактировать, находится по адресу ...\AppData\Local\Arduino15\packages\SparkFun\hardware\avr\1.1.13\variants\promicro В досье куча всякой всячины. Вам нужно поискать секунду, чтобы найти ключевые слова, но они есть., @GoldenDremora


1

это действительно раздражает, когда на моем столе все время мигает светодиод.

Как инженер-программист, я знаю, что мы часто попадаем в ловушку, думая, что все проблемы должны иметь программное решение. Попробуйте думать об этом как об аппаратной проблеме.

  • Вырежьте маленький кусочек липкой этикетки и наклейте ее на этот раздражающий светодиод.
  • Используйте паяльник, чтобы удалить поврежденный светодиод.
  • Используйте плоскогубцы с игольчатым носом, чтобы раздавить оскорбительный светодиод.

Более разрушительные решения можно отменить с помощью паяльника и, возможно, нового SMD - светодиода. Для ардуино с женскими или штабелирующимися заголовками вы можете вместо этого восстановить эту функцию, подключив сквозной светодиод и резистор в соответствующие положения в гнездах заголовков Arduino. Например, D13 и GND. Для других ардуино можно добавить светодиод и резистор в соседних позициях на макете.

Возможно, есть хорошее программное решение, но стоит рассмотреть и другие подходы.

,