St microelectronics free fall sensor driver что это
Программа установлена по умолчанию, ничего в ней самой нет, никакой информации о разаработчике.
На ноуте жесткого не вообще, стоит SSD.
Что за прога, кто знает?
Эта штука автоматически паркует считывающие головки на ЖД, когда ноутбук падает, чтобы не повредить данные.. Раз у вас SSD, то смысла в ней нет.
Заключение
С помощью встраиваемых графических библиотек трудоемкий процесс разработки и отладки пользовательского интерфейса для встраиваемых систем существенно упрощается. Сильно сокращается время, затрачиваемое на интерфейс, что позволит уделить больше внимания основному функционалу и быстрее вывести продукт на рынок.
Рассмотренные программные продукты для контроллеров STM32 похожи по функционалу, но несколько отличаются по предлагаемым возможностям. STemWin – самая «демократичная», она позволяет без проблем работать со многими сериями контроллеров, включая бюджетные, но может показаться, что создаваемые с ее помощью интерфейсы несколько простоваты по дизайну (по крайней мере, из типовых примеров и набора элементов).
Embedded wizard и TouchGFX предлагают более комплексные и яркие элементы и шаблоны интерфейсов. Однако они поддерживают, в основном, более мощные серии контроллеров STM32, и для создания более продвинутых интерфейсов требуется приобретение полной версии библиотеки.
Инструментарий для работы с датчиками дальности
Компания ST предлагает готовые оценочные платы для каждого ToF-датчика, которые могут быть легко интегрированы в собственную разработку. Наиболее простой вариант – использование коммутационных плат с установленными датчиками. Они поставляются в наборе из 2 штук и имеют стабилизатор питания 5 В в 2,8 В для серии датчиков VL53Lxx и 3,3…10 В в 2,8 В для серии VL6180xx. При этом часть платы со стабилизатором, если он не требуется, можно отломать и таким образом уменьшить размер, для этого на плате сделана перфорация (рисунок 4).
Второй вариант для работы с датчиками – платы расширения X-NUCLEO. Такие платы можно использовать в сочетании с микроконтроллерными платами семейства STM NUCLEO. Они поставляются с держателями стекла регулируемой высоты (0,25, 0,5 и 1 мм) для возможности имитации разных воздушных зазоров. На платах установлены разъемы для подключения коммутационных плат.
Третий вариант – комплекты P-NUCLEO, которые представляют собой комбинацию микроконтроллерной платы STM NUCLEO с платой расширения и коммутационными платами.
В таблице 4 приведены наименования всех перечисленных решений для каждого датчика с указанием их особенностей.
Таблица 4. Аппаратные средства для разработки
На рисунках 5, 6 и 7 изображены:
- плата расширения с датчиком VL53L0CX;
- комплект P-NUCLEO-53L3A2 с датчиком VL53L3CX (микроконтроллерная плата NUCLEO-F401RE с платой расширения X-NUCLEO);
- коммутационные платы VL53L1-SATEL с датчиками VL53L1CB.
Рис. 5. Плата расширения X-NUCLEO-53L0A1
Рис. 6. Комплект P-NUCLEO-53L3A2
Рис. 7. Коммутационные платы VL53L1-SATEL
Кроме перечисленных плат датчик VL53L0CX установлен в IoT-модуле SensiBLE, а датчик VL53L1X входит в Bluetooth-комплект STEVAL-BCN002V1B.
Новые датчики VL53L1CB и VL53L3CX: особенности, отличия от предыдущих версий, функции ROI/FoV
Рис. 3. Обнаружение 3 объектов с помощью гистограммы отраженных фотонов
При таком подходе 3 бина на гистограмме (3 интервала времени) задают один объект и соответствуют расстоянию
0,8 м, поэтому дальность объектов друг от друга должна составлять не менее 0,8 м.
Такая функция также дает возможность фильтровать загрязнения защитного стекла. Их можно отсеять при задании порогового значения в гистограмме (рисунок 4).
Рис. 4. Фильтрация загрязнений стекла с помощью заданного порога
Для датчиков VL53L1X и VL53L1CB есть возможность выбора области обнаружения с помощью функции RoI (Region of Interest). Эта функция обеспечивается программированием размера приемной матрицы SPAD и позволяет регулировать угол обзора датчика (таблица 3). Помимо этого, в датчике VL53L1CB можно выделить несколько областей обнаружения.
Таблица 3. Размеры матрицы SPAD и соответствующие углы обзора
Размер матрицы SPAD | Угол обзора (FoV), ° |
---|---|
4 х 4 | 15 |
8 х 8 | 20 |
16 х 16 | 27 |
St microelectronics free fall sensor driver что это
Процессор: Intel Celeron N2840 2 x 2,16GHz
Все модификации модели смотреть здесь
Оперативная память: 4 ГБ DDR3 1333 МГц
Хранение информации: 500 ГБ HDD 5400 rpm SATA III
Дисплей: 11.6" 1366x768 WXGA LED IPS, глянцевый, сенсорный
Видеокарта: Intel HD Graphics (Bay Trail)
Беспроводная связь: Wi-Fi 802.11 b/g/n, Bluetooth 4.0
Аудио: Waves MaxxAudio Pro, 2 динамика
Интерфейсы: 2ХUSB 2.0, USB 3.0, HDMI, кардридер SD, комбинированный аудиоразъем
Дополнительно: 720р веб-камера
Батарея: 3-секционная литий-ионная 43 Втч
Габариты, вес: 300х200х19 мм, 1.4 кг
Операционная система: Windows 8.1 64-bit
Комплектация: Dell Inspiron 3147 (3147-2686)
"Главной фишкой данного аппарата является возможность за одну секунду переквалифицироваться из ноутбука в обычный 11.6-дюймовый планшет, в планшет на подставке, а также в мольберт."
Описание проблемы с работой Windows 10 на этом ноутбуке.
Обновил ОС с Windows 8.1 до Windows 10 практически сразу после выхода последней. Все работало нормально (правда появились непонятные кратковременные подвисания во встроенном браузере, но закрывал глаза на "сырость" новой системы). Потом случилось первое обновление 10-ки (в сентябре, если мне не изменяет память). Его ноутбук пережил без проблем)). Система продолжала вполне нормально работать. А вот после второго крупного обновления в ноябре, появился странный глюк. Периодически (я так и не смог отследить какую то закономерность) при включении ноутбука, или после перезагрузки, после того как на экране пробегает кружок загрузки, экран чернеет и на этом загрузка прекращается. Опытным путем)) выяснил, что достаточно дотронуться до экрана (именно тапнуть по экрану, с клавиатурой и тачпадом такое не прокатывает), как загрузка продолжается. Причем на секунду видно слово "подождите", и тут же появляется экран ввода пароля. Дальше система работает без проблем (если не считать оставшихся кратковременных подвисаний). Что делал - переустанавливал 10-ку "с нуля". Не помогает. Отключал все что можно в автозагрузке. Не помогает. Обновлял драйвера с сайта Dell до последней версии, тоже не помогло.
В итоге надоело мне бороться с этим глюком, вернул Windows 8.1 на место (благо образ был заблаговременно создан). Все работает без проблем (и в браузере тоже). Отключил предложения об обновлении до 10-ки.
Может кто то из владельцев данного устройства сталкивался с подобной неприятностью и смог ее решить?
Буду благодарен за советы.
Линейка оптических измерителей дальности VL53x и VL6180xx
Технические методы измерения дальности ToF: какие параметры достижимы
Принцип работы ToF-датчиков показан на рисунке 1. Лазерный диод (эмиттер) излучает фотоны, а фотодетектор регистрирует отраженный луч. По времени, за которое фотоны отражаются от объекта, ToF-датчик определяет расстояние. Преимуществом датчика является способность обнаруживать темные предметы с низким коэффициентом отражения, в то время как для обычных инфракрасных датчиков отраженного света может оказаться недостаточно.
Рис. 1. Принцип работы ToF-датчика
ToF-датчики компании STMicroelectronics позволяют измерять дальность объекта вне зависимости от размера, материала, цвета и коэффициента отражения его поверхности. Длина волны излучения VSCEL-диодов, использующихся в датчиках, составляет 940 или 850 нм, что находится в невидимом спектре. В зависимости от типа датчика можно измерять дальность объектов до 4 м (в темноте от белых поверхностей) за десятки миллисекунд с углом обзора до 27°, а новый датчик VL53L5CX с оптическими элементами на приемной матрице и излучающем диоде позволяет расширить угол до 61°. Некоторые датчики позволяют обнаруживать одновременно несколько объектов и выделять области обнаружения, настраивая размер приемной матрицы SPAD.
Обзор номенклатуры, сравнительные таблицы с параметрами
В настоящий момент компания предлагает 7 наименований ToF-датчиков: серию измерителей дальности VL53Lxx и два датчика приближения VL6180V1 и VL6180X. Все датчики выполнены в миниатюрных корпусах Optical LGA, поддерживают интерфейс I 2 С и работают в широком диапазоне температур. Внутри серий датчики, исключая новый VL53L5CX с расширенными возможностями, полностью совместимы по цоколевке. Основные параметры и характеристики датчиков указаны в таблице 1.
Таблица 1. Основные параметры ToF-датчиков компании ST
Максимально возможные расстояния каждого датчика варьируются от условий эксплуатации. Два главных фактора – это внешнее освещение и цвет обнаруживаемого объекта. В документации, как правило, приводятся значения для белых и серых объектов (соответственно, № 9,5 и № 4,74 по шкале Манселла) в темноте и при внешнем освещении. На рисунке 2 в качестве примера приведены значения для датчика VL53V1CB.
Рис. 2. Максимальные расстояния для датчика VL53L1CB
Условия использования датчика, такие как расстояние до объекта, коэффициент отражения, внешняя освещенность, влияют на выбор частоты и точность измерений. Например, для датчика VL53L1X время измерения может быть задано в диапазоне 20…1000 мс, в зависимости от измеряемого расстояния: 20 мс подходят для коротких расстояний, но для измерения расстояний до 4 м (в темноте до белых объектов) необходимо увеличить время до 140 мс. Для VL53L0X время измерения по умолчанию составляет 33 мс, при этом минимальное время при определенных условиях может составлять до 8 мс. Датчик VL53L1CB при частоте 60 Гц (16 мс) способен обнаруживать объекты на расстоянии до 3,2 м с точностью 1% в темном помещении, но при внешней освещенности ошибка измерений возрастет до 8,5%. Для датчиков VL6180V1 и VL6180X время колеблется в диапазоне 7,68…18,23 мс, в зависимости от коэффициента отражения объекта и расстояния до него. В любом случае выбор более низкой частоты измерений позволяет увеличить максимальную дистанцию и уменьшает ошибки, но несколько повышает потребление.
При проходе оптического сигнала через защитное стекло датчика возникают перекрестные помехи, которые зависят от типа стекла и воздушного зазора между ним и датчиком. Истинный сигнал можно восстановить с помощью функций автоматической компенсации, реализованных в программных драйверах. Такие драйверы разработаны для каждого датчика и находятся в открытом доступе на сайте компании ST. Дополнительная программная фильтрация смазывания стекла датчиков VL531CB и VL53LCX защищает от ошибок, например, из-за присутствия отпечатков пальцев на стекле.
После сборки в конечном устройстве рекомендуется проводить процедуру калибровки датчиков для температурной компенсации и компенсации смещения измерений и перекрестных помех. Готовые функции для калибровки также реализованы в программных драйверах.
Главные преимущества каждого датчика кратко перечислены в таблице 2.
Таблица 2. Основные преимущества и особенности датчиков ST
Программная поддержка
В качестве программной поддержки для каждого датчика STMicroelectronics предлагает программный драйвер API (Application Programming Interface), который представляет собой набор базовых функций на языке C, таких как инициализация, измерение дальности и так далее, для работы с датчиками и может быть скомпилирован для любого микроконтроллера.
Для плат X-NUCLEO и комплектов P-NUCLEO можно использовать программные пакеты X-CUBE – это расширение STM32Cube, которое включает в себя драйвер API, примеры кодов для различных режимов, таких как высокоскоростной режим, увеличенная дальность и прочие, для управления несколькими датчиками, а также имеет программную поддержку передачи данных по USB. Для контроля работы комплектов P-NUCLEO (X-NUCLEO с микроконтроллерной платой) доступны графические интерфейсы для операционной системы Windows. Компания ST также предлагает готовые программы для специализированных приложений, таких как рефлектометр, счетчик людей, лидар, а также драйверы для операционной системы Linux.
Таблица 5. Программные средства для разработки
Наименование | Драйвер API | Расширение STM32Cube | Графический интерфейс | Дополнительная программная поддержка |
---|---|---|---|---|
VL53L0CX | STSW-IMG005 | X-CUBE-53L0A1 | STSW-IMG006 – Windows 7,8,10 | STSW-IMG018 – рефлектометр |
VL53L1X | STSW-IMG007, STSW-IMG009 (оптимизированный драйвер 2,3 кбайт), STSW-IMG013 (драйвер для Linux) | X-CUBE-53L1A1 | STSW-IMG008 – Windows 7,8,10 | STSW-IMG010 – счетчик людей, STSW-IMG017 – лидар на основе 9 датчиков |
VL53L1CB | STSW-IMG019 | X-CUBE-53L1A2 | STSW-IMG020 – Windows 7,10 | – |
VL53L3CX | STSW-IMG015, STSW-IMG021 (драйвер для Linux) | X-CUBE-53L3A2 | STSW-IMG016 – Windows 7,10 | – |
VL6180V1 | STSW-IMG011 | X-CUBE-6180A1 | STSW-IMG012 – Windows 7,8,10 | STSW-IMG014 – распознавание жестов |
VL6180X | STSW-IMG003 | X-CUBE-6180XA1 | STSW-IMG004 – Windows 7,8,Vista | – |
Пример графического интерфейса STSW-IMG006 для VL53L0X в системе Windows представлен на рисунке 8.
Рис. 8. Графический интерфейс STSW-IMG006 для VL53L0X в Windows
Библиотека STemWin
Графическая библиотека для встраиваемых устройств STemWin, представленная компанией Segger, может работать и в однозадачном, и в многозадачном окружениях с проприетарной операционной системой или с любой из коммерческих RTOS. Библиотека может быть настроена для работы с любым устройством отображения – дисплеем или экраном, – вне зависимости от типа контроллера дисплея и целевого контроллера [4]. Пробная полнофункциональная версия библиотеки доступна на сайте производителя после регистрации.
Позиционируется как профессиональный инструментарий для создания и поддержки графического интерфейса для встраиваемых систем.
При разработке программного обеспечения обычно возникает выбор между подключением к проекту набора внешних файлов и созданием библиотеки. Если используемый инструментарий поддерживает так называемую «умную» сборку (smart linking), при которой в исполняемый код попадают только структуры и функции, реально задействованные в коде проекта, то особой необходимости в формировании специализированной библиотеки нет. В противном случае все прикрепленные к проекту файлы и функции в них будут скомпилированы и собраны в бинарном коде проекта, который в итоге будет иметь неоправданно большой размер.
В общем случае процедура включения STemWin в проект следующая: подключаются файлы ядра библиотеки, драйвер экрана, используемые шрифты и все дополнительные модули STemWin, которые планируется использовать.
Следующим шагом является конфигурирование STemWin. Задаются следующие параметры:
- размер памяти, отводимый под STemWin;
- драйвер экрана;
- процедуры преобразования цветов;
- процедуры инициализации контроллера экрана;
- использование аппаратных ускорителей;
- прикладные задачи, работающие с графикой.
STemWin поставляется с набором примеров и руководств по применению, которые помогают начать работать с библиотекой.
Партнерство с Segger Microcontroller GmbH & Co. KG позволяет компании STMicroelectronics предоставить потребителям своих микроконтроллеров библиотеку STemWin [5].
Библиотека STemWin представляет собой комплексное решение для работы с графикой, обладающее богатым набором функций, таких как декодирование форматов JPG, GIF и PNG, поддержка виджетов (флажки, кнопки и прочее) и сервера VNC. Это позволяет реализовывать функционал удаленного дисплея. Предлагается также инструментарий (например, GUIBuilder) для создания диалоговых окон по принципу drag-and-drop. Эта графическая библиотека полностью интегрирована в пакеты прошивки STM32Cube, например, STM32CubeF2, STM32CubeF3 и STM32CubeF4).
Последние версии библиотеки можно найти, скачав ПО STM32Cube.
Структура библиотеки STemWin представлена на рисунке 1.
Рис. 1. Структура библиотеки STemWin
Библиотека содержит два драйвера дисплеев (таблица 1):
- драйвер с прямым доступом LIN-драйвер;
- драйвер с косвенным доступом – FlexColor-драйвер для работы с экранами с последовательной или параллельной шиной управления.
Список поддерживаемых отладочных плат приведен в таблице 2.
Таблица 1. Возможности драйверов библиотеки STemWin
Драйвер | Поддерживаемые контроллеры экранов | Поддерживаемое количество бит цветности |
---|---|---|
LIN-драйвер | Драйвер поддерживает любой контроллер дисплея с линейным адресным пространством и шинным интерфейсом. Видеопамять напрямую адресуется адресными линиями процессора. Это означает, что видеопамять напрямую направляется по адресу линий ЦП. | 1, 2, 4, 8, 16, 24, 32 |
FlexColor-драйвер | Epson: S1D19122 FocalTech: FT1509 Himax: HX8353, HX8325A, HX8357, HX8340, HX8347, HX8352A, HX8352B, HX8301 Hitachi: HD66772 Ilitek: ILI9320, ILI9325, ILI9328, ILI9335, ILI9338, ILI9340, ILI9341, ILI9342, ILI9163, ILI9481, ILI9486, ILI9488, ILI9220, ILI9221 LG Electronics: LGDP4531, LGDP4551, GDP4525 Novatek: NT39122 OriseTech: SPFD5408, SPFD54124C, SPFD5414D Raio: RA8870, RA8875 Renesas: R61505, R61516, R61526, R61580 Samsung: S6E63D6, S6D0117 Sitronix: ST7628, ST7637, ST7687, ST7735, ST7712 Solomon: SSD1284, SSD1289, SSD1298, SSD1355, SSD2119, SSD1963, SSD1961, SSD1351 Syncoam: SEPS525 | 16, 18 |
Таблица 2. Список отладочных плат, поддерживаемых STemWin
Наименование МК | Отладочная плата | Интерфейс дисплея | Драйвер |
---|---|---|---|
STM32F0 | STM32091C-EVAL | SPI | FlexColor |
STM32F1 | STM3210C-EVAL STM3210E-EVAL | SPI FSMC | FlexColor |
STM32F2 | STM322xG-EVAL | FSMC | FlexColor |
STM32F3 | STM32303C-EVALSPI STM32303E-EVALSPI STM32373C-EVAL | SPI | FlexColor |
STM32F4 | STM32F412G-DISCO STM32F413G-DISCO STM32F429I-DISCO STM32F4x9I-EVAL STM32F4xG-EVAL STM32F446E-EVAL STM32F469I-EVAL STM32F469I-DISCO | FMC FMC LTDC LTDC FSMC FMC LTDC/DSI LTDC/DSI | FlexColor FlexColor Lin Lin FlexColor FlexColor Lin Lin |
STM32F7 | STM32F723E-DISCO STM32F769I-EVAL STM32F769I-DISCO STM32F746G-DISCO STM32F756G-EVAL | FMC LTDC/DSI LTDC/DSI LTDC LTDC | FlexColor Lin Lin Lin Lin |
STM32H7 | STM32H743I-EVAL | LTDC | Lin |
STM32L1 | STM32L152D-EVAL | FSMC | FlexColor |
STM32L4 | STM32L49I-EVAL-MB1314 STM32L49I-EVAL-MB1315 STM32L49I-DISCO STM32L476G-EVAL STM32L496G-DISCO | GFXMMU/LTDC/DSI LTDC GFXMMU/LTDC/DSI FMC FMC | Lin Lin Lin FlexColor FlexColor |
Пример вывода строки «Hello World!» на экран с использованием средств библиотеки:
Некоторые этапы разработки графического интерфейса при помощи GUIBuilder представлены на рисунке 2 [6].
Рис. 2. Этапы разработки графического интерфейса при помощи GUIBuilder
Лазерные датчики ST: измерение расстояния до объекта стало более надежным и быстрым
Сегодня для бесконтактного определения расстояния до объекта доступны датчики, созданные по нескольким технологиям:
- инфракрасные датчики;
- ультразвуковые датчики;
- ToF-датчики;
- лазерные датчики и так далее.
Работа датчиков ToF (Time-of-Flight), или времяпролетных датчиков, может быть основана на светодиодном или лазерном излучении. Лазерные ToF-датчики позволяют измерять расстояния с высокой точностью и высокой частотой, при этом такие датчики имеют малое энергопотребление и привлекательную цену. Такие устройства успешно применяют в областях, где необходимо измерение расстояний в пределах единиц метров, например, в бытовой и компьютерной технике.
Датчики ToF производства компании STMicroelectronics используются практически во всех современных смартфонах. Кроме функции автоматического выключения экрана при разговоре сейчас они используются в том числе для мгновенной автофокусировки камеры даже в темноте. Широкое распространение эти датчики получили также в робототехнике для обнаружения ступеней и предупреждения столкновений, например, в роботах-пылесосах, игрушках, в системах БПЛА, в том числе для автоматической посадки, в области IoT, в системах «умный дом» для управления жестами, а также в системах безопасности. Учитывая, что уровень излучения таких датчиков абсолютно безопасен для глаз, их начинают активно использовать в системах определения наличия сотрудников на рабочем месте, добавляя датчик в монитор ноутбука рядом с камерой.
В промышленности лазерные датчики могут быть задействованы в производственном процессе для технологического контроля, а также в различных сканерах штрихкодов для уменьшения времени сканирования. ToF-датчики можно использовать в системах управления складских помещений и в автоматизированных логистических центрах, где эти устройства могут, например, контролировать зазоры для точного позиционирования товара на стеллаже. Иногда эти устройства используются для контроля остатка товаров в торговых автоматах или на прилавках.
Применение
Инструментарий Embedded wizard
Embedded wizard [10] является кроссплатформенным инструментом для разработки и создания графических интерфейсов, работающим даже на не очень мощных встраиваемых контроллерах. Embedded Wizard поддерживают серии контроллеров STM32 – F4, F7, F1 и L4 [11, 12]. Разработчикам предлагаются свободная версия библиотеки с ограниченным набором шрифтов, опций, предварительно скомпилированными файлами и ограниченной функциональностью, версия для малого бизнеса – с полной функциональностью, и профессиональная версия с исходными текстами, техподдержкой и возможностью работы с более чем 60 типами контроллеров.
С помощью встроенного мастера GUI Builder разработчик может быстро и легко разрабатывать и развертывать HMI. Предлагается набор готовых к использованию и настраиваемых виджетов, таких как кнопки, слайдеры и текстовые представления практически на любой вкус. Возможна настройка их анимации и привязка требуемой функциональности. На основе полученного шаблона генерируется исходный код, который может быть в дальнейшем скомпилирован и загружен в целевой контроллер (рисунок 4 [13]).
Рис. 4. Встроенный мастер GUIbuilder
Предлагается достаточно много готовых примеров графических интерфейсов для плат Discovery (серий F4, F7).
Разработка графических устройств на STM32. Выбираем графическую библиотеку
Начатую еще в прошлом году серию статей под условным названием «STM32 + периферия = LOVE» [1, 2, 3] продолжает обзор графических библиотек, позволяющих упростить и ускорить вывод на рынок готового изделия. Рассмотрены универсальная библиотека STemWin и более сложные, но предназначенные для топовых серий STM32 библиотеки Embedded wizard и TouchGFX.
Микроконтроллеры STM32 популярны среди отечественных разработчиков благодаря хорошему сочетанию цены, производительности, набора периферийных устройств и интерфейсов. Тенденции рынка встраиваемых устройств таковы, что во многих случаях требуется наличие графического пользовательского интерфейса или, как минимум, интуитивно понятное отображение данных или визуализации процессов. С аппаратной точки зрения в семействе STM32 представлены микроконтроллеры со специализированными периферийными блоками, которые используются для работы с TFT-дисплеями: FSMC, LTDC, DSIHOST, Chrom-ART Accelerator, Chrom-GRC и JPEG-кодек. Во многих случаях они позволяют существенно разгрузить процессорное ядро [3].
При разработке устройств с графическим интерфейсом перед разработчиком встает проблема выбора между реализацией собственных графических примитивов и библиотек, и применением готовых библиотек. Первый путь приведет к необходимости написания кода для отрисовки двух-/трехмерных объектов, реализации функций прозрачного слоя, решению вопросов наложения объектов в трехмерных сценах и многому другому, не считая необходимости реализации низкоуровневых драйверов. Применение готовых библиотек потребует от разработчика перехода к определенному стилю кода, характерному для целевой библиотеки. Дополнительно разработчику необходимо будет изучить специфику работы с готовой библиотекой – порядок инициализации функций и структур данных, наличие callback-функций, задействованные ресурсы контроллера.
Первый путь, конечно, дает возможность полностью контролировать код, его производительность и размер, но требует значительных затрат рабочего времени, большая часть которого уйдет на тестирование и отладку графического кода в ущерб решению основной задачи. Поэтому в большинстве случаев оптимальным выбором при построении графических устройств является использование готовых библиотек, существенно экономящее время вывода устройств на рынок.
Реализация 2D-лидара на основе VL53L1X
Примером применения ToF-датчиков является 2D-лидар (LIght Detection And Ranging), осуществляющий обнаружение света и определение дальности, разработанный в компании STMicroelectronics и основанный на 9 датчиках VL53L1X. В этом примере лидар позволяет строить карту расположения объектов в угле обзора 180°.
Девять датчиков с помощью коммутационных плат подключены по интерфейсу I 2 C к микроконтроллерной плате STM32F401RE NUCLEO и собраны в одном корпусе (рисунок 9). Датчики имеют общее питание и землю, но обособленный ресет, подведенный к отдельному выводу GPIO микроконтроллера.
160 мс. Можно увеличить размер матрицы датчиков, чтобы повысить скорость измерений, однако это приведет к уменьшению разрешения.
Программный пакет STSW-IMG017 включает примеры кода для настройки лидара и управления обработкой данных с 9 датчиков, а с помощью графического интерфейса данные можно визуализировать в виде графиков.
Рис. 9. 2D-лидар на основе 9 датчиков VL53L1X
Библиотека TouchGFX
Библиотека позволяет создавать встроенные графические интерфейсы с высококачественной графикой и плавной анимацией. TouchGFX включает в себя простой в использовании графический редактор TouchGFX Designer с поддержкой технологии drag & drop [7].
TouchGFX включает в себя алгоритмы рендеринга и новые усовершенствованные механизмы рисования, оптимизированные для встраиваемых контроллеров, начиная с серий ARM Cortex M. В итоге достигается высокая производительность графического интерфейса и плавная анимация с частотой кадров 25 и более при типовой загрузке процессорного ядра менее 15%. Поддерживаются разрешения экранов вплоть до WSVGA 1024×600. Список отладочных плат, поддерживаемых TouchGFX, приведен в таблице 3.
На текущий момент поддерживаются следующие контроллеры [8]:
Таблица 3. Список отладочных плат, поддерживаемых TouchGFX
Отладочная плата | Микроконтроллер | Дисплей, ″ | Сенсор |
---|---|---|---|
STM32F429-DISCO | STM32F429 ARM Cortex M4, 180 MHz | 2,4 | Резистивный |
STM324x9I-EVAL | STM32F429 ARM Cortex M4, 180 MHz | 4,3 | Резистивный |
STM324x9I-EVAL | STM32F439 ARM Cortex M4, 180 MHz | 5,7 | Емкостной |
STM32469I-EVAL | STM32F469I ARM Cortex M4, 180 MHz | 4,0 (800×480) | Емкостной |
STM32F469I-DISCO | STM32F469I ARM Cortex M4, 180 MHz | 4,0 (800×480) | Емкостной |
STM32F746G-DISCO | STM32F746 ARM Cortex M7, 200 MHz | 4,3 | Емкостной |
STM32746G-EVAL | ST STM32F746 ARM Cortex M7, 200 MHz | 5,7 | Емкостной |
STM32756G-EVAL | STM32F756 ARM Cortex M7, 200 MHz | 5,7 | Емкостной |
STM32F769I-DISCO Hex file available here | STM32F769 ARM Cortex M7, 200 MHz | 4,0 | Емкостной |
STM32769I-EVAL | STM32F769 ARM Cortex M7, 200MHz | 4,0 | Емкостной |
TouchGFX отлично работает с системами, где TFT-контроллер интегрирован в MCU с кадровыми буферами во внешней памяти или с системами, которые используют ЖК-дисплей со встроенным буфером и контроллером экрана. Требования к ресурсам TouchGFX зависят от размера и сложности конкретного приложения. Типичные требования к реализации GUI:
- Внутренняя память:
- 10…20 кбайт (фреймворк и стек);
- 1…15 кбайт (виджеты).
- 20 кбайт (фреймворк);
- 1…100 кбайт (определения экрана, логика графического интерфейса).
- 320×240 QVGA-дисплеев с двумя кадрами = 307 кбайт;
- 480×272 WQVGA-дисплеев с двумя кадрами = 522 кбайт;
- 800×480 WVGA-дисплеев с двумя кадрами = 1,5 Мбайт.
TouchGFX может работать с ОС (требуется одна выделенная задача и два семафора) или без нее.
Работа с дизайнером графического интерфейса TouchGFX Designer достаточно проста, но вместе с тем позволяет создавать красочные и элегантные интерфейсы (рисунок 3 [9]).
Рис. 3. Работа TouchGFX Designer
Читайте также: