Оглавление:

Как загрузить код MicroPython на XBee 3:18 шагов (с изображениями)
Как загрузить код MicroPython на XBee 3:18 шагов (с изображениями)

Видео: Как загрузить код MicroPython на XBee 3:18 шагов (с изображениями)

Видео: Как загрузить код MicroPython на XBee 3:18 шагов (с изображениями)
Видео: Установка MicroPython для XBee с использованием XCTU 2024, Июль
Anonim
Как загрузить код MicroPython на XBee 3
Как загрузить код MicroPython на XBee 3

MicroPython - это язык программирования, вдохновленный Python 3.0, который работает на микроконтроллерах, таких как XBee 3. MicroPython может помочь уменьшить количество материалов и общую громоздкость вашего проекта, а также значительно упростить задачу. Однако я обнаружил, что когда я использовал MicroPython, процесс загрузки и загрузки кода на устройство был запутанным. Цель данного руководства - объяснить «простой» процесс загрузки кода на ваш XBee и обратно.

Если вы еще этого не сделали, ознакомьтесь с Руководством по программированию Digi MicroPython. Это полезно для получения широких знаний о том, как MicroPython работает на XBee, а также для устранения неполадок.

Это руководство не предполагает, что вы знакомы с XCTU, но если вы знакомы, вы можете прочитать заголовки каждого раздела, чтобы узнать о более простых шагах по установке и удалению кода MicroPython. Он предполагает, что вы уже написали свой код и сохранили его как файл.py или.mpy.

XBee, который я использую, использует протокол 802.15.4, поэтому любые различия, с которыми вы столкнетесь между учебным пособием и вашей собственной версией XCTU, могут быть связаны с этим.

Некоторые общие правила, которые необходимо соблюдать при использовании MicroPython на XBee:

- Поддерживайте скорость 115200 бод или выше. Это помогает предотвратить потерю данных.

- Сделайте так, чтобы ваш код быстро проходил через входящие пакеты. При использовании MicroPython XBee может удерживать очередь только из 4 пакетов данных - как только очередь заполнена, он выбрасывает новые входящие данные.

- Убедитесь, что ваш XBee - XBee3. MicroPython не работает ни с одной другой моделью XBee.

Запасы

  • XBee3 (сколько угодно)
  • XBee Explorer или аналогичный ключ, который позволяет подключить XBee к компьютеру.
  • Компьютер с установленным на нем XCTU
  • Файл.py или.mpy, содержащий код, который вы хотите установить на XBee.

Шаг 1. Подключите XBee

Подключите свой XBee
Подключите свой XBee

Подключите XBee, который хотите запрограммировать, и откройте XCTU. Нажмите «Добавить устройства» (значок, который выглядит как XBee со знаком «+») в верхнем левом углу и выберите правильный COM-порт. Убедитесь, что скорость передачи данных правильная (мы оставили для XBee значение 9600), затем нажмите «Готово», чтобы подключить XBee.

XCTU долго загружает много вещей. Когда вы видите зеленую полосу загрузки, которую вы будете часто видеть, просто наберитесь терпения.

Шаг 2. Убедитесь, что PS установлен на 0, а AP установлен на 4

Убедитесь, что PS установлен на 0, а AP установлен на 4
Убедитесь, что PS установлен на 0, а AP установлен на 4

Щелкните значок XBee в левой части экрана, чтобы отобразить его настройки справа. В правой части экрана прокрутите вниз до раздела «Команды MicroPython» и убедитесь, что для PS установлено значение Disabled [0]. Если это не так, измените настройку и нажмите значок карандаша рядом с настройкой справа, чтобы записать изменение в XBee. Сделайте то же самое в разделе «Интерфейс UART» для параметра AP и убедитесь, что он установлен на MicroPython REPL [4].

Параметр PS определяет, запускается ли код автоматически при включении XBee, а параметр AP - это в основном «рабочий режим», в котором находится XBee. Чтобы заставить MicroPython работать, он должен быть в собственном «режиме MicroPython». " Если для PS установлено значение Enabled [1], это может вызвать проблемы с некоторыми из этих шагов, поэтому я считаю, что лучше выключить его, пока я не завершу обновление кода на XBee.

