Заставить клон работать не всегда просто
В предыдущей части мы говорили о том, что по описанию на странице товара отличить клоны невозможно.
Но объединяет их одна рекомендация от продавцов: использовать для загрузки утилиту STM32 ST-LINK Utility и предварительно скомпилированный код. Причина этой рекомендации выясняется на практике. После компиляции и при попытке загрузки через STM32CubeIDE мы увидим следующее:
Даже больше! После распаковки некоторые из BluePill даже через STM32 ST-LINK Utility не прошиваются, выдавая странные ошибки. Хотя это решается достаточно просто. Нужно через утилиту STM32 ST-LINK Utility очистить ПЗУ командой Target->Erase Chip (или сочетанием клавиш CTRL+E). Если вдруг не сработало, то CTRL+B, в появившемся окне выбрать Read Out Protection выбрать Disabled и Apply. Теперь мы можем загружать прошивку через STM32 ST-LINK Utility!
Различие видимо заключается в том, что некоторые экземпляры уже прошивали для теста кодом типа Blink для проверки работоспособности, а некоторым требуется некий ритуал для инициализации после завода. Хотя это могут быть и демонтированные образцы, на которых осталась записана предыдущая прошивка какого-либо устройства с защитой от чтения.
Анатомия красных и белых
Взглянем на чипы.
Первые два слева - копии. Одного из них сильно выдает грубая шлифовка (лазером?), которая хорошо видна под микроскопом.
Другой же кажется маркировали сразу как STM32.
А у STM32 Orig очень интересный зеркальный ключ.
Это то, что касается визуальной части, но ошибки при прошивке же не из-за маркировки на корпусе! Ошибка верификации вызвана отличающимися от оригинала идентификаторами чипа в ПЗУ. А именно device id и id core.
В запасах уже более пяти лет лежала "Оригинальная" STM32F103C8T6. Почему в кавычках? Так потому, что бралась на той же площадке, но еще до бума клонов. Да и цена была в разы выше, чем на клоны. Потому должен быть оригинал, но сомнения все же есть. Хотя в отличии от тех, что пришли на платах BluePill "Оригинальная" без проблем прошивается и отлаживается в STM32CubeIDE. Для участия в сравнении ей был заменен чип на плате типа "с красной кнопкой".
Клоны отличаются от оригинала id core, а также размером ПЗУ (данные из STM32 ST-LINK Utility). Также отличается device id, он считывался из ПЗУ по адресу 0xE0042000.
В следующей части мы попытаемся запустить отладку и сделаем выводы по результатам.
—————————————————————————
Спасибо, что дочитали статью!
Подпишитесь пожалуйста на мой канал "Заметки Электроника | Alexander.Chad", этим Вы очень сильно поможете мне. Канал существует только за счет наличия и участия подписчиков.
Если Вам понравился материал - поддержите его лайком или даже донатом (ЮMoney). Есть что сказать? Оставьте комментарий! Это тоже будет помощью.
Сейчас канал нуждается в Вас как никогда прежде!