Здравствуйте, уважаемые

Давненько я тут не был.
Предлагаю Вашему вниманию крайне простую конструкцию парктроника на базе SHO-ME 2616, но думаю, что в качестве донора может стать любой с похожей схемотехникой, а она как правило одинакова.
Итак имеем парктроник в котором есть MUX - HCF4032, Усилитель - NE5532, обвязка по питанию и процессор - EM78P156.
Сначала я пытался разобраться с протоколом обмена м-ду индикатором и процессором, но забросил это дело т.к. не интересно совсем, хотя инфы в гугле валом на тему, да и точность измерения расстояния оставляет желать лучшего.
В общем решил что удалю проц и сделаю свой обработчик датчиков да и не нужно мне все 4 датчика (делаю измеритель уровня воды в баке).
Первым делом разобрался с пинами мукса
и снял эпюры:
Видим что на "Common X" - посылается сигнал 40кГц длительностью 0.48ms и потом он отлавливается с "Common Y" после операционника. Также подрыгиванием ног 10 и 9 можем выбирать датчик с которым работаем в текущий момент
Ну а дальше все крайне элементарно - дрыгаем ногой ардуины и ждем ответ на 2й ноге (int1). Вот кусок кода дрыганья ногами.
2-я чтение
9-я запись пакета в порт
3,4 - MUX select
PHP код:
long time_delay;
void setup()
{
Serial.begin(115200);
DDRD = B11111001;
}
void loop()
{
DDRD = B11111101;
PORTD = B00011000;
tone(OUT, 39200, 3);
_delay(0);
pinMode(IN, INPUT_PULLUP);
_delay(30000);
PORTD = B00000000;
}
void _delay(int x) {
time_delay = 0;
time_delay = micros();
while (micros() - time_delay < x) { }
x = 0;
}
На выходе имеем следующее:
Из картинки видно, что эхо прилетело через 17.408ms а это с учетом скорости звука 340.29m/s и пути в оба конца, составляет 2961,88416 mm. Правда есть один нюанс - скорость переключения MUXа из режима записи в режим чтения (или еще какие переключения) - 0.442ms что составляет 75,20409 мм что накладывает ограничение на минимальное измеряемое расстояние.
В ходе экспериментов удалось замерить с достаточной точностью (~10см) расстояние в 5 метров.
А теперь фото парктроника с точками подключения:

Справа на разъемах это соответствие пинам MUX
Ниже:
1 - MUX select B
2 - MUX select A
3 - Common X - запись
4 - Common Y - чтение