CANNY 5 Nano
CANNY 5 Nano — компактный программируемый логический контроллер ориентированный на автомобильное, бытовое и промышленное применение, предназначенный для макетирования и использования в качестве встраиваемого контроллера.
- Общие сведения
- Устройство и принцип работы
- Режимы работы
- Среда исполнения функциональных диаграмм
- Ресурсы контроллера – краткое описание
- Системные ресурсы и режимы работы
- Драйвер каналов ввода-вывода
- Драйвер широтно-импульсного модулятора (ШИМ)
- Драйвер UART
- Драйвер CAN
- Драйвер I²C
- Драйвер Dallas 1-Wire
- Параметры пользовательской конфигурации
- Энергонезависимая память (ЭНП)
- Драйвер пульта ИК ДУ
- Аналого-цифровой преобразователь (АЦП)
- Драйвер датчика DHT11 / DHT22 / AM2302
- Принципиальная схема CANNY 5 Nano
Общие сведения
Программируемый логический контроллер CANNY 5 Nano является встраиваемым ПЛК, обладающим широким функционалом.
По своим функциональным и конструктивным параметрам CANNY 5 Nano может быть отнесен к классу встраиваемых интеллектуальных реле или к классу электронных конструкторов.
К основным особенностям CANNY 5 Nano можно отнести:
- два варианта напряжения питания 6..15В или 5В;
- возможность обеспечения питанием внешних устройств: 5В до 800 мА
- номинальное напряжение каналов ввода-вывода 0 / 5В;
- 18 универсальных каналов ввода/вывода, максимальный ток каналов №№0-9,13,16,17 составляет 25мА, каналов №№10,11,12,14,15 составляет 2мА, суммарный единовременный максимальный ток каналов контроллера 200мА,
- встроенный интерфейс CAN 2.0B совместимый с ISO-11898, SAE J2411 широко применяемым в автомобилях;
- поддержка популярных интерфейсов обмена данными: 2 UART, LIN*, I²C, Dallas, ИК ДУ;
- встроенный USB-UART преобразователь, используемый как для программирования и/или питания контроллера, так и для взаимодействия пользовательских диаграмм с ПК;
- восьмиканальный аналого-цифровой преобразователь (АЦП);
- 3 канала высокочастотного ШИМ, с разрешением 1мкс;
- встроенные средства управления собственным энергопотреблением контроллера в диапазоне от 0,5 до 20мА;
- энергонезависимая память программ и шестьдесят четыре 16-и битные ячейки энергонезависимой памяти данных доступные пользовательскому приложению, способные сохранить критически важные данные при сбоях питания контроллера;
- широкий диапазон рабочих температур от -40 до + 85 оС;
- компактное исполнение и возможность встраивания в качестве центрального управляющего процессора позволяет создавать уникальные пользовательские устройства.
(* - находится в разработке)
Для создания пользовательских программ CANNY 5 Nano, как и для программирования других контроллеров CANNY, используется графический язык программирования CFD. Разработка программ осуществляется в интегрированной среде разработки CannyLab.
Язык CFD позволяет быстро создавать эффективные пользовательские приложения — функциональные диаграммы, а бесплатная интегрированная среда разработки CannyLab версии 1.0 или выше, содержит средства редактирования, отладки и записи программного обеспечения в CANNY 5 Nano.
Доступный пользователю объем памяти контроллера способен вместить программы, состоящие из нескольких сотен функциональных блоков, что позволяет реализовать достаточно сложные алгоритмы.
Режим работы восемнадцати внешних каналов контроллера может быть настроен индивидуально из пользовательской функциональной диаграммы.
ВНИМАНИЕ! Начиная с марта 2024 года контроллер CANNY 5 Nano поставляется в аппаратной версии HW v2
Новая версия контроллера полностью совместима с прежней версией по программному обеспечению, габаритам, отверстиям, электрическим характеристикам и может быть использована вместо текущей версии везде, где та применяется. Основные отличия: использован односторонний монтаж, уменьшены корпуса компонентов, добавлены контакты для поверхностного монтажа устройства, использован новый чип интерфейса USB и разъем micro-USB вместо mini-USB.
Устройство и принцип работы
Внешний вид и расположение элементов
Основными конструктивными элементами CANNY 5 Nano являются: микроконтроллер (MCU), смонтированный на плате совместно с кварцевым резонатором, перемычкой, разъемом miniUSB, на лицевой стороне платы контроллера; блока питания, контроллера USB, трансмиттера CAN - на оборотной. Плата контроллера укомплектована двумя разъемами PLS, по 14 контактов, расположенными по одному, вдоль каждой из ее длинных сторон. Данные разъемы могут быть использованы для установки контроллера на монтажную плату или в стандартную 28pin колодку. Переключение между рабочим режимом и режимом загрузки в контроллер программного обеспечения выполняется с помощью перемычки J1 (джампера).
Для возможности отслеживания состояния контроллера и режимов его работы на лицевой стороне его платы установлены два контрольных светодиода с помощью которых отображается наличие питания на процессоре и активность соединения с ПК. Еще один светодиод указывает на наличие положительного потенциала на четвертом канале контроллера и может быть таким образом использован пользователем для индикации режимов работы контроллера из функциональной диаграммы.
Питание контроллера
В контроллерах CANNY 5 Nano допускается 3 варианта питания:
- от источника постоянного тока напряжением 6..15В: положительный выход источника питания подключается к контакту №28 платы контроллера, потенциал «GND» — к контакту №4 или №27;
- от источника постоянного тока напряжением 5В: потенциал +5В подключается к контакту №25 платы контроллера, потенциал «GND» — к контакту №4 или №27;
- напряжением 5В от USB-порта ПК, через разъем miniUSB на плате контроллера.
Примечание: При питании контроллера от источника постоянного тока через контакт №28 или через USB-разъем, контакт №25 может быть использован для питания внешних устройств напряжением 5В. При этом, совокупный ток потребления контроллера и внешних устройств не должен превышать 800 мА, а питании через USB 500мА. При питании от USB, внешние устройства могут так же получить питание напряжением 3.3В током до 50мА от контакта №15 контроллера.
Программная архитектура
CANNY 5 Nano является цифровым программируемым вычислительным управляющим устройством.
В целом, для CANNY 5 Nano справедливы общие сведения о программируемых логических контроллерах изложенные во введении к настоящему руководству.
Основными элементами CANNY 5 Nano являются: арифметическо-логическое устройство (АЛУ), внутренняя память, подсистема управления ходом исполнения команд и система ввода-вывода.
Арифметическо-логическое устройство — вычислительное ядро CANNY 5 Nano. АЛУ обеспечивает исполнение системного программного обеспечения и пользовательских функциональных диаграмм, помещенных во внутреннюю память контроллера.
Внутренняя память контроллера разделяется на энергонезависимую память программ, энергонезависимую память данных и оперативную память данных.
Подсистема управления ходом обработки команд, отвечает за переключение и настройку режимов работы контроллера.
Система ввода-вывода обеспечивает связь контроллера с внешним миром, с использованием как дискретных каналов ввода-вывода, так и стандартного цифрового интерфейса CAN.
Структура программного обеспечения
Программное обеспечение CANNY 5 Nano состоит из: программного загрузчика, системного ПО (операционной системы) и пользовательской функциональной диаграммы.
Программный загрузчик обеспечивает работу контроллера в режиме загрузки ПО, осуществляя обмен данными между CANNY 5 Nano и персональным компьютером, выполняя проверку целостности и запись переданного от ПК программного обеспечения во внутреннюю память контроллера. Программный загрузчик помещается во внутреннюю память контроллера в процессе его производства и не может быть удален или изменен пользователем.
Системное программное обеспечение CANNY 5 Nano распространяется производителем в виде файлов формата CCX и содержит операционную систему и набор драйверов, обеспечивающих исполнение пользовательской функциональной диаграммы и её взаимодействие с ресурсами контроллера. Модификация пользователем содержимого данных файлов не допускается. Содержимое различных файлов CCX может быть многократно записано пользователем в память контроллера.
Пользовательская функциональная диаграмма создается и модифицируется пользователем с помощью интегрированной среды разработки CannyLab и, после записи в контроллер, задает алгоритм его работы в автономном режиме. Пользовательские диаграммы могут быть многократно записаны в контроллер и сохранены из среды CannyLab в файлы формата CFD.
Режимы работы
Предусмотрено несколько режимов работы контроллера, предназначенных для выполнения основных операций с ним.
Режим загрузки ПО
В данном режиме, контроллер функционирует под управлением встроенного программного загрузчика, выполняющего запись системного программного обеспечения и функциональной диаграммы в память контроллера по командам среды разработки CannyLab. Вход в данный режим осуществляется при подключении контроллера к ПК с помощью кабеля-переходника USB-A в miniUSB, при отключеном внешнем питании и замкнутой перемычке/джампере J1. Особенности подключения контроллера к ПК приведены в разделе «Cannylab: Работа с контроллером».
После успешного подключения контроллера к ПК пользователь может выполнить установку связи CANNY 5 Nano с интегрированной средой разработки CannyLab.
Выход из данного режима происходит при размыкании перемычки J1 на плате контроллера. Если в момент выхода из режима загрузки ПО, энергонезависимая память программ контроллера содержала корректно записанное системное программное обеспечение, то контроллер переходит в автономный режим работы.
Автономный режим
Автономный режим является основным режимом работы контроллера. В данном режиме контроллер под управлением загруженного в него системного программного обеспечения последовательно, в бесконечном цикле, исполняет функциональную диаграмму, работая по алгоритму заданному пользователем.
Переход в данный режим происходит автоматически, при подключении контроллера к внешнему питанию по одному из доступных вариантов, при разомкнутой перемычке J1.
При работе в данном режиме, функциональной диаграмме пользователя доступны все ресурсы контроллера, драйверы которых включены в загруженное системное программное обеспечение.
Автономный режим пониженного энергопотребления
Данный режим является вариантом обычного автономного режима, в котором после каждого цикла исполнения функциональной диаграммы, контроллер делает паузу в работе, снижая своё энергопотребление до минимального. Таким образом, контроллер работает в пульсирующем режиме, периодически «засыпая» и «просыпаясь».
Включением, отключением и настройкой параметров данного режима управляет функциональная диаграмма.
Использование данного режима актуально при разработке систем, ориентированных на батарейное питание, таких как бортовое автомобильное оборудование.
Среда исполнения функциональных диаграмм
Представление функциональной диаграммы
Созданная в среде CannyLab графическая функциональная диаграмма, непосредственно перед записью в контроллер автоматически обрабатывается транслятором, который выполняет проверку диаграммы на непротиворечивость, определяет порядок выполнения функциональных блоков и преобразует диаграмму в исполняемый код — последовательность машинных команд АЛУ контроллера CANNY 5 Nano.
Порядок исполнения
Исполняемый код диаграммы, при записи в контроллер, память которого уже содержит системное программное обеспечение, включается в последовательность машинных команд системного ПО. Таким образом, общая последовательность команд контроллера с загруженным системным ПО и функциональной диаграммой, будет состоять из: процедуры инициализации, исполняемой однократно после каждого сброса контроллера и исполняемого кода функциональной диаграммы, обрамленного процедурами управления ресурсами контроллера, и помещенного в бесконечно исполняемый цикл – цикл выполнения диаграммы
Некоторые драйверы, включенные в состав системного ПО контроллера, например драйвер CAN, требуют безотлагательной реакции контроллера на возникающие в процессе приема и передачи данных программные события. Программный код таких драйверов обрабатывается контроллером асинхронно, параллельно с основным потоком исполнения. На время обработки асинхронных вызовов драйверов, исполнение основного цикла выполнения диаграммы кратковременно приостанавливается.
Доступ к ресурсам контроллера
Все доступные пользователю из функциональной диаграммы ресурсы: системные ресурсы контроллера, подсистема ввода-вывода и дополнительные драйверы включенные в состав системного ПО, отображаются на защищенное адресное пространство внутренней памяти контроллера. Данное адресное пространство разделено на регистры чтения (контроля) и регистры записи.
Пользователь имеет возможность указать регистр чтения в качестве источника входных данных практически любого функционального блока на диаграмме и, тем самым, извлечь и использовать при реализации собственных алгоритмов сведения, полученные контроллером из внешнего мира. Например, информацию об электрическом потенциале на каком-либо контакте контроллера, или содержимое пакета данных принятого контроллером из CAN.
Регистр записи может быть использован в качестве получателя выходных данных любого функционального блока на диаграмме. Таким образом, пользователь осуществляет управление ресурсами контроллера из функциональной диаграммы, получая возможность воздействовать на объекты внешнего мира. Например, переключить внешнее реле, изменив электрический потенциал на одном из контактов контроллера, к которому подключена его обмотка; включить контрольный светодиод; задать режим работы CAN; отправить пакет данных.
Порядок использования большинства ресурсов контроллера включает в себя задание пользователем необходимых параметров их работы, например полярности выходных каналов, полярности и чувствительности входных каналов, скорости обмена данными по CAN и т.д.
Задание таких параметров производится в форме записи специальных констант в один или в несколько определенных регистров контроллера, в зависимости от того, конфигурацию какого из ресурсов требуется задать. Например, передачей константы со значением «0» в регистр, расположенный по адресу 1228 задается режим работы канала №8 в качестве дискретного входа.
В среде CannyLab, для удобства пользователя, все доступные регистры контроллера поименованы, как и все специальные константы, использующиеся при взаимодействии с ресурсами контроллера. Поэтому для пользователя CannyLab данная операция будет выглядеть как установка константы с именем «Дискретный положительный вход» в регистр с именем «Регистр конфигурации канала №8».
Установив таким образом режим работы канала №8, мы можем по появлению значения «1» в регистре расположенном по адресу 1192 («Регистр входного значения канала №8»), узнать о приложении положительного электрического потенциала к контакту «C8» контроллера.
Ресурсы контроллера – краткое описание
Системные ресурсы и режимы работы
Основная статья: CANNY 5 Nano. Системные ресурсы и режимы работы
Системные ресурсы контроллера отображаются на группу регистров чтения и группу регистров записи. Обращаясь к данным регистрам из функциональной диаграммы, можно получить востребованные в практическом применении сведения о текущем состоянии контроллера и управлять режимами его работы. Список регистров системных ресурсов находится в разделе «Состояние контроллера» справочника регистров, который доступен пользователю CannyLab через контекстное меню элементов диаграммы типа «Регистр чтения» и «Регистр записи».
Драйвер каналов ввода-вывода
Основная статья: CANNY 5 Nano. Драйвер каналов ввода-вывода
Пользователям CANNY 5 Nano доступны восемнадцать дискретных каналов ввода-вывода общего назначения. Каждый канал физически представлен соответствующим контактом платы контроллера. Записывая данные в соответствующие регистры каналов драйвера, функциональная диаграмма может управлять электрическим потенциалом на каждом из этих контактов. Считывая данные регистров каналов ввода-вывода, диаграмма может получать информацию о текущем значении потенциала каждого из них.
Физические характеристики каналов позволяют подключать к ним светодиоды или слаботочные внешние управляющие устройства, например мощные транзисторы или транзисторные сборки, которые позволяют передавать управляющие сигналы на исполнительные устройства — электромагнитные реле, небольшие электродвигатели. В качестве внешних источников дискретных сигналов способных управлять работой контроллера, возможно использовать механические, электромеханические и электронные кнопки и переключатели, генераторы импульсов, источники напряжения 0-5В и транзисторные выходы различной аппаратуры и т.п.
Режим и параметры работы любого из каналов задаются функциональной диаграммой. В каждый момент времени канал может работать только в одном из возможных режимов, однако допускается динамическое переопределение конфигурации канала из функциональной диаграммы в процессе ее выполнения.
Драйвер широтно-импульсного модулятора (ШИМ)
Основная статья: CANNY 5 Nano. Драйвер широтно-импульсного модулятора (ШИМ)
Три из восемнадцати каналов ввода-вывода (Канал №5, Канал №7 и Канал №16) CANNY 5 Nano поддерживают работу в режиме широтно-импульсного модулятора.
Использование драйвера ШИМ позволяет указанным каналам контроллера работать асинхронно функциональной диаграмме, что дает возможность добиться максимальной стабильности временных параметров генерируемого сигнала.
Драйвер ШИМ CANNY 5 Nano имеет два основных режима работы, задаваемых раздельно для каждого из трех каналов: низкочастотный и высокочастотный. Низкочастотный режим, позволяет реализовывать импульсный ражим работы соответствующего канала с периодом от 2 до 65536 миллисекунд с шагом 1 миллисекунда, при использовании стандартных настроек системного таймера, и периодом от 200 до 6553600 микросекунд с шагом 100 микросекунд, при использовании увеличенного разрешения системного таймера.
В режиме высокочастотного ШИМ, период задается в диапазоне от 2 до 256 микросекунд, с шагом 1 микросекунда вне зависимости от настроек масштаба времени системного таймера.
Драйвер UART
Основная статья: CANNY 5 Nano. Драйвер UART
Контроллеры CANNY 5 Nano имеют два независимых аппаратных интерфейса UART поддерживающих работу в асинхронном дуплексном режиме приема/передачи данных и могут быть использованы для связи контроллеров друг с другом или с внешним оборудованием поддерживающим данный вид связи. Интерфейсы могут быть задействованы независимо друг от друга и иметь индивидуальные настройки скорости передачи данных и полярности сигналов. Интерфейс UART1 задействует каналы № 0 (TX) и № 1 (RX) контроллера, интерфейс UART2 задействует каналы № 8 (TX) и № 9 (RX). При включении интерфейса активируются оба его канала.
Объем приемного и передающего буферов данных драйвера UART CANNY 5 Nano составляет 32 байта.
Набор поддерживаемых скоростей ограничен: 300, 1200, 2400, 9600, 19200, 57600, 115200 бод; а также доступен только один формат передачи данных: 8-N-1.
Примечание: Для корректной работы интерфейсов UART необходимо, чтобы контакты GND устройств, совершающих обмен данными, были приведены к единому потенциалу («общая земля»).
Драйвер UART в своей работе использует ресурсы каналов контроллера, но имеет более высокий приоритет чем драйвер дискретного ввода-вывода. Таким образом, при активации того или иного интерфейса UART, для задействованных в его работе каналов, изменение значений в связанных с ними регистрах драйвера дискретного ввода-вывода будет проигнорировано контроллером.
Драйвер CAN
Основная статья: CANNY 5 Nano. Драйвер CAN
Два специальных контакта контроллера CANNY 5 Nano, CAN-H и CAN-L, предназначены для подключения к цифровой информационной шине CAN. Особенностью драйвера CAN контроллера CANNY 5 Nano является то, что у него количество фильтров принимаемых сообщений CAN равно 8, против 16 у CANNY 7.
Драйвер I²C
Основная статья: CANNY 5 Nano. Драйвер I²C
Два из восемнадцати каналов ввода-вывода CANNY 5 Nano, а именно каналы №2 и №4, поддерживают работу в режиме приема/передачи данных, с использованием интерфейса I²C, и могут быть использованы для связи контроллеров с внешним оборудованием поддерживающим данный вид связи.
Контроллер CANNY 5 Nano может выступать только в качестве ведущего узла сети, при этом он имеет возможность как передавать данные ведомым устройствам, так и отправлять запросы на получение данных от них. Обмен данными между устройствами происходит отдельными сеансами, с максимальной длиной сообщения I²C внутри одного сеанса равной 32 байтам, т. е. открытие одновременно несколько сеансов с разными устройствами не допускается. Скорость обмена фиксированная и составляет 100 кбит/с. Общее число ведомых устройств на линии может достигать нескольких десятков.
Драйвер I²C в своей работе использует ресурсы каналов контроллера, но имеет более высокий приоритет чем драйвер дискретного ввода-вывода. Таким образом, при активации драйвера I²C, для задействованных в его работе каналов, изменение значений в связанных с ними регистрах драйвера дискретного ввода-вывода будет проигнорировано контроллером.
Каналы №№2 и 4 активируются совместно, одновременно с установкой конфигурации драйвера I²C контроллера, т. е. его активацией. Канал №2 используется в качестве линии данных (SDA), канал №4 — как тактирующий канал (SCL).
Примечание: Активация драйвера I²C автоматически переводит каналы №2 и №4 в режим передачи/приема данных, делая невозможным их использование в качестве дискретных входов или выходов драйвера ввода-вывода, т. к. драйвер I²C имеет более высокий приоритет.
Драйвер Dallas 1-Wire
Основная статья: CANNY 5 Nano. Драйвер Dallas 1-Wire
Контроллер CANNY 5 Nano может быть использован в качестве ведущего (MASTER) узла в однопроводной сети передачи данных Dallas 1-Wire, при этом он имеет возможность только отправлять запросы на получение данных от ведомых устройств.
Для подключения контроллера CANNY 5 Nano к шине 1-Wire может использоваться любой из его каналов ввода-вывода. При этом, данный канал должен быть снаружи подтянут к напряжению 5В резистором номиналом от 3 кОм до 7 кОм, либо необходимо использовать внутренний подтягивающий резистор, при его наличии у используемого канала (для каналов №№7,8,9,13,16,17).
В контроллерах CANNY 5 Nano предусмотрена возможность обращения к конкретному устройству на шине 1-Wire по его адресу, что позволяет организовать работу контроллера с несколькими ведомыми устройствами по одному каналу. Кроме того, используя несколько каналов контроллера, возможно последовательное подключение к нескольким шинам 1-Wire.
Драйвер Dallas 1-Wire в своей работе использует ресурсы каналов контроллера, но имеет более высокий приоритет чем драйвера ввода-вывода. Таким образом, при активации драйвера Dallas 1-Wire, для задействованных в его работе каналов, изменение значений в связанных с ними регистрах драйвера ввода-вывода будет проигнорировано контроллером.
Ведомое устройство должно иметь постоянное, а не паразитное питание.
Параметры пользовательской конфигурации
Основная статья: CANNY 5 Nano. Параметры пользовательской конфигурации
Параметры пользовательской конфигурации могут быть заданы конечным пользователем контроллера в момент загрузки в него программного обеспечения с использованием исполняемого файла автономной загрузки ПО в контроллер. После загрузки ПО и запуска контроллера в автономном режиме, установленные пользователем таким образом данные, становятся доступны функциональной диаграмме в соответствующих регистрах контроллера.
Грамотное использование пользовательских параметров существенно повышает гибкость и универсальность решений на базе контроллера, позволяя конечному пользователю, не имеющему навыков работы с CannyLab, вносить безопасные изменения в работу алгоритма контроллера используя простой пользовательский интерфейс.
Энергонезависимая память (ЭНП)
Основная статья: CANNY 5 Nano. Энергонезависимая память (ЭНП)
Для исключения потери критически важной информации (состояния контроллера, состояния внешних устройств и т. п.) при сбросе питания, в контроллере CANNY 5 Nano предусмотрено наличие энергонезависимой памяти. Сохраненные в ней значения будут доступны после восстановления питания контроллера в специальных регистрах.
Пользователю доступны 64 шестнадцатибитные ячейки энергонезависимой памяти, доступ к которым осуществляется с помощью соответствующих регистров чтения и записи.
Примечание: Работа с энергонезависимой памятью не требует какой-либо специальной предварительной конфигурации.
Драйвер пульта ИК ДУ
Основная статья: CANNY 5 Nano. Драйвер пульта ИК ДУ
Контроллер CANNY 5 Nano позволяет принимать и передавать команды инфракрасных пультов дистанционного управления (ИК ДУ) в широко распространенных форматах NEC и extended NEC. Работа драйвера возможна в трех режимах: только прием, только передача или прием/передача. Все каналы ввода-вывода CANNY 5 Nano, поддерживают работу в режиме передачи данных пультов ИК ДУ, но лишь 4 из них ( №№7, 8, 9, 13) могут быть использованы для приема ИК-сообщений, при этом тот или иной используемый драйвером канал контроллера, в каждый отдельный момент, может работать либо только на прием, либо только на передачу.
При передаче команд ИК ДУ, используемый для этого канал контроллера CANNY 5 Nano генерирует только модулирующий сигнал. Для формирования пакетов импульсов контроллеру требуется наличие несущей частоты, источником которой может выступать как один из каналов ВЧ ШИМ CANNY 5 Nano, так и внешний генератор ШИМ. Прием команд ИК ДУ требует наличия внешнего демодулятора, например TSOP1736 или аналогичного.
Драйвер ИК ДУ в своей работе использует ресурсы каналов контроллера, но имеет более высокий приоритет чем драйвер дискретного ввода-вывода. Таким образом, при активации драйвера ИК ДУ, для задействованных в его работе каналов, изменение значений в связанных с ними регистрах драйвера дискретного ввода-вывода будет проигнорировано контроллером.
Аналого-цифровой преобразователь (АЦП)
Основная статья: CANNY 5 Nano. Аналого-цифровой преобразователь (АЦП)
Восемь из восемнадцати каналов ввода-вывода CANNY 5 Nano, а именно каналы №№10, 11, 12, 13, 14, 15, 16, 17, могут быть использованы в качестве независимых друг от друга аналого-цифровых преобразователей. Кроме того, контроллер имеет отдельный АЦП встроенного термодиода.
Для активации драйвера АЦП на соответствующем канале необходимо передать значение, не равное «0», в соответствующий каналу «Регистр включения аналого-цифрового преобразователя канала №ХХ».
Примечание: Активация канала для работы в качестве аналого-цифрового преобразователя автоматически переводит данный канал в режим преобразования аналоговых сигналов, делая невозможным его использование в качестве дискретного входа или выхода драйвера ввода-вывода, т. к. драйвер АЦП имеет приоритет, при этом в регистрах входных и выходных значений данных каналов будут находиться результаты работы драйвера АЦП.
Доступные пользователю каналы АЦП имеют разрешение 12 бит.
Драйвер датчика DHT11 / DHT22 / AM2302
Основная статья: CANNY 5 Nano. Драйвер датчика DHT11-DHT22-AM2302
Контроллер CANNY 5 Nano может работать с датчиками относительной влажности и температуры DHT11 / DHT22 / AM2302, используя однопроводное подключение, при этом контроллер выступает в качестве ведущего устройства, генерируя запросы к датчику, а DHT11 / DHT22 / AM2302 - в качестве ведомого, передавая данные замеров влажности и температуры, отвечая на данные запросы.
Для подключения контроллера CANNY 5 Nano к DHT11 / DHT22 / AM2302 может использоваться любой из его каналов ввода-вывода, таким образом к контроллеру может быть одновременно подключено до 18 таких датчиков - по одному датчику на каждый канал контроллера, однако драйвер может единовременно работать только с одним датчиком, т.е. при работе с несколькими датчиками DHT11 / DHT22 / AM2302 необходимо организовывать их последовательный опрос.