Відповісти

Введіть повідомлення і натисніть Надіслати
Параметри

Назад

Огляд теми (нові повідомленні вгорі)

г0сть
2021-06-03 08:29:38
Listian пише:

разберитесь, если можно)

С китайцем?

Listian
2021-06-03 02:33:22

у китайца нашел на китайском  big_smile

Fire-Shot-Capture-126-https-aliexpress-ru-item-4001350997504-html.jpg

разберитесь, если можно)

motoGiS
2021-03-24 15:45:58

Так я ж там ниже описал что как впаивать и как с ним общаться. Никаких страхов и рисков smile

Го
2021-03-24 15:16:53

Судя по фото модуля - там 2 незапаянные перемычки. Скорее всего без перемычек - GPIO
Верхняя по фото перемычка (если запаять) - I2C
Нижняя - UART

Все действия без даташита - на свой страх и риск.

Batu
2020-12-24 14:07:41

Поработай. Мне тоже интересно в плане надежности измерений

motoGiS
2020-12-24 12:14:17

Да мне интересно было с этим датчиком разобраться + я могу легко выбрать расстояние, при котором будет происходить срабатывание: хочешь 2 метра, хочешь метр, а хочешь так и 10 см.
Мой проект еще в стадии разработки, там все может поменяться 100500 раз.

Batu
2020-12-24 11:26:18

Может емкостной датчик будет проще?

motoGiS
2020-12-24 10:06:15
Batu пише:

Расскажешь что получилось. Кстати, а чего хочешь мерять?

Нужен датчик приближения для включения подсветки в железяке если кто-то подошел к ней на пол метра и меньше.

Чуток разобрался. В принципе, работает как и по GPIO, команда на посыл/считывание данных.
Запаиваем на место R4 резюк на 10 kOm. Железка получает адрес 0x57.
Сначала отправляем устройству 0x01, затем через 50-100 мс (при меньших значениях нужно еще поэксперементировать) забираем 3 байта. Первых 2, старший и младший соответственно и отдают задержку, а вот не пойму что за третий, может уже наносекунды? Если не забрать все 3 байта, все виснет. Вот пример кода:

        // Запускаем измерение
        Wire.beginTransmission(0x57);
        Wire.write(0x01);
        Wire.endTransmission();
        Serial.println("Send");
        delay(100);

        // Читаем 3 байта
        Wire.requestFrom(0x57, 3);
        byte b1, b2, b3;
        b1 = Wire.read();
        b2 = Wire.read();
        b3 = Wire.read();

        // Соединяем и Делим
        uint16_t distacne_cm = ((b1 << 8) | b2) / 58;
        // Смотрим
        Serial.print("Distance = ");
        Serial.print(distacne_cm);
        Serial.println(" cm.");
        Serial.print(b1);
        Serial.print(", ");
        Serial.print(b2);
        Serial.print(", ");
        Serial.println(b3);
Batu
2020-12-23 20:46:30
motoGiS пише:

Я то понимаю. Но хочется попробовать поработать с ним по i2c. Адрес нашел, 0x57. Поэксперементирую.

Расскажешь что получилось. Кстати, а чего хочешь мерять?

motoGiS
2020-12-23 19:31:26

Я то понимаю. Но хочется попробовать поработать с ним по i2c. Адрес нашел, 0x57. Поэксперементирую.

г0сть
2020-12-23 19:24:32

https://shopee.com.my/amp/Ultrasonic-distance-sensor-module-(HC-SR04-model-2020-RCWL-9300-RCWL-9602-support-GPIO-UART-and-IIC)-i.35780982.1642652340
ну это какой-то китайский контроллер. Вряд ли вы найдете на него даташит.

motoGiS
2020-12-23 19:15:19

HC-SR04, model 2020, RCWL-9300 + RCWL-9206, support GPIO, UART and IIC

г0сть
2020-12-23 19:08:56

Ищите информацию по чипу в центре. На фото надписи на нем плохо видно

motoGiS
2020-12-23 18:46:44

Приехал мне из Китая датчик расстояния HC-SR04. Судя по надписям и не запаянным резюкам он может работать по UART и I2C. Но не могу найти информацию о таких модулях. Может кто сталкивался? Интересует его опрос по I2C. Фото прилагаю.
2020-12-22-14_02_41.jpg

Підвал форуму