🏠 Главная → База знаний → ST-LINK
Программатор ST-LINK (v2 или v3)
20-пиновый кабель
Устройство ROSSMA IIOT-AMS
ПК с установленным STM32 ST-LINK Utility
Требования к компьютеру:
Windows 7 SP1 / 10 / 11 (32-bit или 64-bit)
512 MB оперативной памяти (рекомендуется 2 GB)
100 MB свободного места на диске
USB 2.0 порт (USB 3.0 поддерживается)
STM32 ST-LINK Utility (версия 4.6.0 или выше)
Обратите внимание: STM32 ST-LINK Utility устарела. STMicroelectronics рекомендует использовать STM32CubeProgrammer для новых проектов. Однако ST-LINK Utility по-прежнему работает корректно для прошивки устройств ROSSMA.
Альтернатива: STM32CubeProgrammer (v2.0+)
При первом подключении ST-LINK программатора Windows автоматически установит драйверы. Если автоматическая установка не произошла:
Скачайте драйверы: STSW-LINK009
Распакуйте архив
Запустите dpinst_amd64.exe (для 64-bit) или dpinst_x86.exe (для 32-bit)
Следуйте инструкциям установщика
Подключите ST-LINK программатор к компьютеру через USB
Подключите 20-пиновый кабель к программатору
Убедитесь в правильной ориентации: нумерация на стороне программатора (смотреть сверху)
Рис. Правильное подключение 20-пинового кабеля к программатору ST-LINK
Внимание! Неправильное подключение может привести к повреждению устройства.
Снимите крышку коммутатора ROSSMA
Найдите разъем для программирования на материнской плате
Подключите 20-пиновый кабель к разъему программирования
Убедитесь в надежности соединения
Запустите программу STM32 ST-LINK Utility на компьютере
В меню выберите Target → Connect
Убедитесь, что программа успешно подключилась к устройству
В случае ошибки подключения - проверьте кабель и питание устройства
Рис. Главное окно STM32 ST-LINK Utility после успешного подключения
В меню выберите File → Open file...
Выберите файл прошивки (.hex или .bin) для вашего устройства
Проверьте, что выбран правильный файл прошивки для вашей модели коммутатора
КРИТИЧНО! Использование неправильного файла прошивки может привести к неработоспособности устройства.
Совет: Перед прошивкой рекомендуется проверить контрольную сумму файла, чтобы убедиться в его целостности и отсутствии повреждений при загрузке.
После открытия файла посмотрите на строку состояния в нижней части окна
Проверьте размер файла - он должен соответствовать размеру из документации
Адрес начала (Start Address) должен быть 0x08000000
Откройте командную строку Windows и выполните:
certutil -hashfile путь\к\файлу\firmware.hex SHA256
Пример:
certutil -hashfile C:\Downloads\ROSSMA_v1.5.2.hex SHA256
Программа выведет хеш-сумму файла. Сравните результат с контрольной суммой из файла README или с данными, предоставленными техподдержкой ROSSMA.
Если контрольные суммы не совпадают - файл был поврежден при загрузке. Скачайте файл прошивки заново!
В меню выберите Target → Program & Verify...
В открывшемся окне проверьте параметры:
Путь к файлу прошивки
Start address (обычно 0x08000000)
Опции: Verify after programming (рекомендуется)
Нажмите кнопку Start
Дождитесь окончания процесса прошивки
Рис. 1. Диалоговое окно Program & Verify с параметрами прошивки
Рис. 2. Процесс прошивки и верификации устройства
После успешной прошивки программа выдаст сообщение об успешной верификации
В меню выберите Target → Disconnect
Отключите программатор от устройства
Установите крышку коммутатора обратно
Подайте питание на устройство
Проверьте работоспособность устройства
Успешная прошивка! После верификации устройство готово к работе. Проверьте индикацию светодиодов после включения питания.
Симптомы:
Программатор не определяется в диспетчере устройств
ST-LINK Utility не видит программатор
Светодиод на программаторе не горит
Решения:
Проверьте USB-кабель и порт
Попробуйте другой USB-порт (желательно напрямую на материнской плате, не через хаб)
Попробуйте другой USB-кабель
USB 2.0 порты предпочтительнее (меньше проблем с совместимостью)
Переустановите драйверы ST-LINK
Откройте Диспетчер устройств (Win+X → Диспетчер устройств)
Найдите неопределенное устройство или "STMicroelectronics STLink"
ПКМ → Удалить устройство
Отключите и подключите программатор заново
Драйверы установятся автоматически
Обновите прошивку ST-LINK программатора
Скачайте STSW-LINK007
Запустите STLinkUpgrade.exe
Нажмите "Device Connect"
Нажмите "Upgrade" если доступна новая версия
Совет: Если программатор по-прежнему не определяется, попробуйте на другом компьютере, чтобы исключить аппаратную неисправность программатора.
Симптомы:
ST-LINK Utility выдает ошибку при попытке подключения
"Can not connect to target"
Ошибка 0x8001 или аналогичная
Решения:
Проверьте подключение кабеля к устройству
Убедитесь, что 20-пиновый кабель правильно ориентирован
Проверьте надежность соединения (кабель должен быть плотно вставлен)
Проверьте кабель на наличие повреждений
Проверьте питание устройства
Устройство должно быть запитано (батарея подключена)
Напряжение батареи должно быть не менее 3.0В
Проверьте светодиодную индикацию на устройстве
Попробуйте режим подключения под сбросом (Connect Under Reset)
В ST-LINK Utility: Settings → Reset Mode → "Connect Under Reset"
Это помогает, если устройство находится в режиме низкого энергопотребления
Проверьте настройки подключения
Target → Settings
Mode: "Normal"
Reset Mode: "Software system reset"
Frequency: 4000 kHz (или меньше, если есть проблемы)
Код
Проблема
Что делать
0x8001
Не удается подключиться к целевому устройству
• Проверьте кабель и его ориентацию • Проверьте питание устройства • Попробуйте Connect Under Reset
0x8002
Целевое устройство заблокировано (protection)
• Выполните Mass Erase через меню Target • ВНИМАНИЕ: Удалит все данные!
0x8003
Целевое устройство занято
• Отключите другие программы, работающие с ST-LINK • Перезапустите ST-LINK Utility
0x8004
SWIM-ошибка подключения
• Не применимо к STM32, используется для STM8
0x8005
Нет ответа от целевого устройства
• Проверьте, что устройство включено • Уменьшите частоту подключения до 950 kHz
0x8007
Ошибка верификации после программирования
• Повторите прошивку • Проверьте файл прошивки (контрольная сумма) • Выполните Full Chip Erase перед прошивкой
0x8009
Невозможно остановить ядро
• Нажмите кнопку RESET на устройстве • Используйте Hardware Reset вместо Software
Если ошибка не указана в таблице , сделайте скриншот и обратитесь в техподдержку ROSSMA с полным текстом ошибки.
Симптомы:
Процесс прошивки начинается, но прерывается с ошибкой
"Programming error"
Верификация не проходит
Решения:
Проверьте целостность файла прошивки
Используйте проверку контрольной суммы (см. Шаг 4.5)
Скачайте файл прошивки заново с официального источника
Выполните Full Chip Erase
Target → Erase Chip
Подождите завершения операции
Повторите прошивку
ВНИМАНИЕ! Full Chip Erase удалит всю информацию из памяти устройства, включая калибровочные данные (если они хранятся в основной памяти). Для устройств ROSSMA это безопасно, так как калибровка хранится отдельно.
Убедитесь, что используется правильный файл
Проверьте модель устройства
Проверьте версию прошивки (она должна быть совместима)
Снизьте скорость программирования
Settings → Frequency → установите 950 kHz вместо 4000 kHz
Медленнее, но надежнее
Ситуация: Во время прошивки пропало питание, отключился кабель, или программа зависла.
НЕ ПАНИКУЙТЕ! Устройство можно восстановить. Микроконтроллер STM32 защищен от "окирпичивания" (bricking).
Шаги восстановления:
НЕ отключайте программатор и НЕ отключайте питание
Если ST-LINK Utility зависла:
Откройте Диспетчер задач (Ctrl+Shift+Esc)
Завершите процесс STLinkUtility.exe
Запустите программу заново
Выполните полное стирание памяти:
Target → Connect (если не подключается, используйте Connect Under Reset)
Target → Erase Chip
Дождитесь сообщения "Erase memory successfully"
Прошейте устройство заново:
File → Open file (выберите правильный файл прошивки)
Target → Program & Verify
Обязательно включите опцию "Verify after programming"
Start
Проверьте результат:
Верификация должна пройти успешно (100%)
После отключения программатора устройство должно заработать
Если восстановление не удалось после 2-3 попыток - обратитесь в техническую поддержку ROSSMA. Возможно потребуется специальное восстановление через SWD-отладчик.
Симптомы:
Прошивка прошла успешно, верификация OK
Но устройство не включается или не работает корректно
Светодиоды не мигают или мигают не так, как должны
Решения:
Проверьте версию прошивки
Убедитесь, что файл прошивки предназначен именно для вашей модели устройства
ROSSMA IIOT-AMS Analog ≠ ROSSMA IIOT-AMS ESD (разные прошивки!)
Проверьте напряжение питания
Напряжение должно быть 3.6V ± 0.3V
Если батарея разряжена (< 3.0V), замените её
Проверьте индикацию после прошивки
Нормальная индикация:
Светодиод ACT : мигает с интервалом передачи (например, раз в 15 минут)
Светодиод LoRa : кратковременно загорается при передаче данных
Индикация ошибок:
Ошибка : мигает раз в секунду → модуль связи не найден
3 раза - пауза - 3 раза : не может зарегистрироваться в сети
5 раз - пауза - 5 раз : ошибка отправки данных на сервер
Выполните сброс настроек (если доступно)
Некоторые модели имеют кнопку RESET
Нажмите и удерживайте 3-5 секунд
Прошейте устройство повторно
Выполните Full Chip Erase
Прошейте заново с верификацией
Убедитесь, что используется правильный файл
Проверьте конфигурацию устройства
Возможно, требуется настройка через Конфигуратор ROSSMA
Проверьте DevEUI, AppEUI, AppKey для LoRaWAN
Если устройство по-прежнему не работает , свяжитесь с технической поддержкой ROSSMA с указанием:
Модель устройства (точное наименование)
Версия прошивки (имя файла)
Серийный номер устройства
Описание проблемы и индикации светодиодов
Актуальные файлы прошивки для устройств ROSSMA IIOT-AMS доступны:
При возникновении проблем с прошивкой обращайтесь:
Дополнительная информация: