Приехал не так давно ко мне DFPlayer Mini, заказанный по причине существования этой темы. ))
Ну и провел я эксперимент, на результаты которого жаловался ТС.
Схема подключения:
Код, загруженный в Ардуину:
#define DFpinIO 2 // Номер пина, подключаемого к IOx
void setup() {
delay(5000); // Задержка для посмотреть на Z-состояние
pinMode(LED_BUILTIN, OUTPUT); // LED на 13 пине (для наглядности) "на выход"
pinMode(DFpinIO, OUTPUT); // Пин, подключенный к IO DFplayer (по очереди - сначала подключал к IO1, потом к IO2) "на выход"
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // "маргулим LED"
digitalWrite(DFpinIO, HIGH); // "падымаем" уровень на пине до почти +5В (не забываем про падение напряжения на защитном диоде при питании от USB)
delay(4000); // Ждём 4 секунды для "устаканить показания вольтметра"
digitalWrite(LED_BUILTIN, LOW); // "маргулим LED"
digitalWrite(DFpinIO, LOW); // "опускаем" уровень на пине до нуля
delay(4000); // Ждём 4 секунды для "устаканить показания вольтметра"
}
Результаты эксперимента:
- Напряжение на IO1 (IO2) в момент включения (или после Reset), когда еще не определены состояния пинов составило - +3.6В.
- После конфигурирования пинов и подачи на вывод D2 сигнала HIGH на выводе IO1 (IO2) напряжение составило - +4.67В.
- При подаче на вывод D2 сигнала LOW на выводе IO1 (IO2) напряжение составило - 0.00В (Ноль Вольт)!!!
В качестве измерительного прибора выступал мультиметр цифровой Mastech на пределе измерения 20В (постоянное напряжение).
Вывод:
ТС что-то где-то как-то накосячил. )))