Easyelectronics.ru

Электроника для всех
Текущее время: 23 окт 2019, 23:45

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 16 ] 
Автор Сообщение
 Заголовок сообщения: stm32 + VL53L0
СообщениеДобавлено: 09 сен 2019, 15:15 
Заглядывает иногда

Зарегистрирован: 29 янв 2016, 17:34
Сообщения: 63
Кто-нибудь побывал подключать к микроконтроллерам stm32 лазерный дальномер VL53L0? Может кто поделиться кодом?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 11 сен 2019, 09:44 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1786
Откуда: Донецк, ДНР
Я пробовал... Дался он мне потом и кровью ...
Подключал я его к Ф030 и к Ф401. Оба варианта переделывались с куба и с ардуино-либы, потому архитектура софта соответствующая.
Вариант для Ф030 гораздо более вычищенный и переделанный на регистры. Т.к. моя конечная цель была запустить именно на нём, а памяти в этом проце пшик.
На Ф401 - почти чистый куб, использовался только для проверки работоспособности датчика когда процесс излечения от хала на Ф030 стопорился хрен пойми на чём.

В итоге работают оба. Какой вам интересен?
Либы взаимно непереносимы, т.к. у этих процов I2C разный на уровне регистров, скопипастить туда-сюда-обратно, увы, не получилось :(.

Если религия запрещает использовать куб и переделки с него, тогда сорри, пишите сами. Хотя это вряд ли получится, т.к. фирма СТ не даёт полный ДШ на этот датчик, только краткий вариант без описания регистров и прочих мелочей плюс кубовая либа.

Вспомнились нюансы:
1. ардуино-шилд GY-VL53L0XV2 от 3.3 в у меня не заработал (хотя пишут, что он может так работать), пришлось питать его от 5 в.
2. знакомый, использующий мою либу сообщил, что его датчик (отдельный, без шилда) не переносит повторной инициализации без обесточивания (инит даёт ошибку), ему пришлось костылить через backup-регистры RTC (батарейки у него нет). Почему так - не знаю, возможно разные ревизии датчиков, либо я где-то ошибся при переносе кода.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 11 сен 2019, 13:38 
Заглядывает иногда

Зарегистрирован: 29 янв 2016, 17:34
Сообщения: 63
hd44780 писал(а):
Я пробовал... Дался он мне потом и кровью ...
Подключал я его к Ф030 и к Ф401. Оба варианта переделывались с куба и с ардуино-либы, потому архитектура софта соответствующая.
Вариант для Ф030 гораздо более вычищенный и переделанный на регистры. Т.к. моя конечная цель была запустить именно на нём, а памяти в этом проце пшик.
На Ф401 - почти чистый куб, использовался только для проверки работоспособности датчика когда процесс излечения от хала на Ф030 стопорился хрен пойми на чём.

В итоге работают оба. Какой вам интересен?
Либы взаимно непереносимы, т.к. у этих процов I2C разный на уровне регистров, скопипастить туда-сюда-обратно, увы, не получилось :(.

Если религия запрещает использовать куб и переделки с него, тогда сорри, пишите сами. Хотя это вряд ли получится, т.к. фирма СТ не даёт полный ДШ на этот датчик, только краткий вариант без описания регистров и прочих мелочей плюс кубовая либа.

Вспомнились нюансы:
1. ардуино-шилд GY-VL53L0XV2 от 3.3 в у меня не заработал (хотя пишут, что он может так работать), пришлось питать его от 5 в.
2. знакомый, использующий мою либу сообщил, что его датчик (отдельный, без шилда) не переносит повторной инициализации без обесточивания (инит даёт ошибку), ему пришлось костылить через backup-регистры RTC (батарейки у него нет). Почему так - не знаю, возможно разные ревизии датчиков, либо я где-то ошибся при переносе кода.

Большое спасибо за ответ. Я вообще не понял и не как не могу разобраться как с этим датчиком работать. Вся документация на него крайне сложная и непонятная(
Я использую камень stm32f745. VL53L0 купил на али: WAVGAT VL53L0X. Всю конфигурацию собрал через куб, но настройки всей периферии и сам код на cmsis. Вот по этой ссылки (https://www.digikey.com/eewiki/display/microcontroller/Adding+the+VL53L1X+Driver+to+an+STM32Cube+Project) разобрался как добавить библиотеки для VL53L0X. А дальше не могу понять как вообще его инициализировать, как вести с ним обмен, может ли он выдавать прерывание когда пришло значение расстояния? Пока читаю форумы ST и пытаюсь хоть что-то понять...
Ещё самый для меня важный вопрос: в программе, у меня каждые 25мкс я захожу в прерывание от АПЦ и там обрабатываю сигнал (цифровая фильтрация) на что трачу ~15мкс, то есть на остальную обработку у меня ~10мкс. Могу ли я хотя бы раз в 10-30с получать информация о расстоянии от VL53L0X? Буду очень благодарен за любую помощь!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 11 сен 2019, 16:49 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1786
Откуда: Донецк, ДНР
Датчик может отдавать инфу о расстоянии не чаще одного раза в 20 мс. Но у меня, например, он иногда выдаёт одно и то же 2-3 раза. Поэтому я бы ещё туда некую фильтрацию засунул бы.

Расстояние там выдаётся специальной функцией, которая пуляет в датчик команду, ждёт готовности опросом какого-то регистра и читает регистр результата. Если Вы пишете на кубе, то возьмите ихнюю готовую либу и не мучайтесь. Проц у Вас жирный, нормально пойдёт, не то что на малявке F030F4P6. Потому что что там за регистры, флаги и пр, достоверно неизвестно, ДШ по факту нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 12 сен 2019, 11:18 
Заглядывает иногда

Зарегистрирован: 29 янв 2016, 17:34
Сообщения: 63
hd44780 писал(а):
Датчик может отдавать инфу о расстоянии не чаще одного раза в 20 мс. Но у меня, например, он иногда выдаёт одно и то же 2-3 раза. Поэтому я бы ещё туда некую фильтрацию засунул бы.

Расстояние там выдаётся специальной функцией, которая пуляет в датчик команду, ждёт готовности опросом какого-то регистра и читает регистр результата. Если Вы пишете на кубе, то возьмите ихнюю готовую либу и не мучайтесь. Проц у Вас жирный, нормально пойдёт, не то что на малявке F030F4P6. Потому что что там за регистры, флаги и пр, достоверно неизвестно, ДШ по факту нет.

Взял их готовую библиотеку X-CUBE-53L0A1, настроил через Cube I2C, но я не понимаю как подключить её к своему проекту и какую команду нужно выполнять чтобы получить расстояние... Там черт ногу сломит в этой библиотеке. Нет не какого внятного описания как использовать эту библиотеку с другим микроконтроллером... Можете описать подробнее что и как делать? Как подключить эту библиотеку и какую команду использовать? Извините за глупые вопросы, но я реально не понимаю как использовать эту библиотеку и не могу найти не одного внятного гайда по запуску VL53L0X на отличном от P-NUCLEO-53L0A1 платы микроконтроллере.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 12 сен 2019, 19:20 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1786
Откуда: Донецк, ДНР
Я её не использовал, я просто смотрел, как она сделана. Посмотрю, вспомню, отпишусь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 12 сен 2019, 20:47 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1786
Откуда: Донецк, ДНР
Там дока есть и примеры какие-то для F401 и L476. По идее хал позволит использовать либу на любом проце.
Путаные на мой взгляд, но разобраться можно :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 12 сен 2019, 20:55 
Старожил
Аватара пользователя

Зарегистрирован: 18 май 2013, 20:43
Сообщения: 4344
Откуда: Кемеровская область, Киселевск
Там все есть и примеры готовые. Папку распаковывать в корень диска нужно.
C:\X-CUBE-53L0A1\STM32CubeExpansion_VL53L0X_V1.2.0\Documentation

Открой документацию и читай. Там есть мануалы.

_________________
RADIOWOLF.RU


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 12 сен 2019, 22:16 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1027
Боюсь даже спросить что будет если не в корень распаковать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 13 сен 2019, 01:18 
Старожил
Аватара пользователя

Зарегистрирован: 18 май 2013, 20:43
Сообщения: 4344
Откуда: Кемеровская область, Киселевск
Там архив когда распакуешь, есть ридми файл, открой прочитай. Будет ошибка если превысит максимальную длину пути.

_________________
RADIOWOLF.RU


Последний раз редактировалось Oxford 14 сен 2019, 04:35, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 13 сен 2019, 08:31 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1027
“Поздравляю вас, гражданин, соврамши!”
Show Тот самый readme
По привычке распаковал в $Recycle.Bin и небеса на меня не упали.

Документация конечно... Вместо того чтобы описать что в регистры писать/читать индусское API описывают. Из исходников, конечно, всё можно вытянуть. Но дело это неблагодарное, жаль мне того кто этим будет заниматься.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 13 сен 2019, 09:05 
Старожил
Аватара пользователя

Зарегистрирован: 18 май 2013, 20:43
Сообщения: 4344
Откуда: Кемеровская область, Киселевск
Ну API вроде ниче и дока есть. А то что референс нету хреново канеш.
Вот тут можно взять либу люди постарались
https://github.com/bitbank2/VL53L0X
Там и пример сразу как работать.

_________________
RADIOWOLF.RU


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 13 сен 2019, 09:38 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1786
Откуда: Донецк, ДНР
Я вот эту - https://github.com/pololu/vl53l1x-arduino брал за основу. Она местами туповато сделана, но с целом там всё разумно.
Сам по себе драйвер можно взять оттуда, только надо I2C под нужный STM-камень наваять. Ну или с хала понадёргать - это уж кому как.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 13 сен 2019, 16:07 
Заглядывает иногда

Зарегистрирован: 29 янв 2016, 17:34
Сообщения: 63
Oxford писал(а):
Ну API вроде ниче и дока есть. А то что референс нету хреново канеш.
Вот тут можно взять либу люди постарались
https://github.com/bitbank2/VL53L0X
Там и пример сразу как работать.

Эта библиотека под Raspberry Pi. Как я могу её использовать под stm32f7?
hd44780 писал(а):
Я вот эту - https://github.com/pololu/vl53l1x-arduino брал за основу. Она местами туповато сделана, но с целом там всё разумно.
Сам по себе драйвер можно взять оттуда, только надо I2C под нужный STM-камень наваять. Ну или с хала понадёргать - это уж кому как.

Я понимаю эта библиотека для vl53l1x, а у меня vl53l0x.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 13 сен 2019, 17:51 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1027
red-30 писал(а):
Эта библиотека под Raspberry Pi. Как я могу её использовать под stm32f7?
С он и в африке С. Подсовываешь свои функции работы с I2C (с I2C то хоть нет проблем?) и в путь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: stm32 + VL53L0
СообщениеДобавлено: 14 сен 2019, 10:57 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1786
Откуда: Донецк, ДНР
red-30 писал(а):
Я понимаю эта библиотека для vl53l1x, а у меня vl53l0x.


Я дико извиняюсь, господа Президенты :)
Я использовал вот эту либу - https://github.com/pololu/vl53l0x-arduino


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: BARS_, NStorm


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB