Если задействована нестандартная конструкция оборудования, то в этом случае имеются дополнительные компоненты, которые так или иначе необходимо учитывать. В зависимости от характеристик используемого ультразвукового преобразователя может потребоваться дополнительная схема между устройством AVR и каналами передачи и приема с подключением к ультразвуковому излучателю/приемнику. Например, контакты на AVR могут не обладать достаточной нагрузочной способностью для непосредственного подключения излучателя ввиду его большой собственной емкости. Это означает, что между выходным
контактом AVR и передающим каналом TX-преобразователя потребуется двухтактный
усилитель. Кроме того, сигнал на входе приема RX-преобразователя, прежде чем он может быть эффективно принят аналоговым компаратором AVR, будет нуждаться в некотором уровне усиления и фильтрации, как правило, для этого понадобится узкий полосовой фильтр. Решение этих элементов будет зависеть от конкретного приложения. Для справки, как это может быть выполнено на практике, обратитесь к [3].
Пример кода для программирования прошивки ультразвукового измерителя реализует настройку, описанную в этой статье. Он позволяет выводить данные измерения расстояния либо на ОСИД-дисплей, либо через UART. Опцию можно настроить с помощью хеш-определения OUTPUT_USED в верхней части основного файла. Он доступен через веб-платформу Atmel START — инструмент конфигурации и генерации ПО, позволяющий настраивать код приложения через графический интерфейс пользователя (GUI). Код можно загрузить как для Atmel Studio, так и для IAR Embedded Workbench, используя прямую ссылку [4], через кнопку BROWSE EXEMPLES («Обзор примеров») на начальной странице Atmel START или применить прямой переход [5]. Для получения дополнительной информации о том, как использовать Atmel START, прочитайте руководство по началу работы (кликнув на Getting Started guide) или посмотрите приведенные видеоуроки (кликнув на video tutorials). Через Getting Started guide можно найти пример, кликнув на имя проекта на панели конфигуратора
проекта Atmel START. Далее загрузите код в виде файла *.atzip для Atmel Studio из примера браузера в Atmel START, нажав Download («Скачать») выбранный пример. Чтобы скачать файл из Atmel START, нажмите Export («Экспортировать проект»), а затем загрузите пакет. Для этого дважды щелкните загруженный файл *.atzip, и проект будет импортирован в Atmel Studio 7.0. Подробно о программировании микроконтроллеров семейства tinyAVR 1‑series можно узнать в [6].
Можно также воспользоваться инструментами среды разработки IAR Embedded Workbench [8].
Интегрированная среда разработки IAR Embedded Workbench для ARM является профессиональной средой для разработки и отладки приложений для микроконтроллеров с ядром ARM. Это мощный, но вместе с тем простой и очень удобный инструмент программирования для встраиваемых микропроцессорных устройств и систем. Для получения информации о том, как им‑портировать проект в IAR Embedded Workbench, откройте руководство пользователя Atmel START [7] и выберите раздел Using Atmel Start Output in External Tools («Использовать исходный вывод Atmel во внешних инструментах») и IAR Embedded Workbench.
Заключение Реализация устройства эффективно выполнена с применением возможностей блока настраиваемой пользовательской логики (Configurable Custom Logic, CCL) микроконтроллера AVR, который для генерации всех необходимых сигналов обращается к преимуществам модулей таймера/счетчика. Решение направлено на сокращение использования ядра микроконтроллера и уменьшение энергопотребления системы, оно ориентировано на применение в приложениях реального времени и устройствах, критических к уровню энерго‑
потребления. Рассмотренный пример реализации ультразвукового измерителя расстояния в виде платы пригоден не только как решение отдельного устройства, но и как часть того или иного оборудования.
Литература1. Roy E. Core Independent Ultrasonic Distance Measurement with the tinyAVR 1‑series. AN2548. 2018. Microchip Technology Inc.
http://ww1.microchip.com/downloads/en/AppNotes/AN2548-Core-Independent-Ultrasonic-Distance-Measurement-00002548C.pdf2. ATtiny417/817 tinyAVR 1‑series. Complete Datasheet. 2019. Microchip Technology Inc.
ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42721-ATtiny417-814-816-817_Complete.pdf3. Ultrasonic Range Finder with ATtiny817 Hardware User's Guide. 2017. Microchip
Technology Inc.
ww1.microchip.com/downloads/en/DeviceDoc/40001902A.pdf4. Atmel START. Getting started.
www.start.atmel.com/#5.
www.start.atmel.com/#dashboard6. Getting Started with the tinyAVR 1‑series. Training. 2017. Microchip Technology Inc.
ww1.microchip.com/downloads/en/DeviceDoc/40001949A.pdf7. Atmel START User's Guide.
ww1.microchip.com/downloads/en/DeviceDoc/Atmel-START-User-Guide-DS50002793A.pdf8.
www.iar.com/iar-embedded-workbench/