Перейти к основному содержимому

Быстрый старт с использованием SDK

iRidium SDK представляет собой реализацию децентрализованной части протокола в виде набора исходных файлов. Реализация выполнена в виде класса, который содержит собственные методы для реализации работы протокола и методы обратного вызова, которые реализуют особенности работы устройства.

Как начать работу?

  1. Подготовка аппаратной части (по минимуму) потребуется:
    • Два микроконтроллера stm32f103c8t6 (первый в качестве преобразователя из Serial в CAN, а второй как тестовое устройство).
    • Два CAN трансивера (например: SN65HVD230D маркируется как VP230)
    • USB-TTL преобразователь.
  2. Настройка инструментов разработки.
    • Скачать и установить среду разработки Keil для ARM с официального сайта https://www.keil.com. В этой среде будет производится компиляция проекта.
    • Скачать и установить STM32CubeMX с официального сайта https://www.st.com/en/development-tools/stm32cubemx.html. С помощью данного инструмента будет производиться настройка проекта.
  3. Скачать iRidium SDK с github по ссылке https://github.com/iRidiumMobileLTD/BUS-77.
  4. Изготовление шлюза для программирования шины.
    • Собрать схему шлюза.
    • Открыть и скомпилировать программу шлюза, файл проект находится Example\STM32\STM32F103C8T6\GateUARTtoCAN\MDK-ARM\GateUARTtoCAN.uvprojx
  5. Изготовление конечного устройства.
    • Собрать схему конечного устройства.
    • Сборка проекта и загрузка проекта на микроконтроллер.
      • a) С использованием шаблона:
        1. Для этого надо открыть и скомпилировать загрузчик, файл проекта находится Example\STM32\STM32F103C8T6\Template\Bootloader\MDK-ARM\Bootloader.uvprojx
        2. С помощью Keil загрузить загрузчик на микроконтроллер.
        3. Для этого надо открыть и скомпилировать прошивку, файл проекта находится Example\STM32\STM32F103C8T6\Template\Firmware\MDK-ARM\Firmware.uvprojx
        4. С помощью утилиты config.exe (находится в директории Utility) загрузить созданную прошивку на микроконтроллер.
      • b) Без использования шаблона.
        1. Создать класс-наследник от класса CIridiumBusProtocol, который будет реализовывать функционал вашего устройства.
        2. В конструкторе вашего класса нужно:
          • Инициализировать входящий буфер для приема пакетов протокола.
          • Инициализировать исходящий буфер для отправки пакетов протокола.
        3. Реализовать обработчики системных методов:
          • Обработчик получения информации об устройстве при получении поискового запроса.
          • Обработчик изменения локального идентификатора.
          • Получение информации об устройстве.
        4. Реализовать обработчики работы с глобальными переменными:
          • Обработчик установки значения глобальной переменной.
          • Обработчик получения значения глобальной переменной.
        5. Реализовать обработчики для работы с каналами обратной связи.
          • Обработчик получения количества каналов обратной связи.
          • Обработчик преобразования идентификатора канала обратной связи в индекс канала обратной связи.
          • Обработчик получения данных канала обратной связи.
          • Обработчик получения расширенного описания канала обратной связи.
          • Обработчик связывания глобальной переменной с каналом обратной связи.
          • Установка значения канала обратной связи.
        6. Реализовать обработчики для работы с каналами управления.
          • Обработчик получения количества каналов управления.
          • Обработчик преобразования идентификатора канала управления в индекс канала управления.
          • Обработчик получения данных канала управления.
          • Обработчик получения расширенного описания канала управления.
          • Обработчик связывания списка глобальных переменных с каналом управления.
          • Установка значения канала управления.
        7. Реализовать работу с потоками (Потоки используются для перепрошивки устройств)
          • Обработчик открытия потока.
          • Обработчик подтверждения открытия потока.
          • Обработчик отправки блока.
          • Обработчик подтверждения получения блока.
          • Обработчик закрытия потока.
        8. Реализовать обработчик Smart API
        9. После компиляции с помощью среды разработки keil загрузить созданную прошивку на микроконтроллер.