Доработка металлоискателя Пират
-vlad-, На обозначении в схеме входы на оу не перепутаны? Делитель должен быть на не инвертирующем входе оу. АЦП напрямую к делителю подключать не стоит, там больше 5 в. Да и большого смысла в этом нет. Там просто смещение рабочей точки оу.

-vlad-, Отсюда можно взять схему для закрытия полевика на pnp транзисторе. https://radiohlam.ru/preobr_up2/
(07-09-2025, 17:33)-vlad- : УД2(2 нога) будет A1. И сравнить амплитуду теперь А0 и А1 ?
Ничего не даст.
Ее потом, при положительном результате, можно будет использовать программно для подстройки чуйки.
(07-09-2025, 19:44)vako : оу не перепутаны?
Да, спасибо...только на рисунке опечатка. Перерисую + и - а номера ножек верны.
(07-09-2025, 16:22)-vlad- : Возможно такое, если я оставляю ор1 и ор2 и ардуино считываю сигнал с 13 ноги УД2(ор1) , а вход это будет обвязка 5 ноги(ор2)УД2 и перехожу на 2 кнопки?
Сигнал надо брать с вывода 9 второго ОУ, через делитель чтобы не спалить вход ардуины, а лучше с транзистора, удалив динамик и настроив вход ардуины pinMode(pin,INPUT_PULLUP); и тогда можно измерять частоту или период импульсов, в других случаях только замерять длину "хвоста" самоиндукции.

Кто-то уже пытался так сделать https://alex---1967.narod.ru/PI_metal_de...rat_4.html

[Изображение: pirat_4_ver2_digispark.jpg]
Это видео к посту #409, по этой схеме.
Но буду переделывать. Смещение попробую.
https://disk.yandex.ru/i/MhHf64iZYPHbxA
Код:
const int SPEAKER_PIN = 11;   // Пин усилителя для динамика D11
int frequency = 150;          // Начальная частота 150Гц
int step = 1;                 // Частоту меняю с таким шагом
unsigned long lastUpdate = 0; // Время обновления частоты
unsigned long interval = 15;  // Маленькая пауза
void setup() {
  pinMode(SPEAKER_PIN, OUTPUT); // Присваиваю  пин для динамика D11
}

void loop() {
  unsigned long currentTime = millis();

  // делаю типа ГУНа (потолок 500 Гц сделал)
  if (currentTime - lastUpdate >= interval) {
    frequency += step;
    if (frequency >= 500 || frequency <= 150) {
      step = -step; // Меняю частоту в обратку
    }
    tone(SPEAKER_PIN, frequency); // Обнуляю частоту
    lastUpdate = currentTime;
  }
}
Решил избавиться от (''цоконья'' при смене частоты от катушки от 0 до 125Гц  в динамике присвою в озвучке от 150-500Гц). Красиво звучит.
Блин, через step получается как ГУН 111

А если через tone, как я делал...ну вообще ужасть
Код:
if (frequency >= 1 && frequency <= 2) {
  digitalWrite(ledPin4, HIGH);
  tone(SPEAKER_PIN, 300);
} else {
  digitalWrite(ledPin4, LOW);
  noTone(SPEAKER_PIN);

У меня есть ещё глупая идея.....когда то баловался программой FL Studio, попробовать 7 нот сделать и перевести в wav. Интересно, памяти хватит у ардуино?
(13-10-2025, 18:51)-vlad- : FL Studio, попробовать 7 нот сделать и перевести в wav.
Зачем их в WAV переводить? Тебе код нужен, а не файл музыки.

https://sampawno.ru/viewtopic.php?f=116&t=13114
https://disk.yandex.ru/i/QgI9yaffpRxZyQ
https://disk.yandex.ru/d/iWj-uub-3YtKdA
Вот string, прикольный звук и один wav сделал с 0-10Гц например.
Можно качество занизить wav, что бы без sd карты...
Интересно, если без карты 7 нот потянет ардуина?

(13-10-2025, 19:21)Sam : Тебе код нужен
ААААААААА, понял про что ты.
Попробую перекодировать одну ноту Wav в код и посмотрю, сколько она весит.
Так что ли?
-vlad-, Ты библиотеку подключи и пиши сразу нотами, не надо ничего перекодировать. По ссылке последний пример звук домофона, достаточно маленький код получается. Или мелодия Ёлочки....
Sam, Ладно, с wav это я размечтался...
Остановлюсь пока на ГУН.