Найти в Дзене
МНПП Сатурн

#2 BLE 5.4 на чипе PHY6252

Это перевод официальной документации с китайского. Семейство микроконтроллеров PHY62XX поддерживает два режима работы: режим записи Flash и режим отладки Flash running. Далее мы будем называть их режимом записи и режимом отладки под управлением из Keil: Рассмотрим, как это работает, на примере платы разработки PHY6200_32_V1.4_20180314, которая выглядит следующим образом: Инструменты, которые обычно используются в процессе разработки и отладки 1. TP_Pin8: Этот вывод служит для настройки рабочего режима системы, выбора режима записи или активации режима отладки. (для PHY6252 такой ножки нет) 2. UART и питание: Последовательный порт UART и источник питания обеспечивают отладку и питание системы. С помощью UART можно записывать код и выводить логи, что значительно упрощает процесс отладки. 3. Перезагрузка: Кнопка перезагрузки служит для сброса системы. 4. JTAG: Этот интерфейс позволяет отлаживать исходный код в пошаговом режиме и точкам останова. (для PHY6252 это режим SWD) TP - представ
Оглавление

Это перевод официальной документации с китайского.

Семейство микроконтроллеров PHY62XX поддерживает два режима работы: режим записи Flash и режим отладки Flash running. Далее мы будем называть их режимом записи и режимом отладки под управлением из Keil:

Рассмотрим, как это работает, на примере платы разработки PHY6200_32_V1.4_20180314, которая выглядит следующим образом:

PHY6200_32_V1.4_20180314
PHY6200_32_V1.4_20180314

Инструменты, которые обычно используются в процессе разработки и отладки

1. TP_Pin8: Этот вывод служит для настройки рабочего режима системы, выбора режима записи или активации режима отладки. (для PHY6252 такой ножки нет)

2. UART и питание: Последовательный порт UART и источник питания обеспечивают отладку и питание системы. С помощью UART можно записывать код и выводить логи, что значительно упрощает процесс отладки.

3. Перезагрузка: Кнопка перезагрузки служит для сброса системы.

4. JTAG: Этот интерфейс позволяет отлаживать исходный код в пошаговом режиме и точкам останова. (для PHY6252 это режим SWD)

Режимы работы

TP - представляет собой физический вывод на чипе, который служит для выбора режима работы контроллера.

Если подключить вывод TP к источнику питания, чип перейдёт в режим записи. Вы можете использовать утилиту PhyPlusKit.exe для стирания и записи Flash-файла через последовательный порт UART.

Если подключить вывод TP к «земле», чип можно запустить в режиме отладки. В этом режиме вы можете выполнять код на полной скорости или отлаживать его шаг за шагом. Для этого потребуется программа Keil uVision

Режим прошивки

Процесс записи во флэш-память включает в себя несколько шагов:

1. Подключите вывод TP к источнику питания, чтобы активировать режим записи.

2. В PhyPlusKit выберите соответствующий последовательный порт и установите скорость передачи данных 115200 бод.

3. Нажмите кнопку "Erase — стереть". В случае неудачи можете перезагрузить систему кнопкой "RESET - Сброс".

4. Загрузите записываемый .hex или .img - файл и нажмите кнопку "Write — записать".

Окно программы PhyPlusKit.exe
Окно программы PhyPlusKit.exe

Запуск режима отладки

Чтобы активировать режим отладки, необходимо подключить вывод TP к «земле», затем сбросить или снова включить питание и перевести систему в режим работы и отладки. Если JTAG не подключен, система будет функционировать на полной скорости после сброса настроек или повторного включения питания.

Если вы запустите программу Keil и подключите отладчик JTAG, то сможете выполнять отладку в пошаговом режиме.

При отладке программного обеспечения существуют определённые требования к исходному коду:

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

2. Если же код переходит в спящий режим, то отладка становится невозможной, поскольку JTAG отключается после перехода в этот режим. В этом случае рекомендуется удалить содержимое флэш-памяти, чтобы очистить её в режиме записи. В этот период, перед тем как система перейдёт в спящий режим, вы сможете выполнить отладку.

3. В элементе конфигурации проекта можно установить CFG_SLEEP_MODE в значение PWR_MODE_SLEEP или PWR_MODE_NO_SLEEP, чтобы разрешить или запретить системе переходить в спящий режим.

Рассмотрим отладку на примере Jlink. Чтобы начать, подключите Jlink к панели разработки.

Keil - Окно выбора типа отладчака (выбран J-LINK)
Keil - Окно выбора типа отладчака (выбран J-LINK)
Окно настроек отладчика J-LINK.
Окно настроек отладчика J-LINK.

Настраиваем отладку, как на картинке выше.

В окне загрузки FLASH обязательно выбираем  "Do not Erase"- не стирать
В окне загрузки FLASH обязательно выбираем "Do not Erase"- не стирать

В окне сохранения FLASH необходимо выбрать опцию «Do not Erase», чтобы не потерять данные.

Таким образом, сделано не удобно, но выбирать не приходится вот краткая последовательность действий.

1. Программу делаем в среде разработке Кейл, после компиляции получаем образ пришивки в файле .hex

2 Запускаем программу PhyPlusKit и зашиваем контроллер.

3. Возвращаемся в Keil. Отладка будет проходить по загруженному коду через порт JTAG. Обратите внимание: в контроллере PHY6252 отсутствует порт JTAG, поэтому для него все действия будут аналогичными, но с использованием порта SWD.

Как оказалось, на контроллере PHY6252 отсутствует вывод TM, и переход в режим программирования осуществляется другим способом. Узнать об этом удалось только благодаря форуму на сайте Ai-thinker.

How to develop program for PB-03 series and burn the firmware? - PB&TG系列 - 物联网开发者社区-安信可论坛 - Powered by Discuz!

Про это в следующей статье