Шаг 3. Откройте диспетчер файловой системы

Откройте диспетчер файловой системы
Откройте диспетчер файловой системы

Перейдите в раздел «Инструменты» на панели вверху экрана и выберите Диспетчер файловой системы. Он открывает окно, похожее на показанное выше - файлы на вашем компьютере показаны слева, а пустое окно показано справа.

Шаг 4: Настройте правильный COM-порт

Настройте правильный COM-порт
Настройте правильный COM-порт

Нажмите "Настроить". Выберите правильный COM-порт, убедитесь, что скорость передачи правильная, и нажмите OK. Вы должны увидеть имя выбранного COM-порта в том месте, где ранее было сказано: «Настройте порт перед работой с файловой системой».

Шаг 5: Откройте соединение с XBee

Откройте соединение с XBee
Откройте соединение с XBee

Нажмите "Открыть". Если вы получаете сообщение об ошибке, обычно срабатывает отключение и повторное подключение XBee, а затем нажатие кнопки «Открыть». Теперь вы должны увидеть файлы, загруженные в XBee, в правой части окна. Если ваш XBee совершенно новый, вы, вероятно, увидите только две папки, но если ваш XBee использовался раньше, вы можете увидеть другие файлы в каталоге (у меня есть один под названием «main.py»).

Шаг 6: удалите старый код в диспетчере файловой системы

Если на вашем XBee нет старого кода, вы можете пропустить этот шаг.

Если вы обновляете старый файл кода на XBee, вы должны сначала удалить старый. XBee не удаляет старые версии кода автоматически, и у него очень ограниченное хранилище, поэтому вам придется вручную удалять старые файлы кода.

Код MicroPython на XBee должен находиться в файле с именем «main.py», чтобы XBee автоматически запускал код. У вас может быть несколько файлов, загруженных в XBee, но единственный, который он будет запускать при запуске, - это «main.py», поэтому вы можете использовать несколько модулей, если импортируете их в «main.py.» Если вы используете несколько модулей, вам нужно удалить только тот, который вы повторно загружаете в XBee.

Сначала щелкните правой кнопкой мыши файл, который хотите удалить, и выберите «Удалить». Через несколько секунд он исчезнет из диспетчера файловой системы. Теперь файл удален из основного хранилища XBee. Однако XBee также имеет рабочую память, в которой хранится последний код, который он запускал, и его тоже нужно стереть. Нажмите «Закрыть» в правом нижнем углу, чтобы выйти из диспетчера файловой системы.

Шаг 7. Измените AP на 1

Измените AP на 1
Измените AP на 1

В настройках XBee в правой части экрана прокрутите до раздела с надписью «Интерфейс UART». Измените параметр AP на API Mode Without Escapes [1] и щелкните значок карандаша, чтобы записать его в XBee. Это позволяет нам отправлять AT-команды на XBee, которые нам нужно будет сделать, чтобы стереть рабочую память XBee. Если вы используете свой XBee из new, вам, вероятно, не нужно делать этот шаг при первой загрузке кода на него, но это не повредит подтверждению того, что рабочая память стерта.

Шаг 8: переключитесь в рабочий режим консоли и откройте соединение

Переключитесь в рабочий режим консоли, нажав Alt-C или нажав кнопку в правом верхнем углу, которая выглядит как телеэкран, и нажмите Open, чтобы открыть линию связи с вашим XBee. Мы используем этот режим, чтобы общаться с нашими XBee.

Шаг 9: Откройте генератор кадров

Откройте генератор кадров
Откройте генератор кадров

В правой части экрана, под надписью «Отправить один пакет», щелкните значок +, а затем щелкните «Создать фрейм» с помощью инструмента «Генератор фреймов» во всплывающем окне. Это открывает генератор кадров, показанный выше. Мы используем это для генерации сообщения, которое мы отправим в XBee.

Шаг 10: Настройте генератор кадров для генерации AT-команды

Настройте генератор кадров для генерации AT-команды
Настройте генератор кадров для генерации AT-команды

Там, где написано Тип кадра, щелкните поле, чтобы открыть раскрывающееся меню, и выберите 0x08 - AT Command. Экран изменится на формат, показанный выше.

Шаг 11: введите AT-команду, чтобы стереть рабочую память

Введите AT-команду, чтобы стереть рабочую память
Введите AT-команду, чтобы стереть рабочую память

В выделенном красным поле с надписью AT command введите PY. Это первая часть AT-команды, которая, по сути, сообщает XBee, что мы хотим что-то сделать с MicroPython. В поле с надписью Parameter value введите E. Это конкретная команда MicroPython, которую мы хотим, чтобы XBee выполнял, которая стирает рабочую память XBee (я пытаюсь вспомнить «E для стирания»). По мере ввода числа будут появляться в поле внизу экрана.

Шаг 12: добавьте рамку

Добавить рамку
Добавить рамку

Нажмите ОК. Теперь вы снова находитесь в окне, в котором были до того, как вошли в генератор кадров. Название фрейма не имеет особого значения для наших целей, поэтому игнорируйте его. Вы должны увидеть числа из последнего окна в поле этого окна. Если да, выберите Добавить рамку.

Шаг 13: отправьте AT-команду

Отправить AT-команду
Отправить AT-команду

Новый кадр «frame_0» появится в поле «Отправить кадры». Теперь мы можем отправить AT-команду XBee. Убедитесь, что только что созданный кадр выделен, а затем нажмите кнопку с зеленой стрелкой с надписью «Отправить выбранный кадр». Синий и красный текст появятся в журнале кадров выше.

Шаг 14: интерпретируйте ответ

Интерпретировать ответ
Интерпретировать ответ

Синий текст - это команда, которую вы только что отправили, а красный текст - это ответ XBee. Щелкните красный текст, чтобы прочитать его. Вы можете увидеть шестнадцатеричную строку, аналогичную той, которую мы отправили в XBee, в правом окне. Вы можете скопировать и вставить это в инструмент Frames Interpreter (доступ к которому можно получить, щелкнув стрелку рядом со значком инструмента выше), но если вторая и последняя пара цифр - это двойной ноль, это означает, что ему удалось стереть рабочую память.

Шаг 15: измените AP на 4

Нажмите «Закрыть» в верхнем левом углу, чтобы выйти из связи с XBee.

Щелкните значок шестеренки, чтобы вернуться к настройкам XBee, прокрутите вниз до интерфейса UART и измените параметр AP на MicroPython REPL [4]. Запишите новую настройку в XBee, щелкнув значок карандаша.

Шаг 16. Перетащите код в диспетчер файловой системы

Перетащите свой код в диспетчер файловой системы
Перетащите свой код в диспетчер файловой системы

Вернитесь в Инструменты> Диспетчер файловой системы, настройте правильный порт и нажмите «Открыть». В левой части окна (файлы вашего компьютера) перейдите к коду, который вы хотите загрузить в XBee, нажмите и перетащите его в правую часть (файлы XBee). Вы должны увидеть файл справа. Теперь новый код загружен в XBee.

Шаг 17: откройте терминал MicroPython

Откройте терминал MicroPython
Откройте терминал MicroPython

Нажмите "Закрыть". Пора убедиться, что код работает. Перейдите в Инструменты> Терминал MicroPython. Выберите «Настроить», выберите правильный COM-порт и нажмите «Открыть». В окне должен быть черный мигающий курсор. Нажмите Enter, и вы увидите приглашение MicroPython: >>>

Шаг 18: проверьте свой код

Нажмите Ctrl-R, и код из файла «main.py» запустится. Если все работает правильно, все готово! Если вы хотите, чтобы код запускался автоматически при включении XBee, закройте терминал MicroPython и в настройках XBee прокрутите вниз до MicroPython Commands, измените параметр PS на Enabled [1] и нажмите значок карандаша, чтобы написать это к XBee.

Рекомендуемые: