STM8S105K6: назначение выводов, ADC и оценка платы датчиков

Содержание

Проверьте микроконтроллер и корпус

STM8S105K6 — это работающий на частоте 16 MHz 8-разрядный микроконтроллер STM8 с 32 KB программной памяти Flash, 2 KB RAM и 1024 байтами EEPROM для данных. Его периферия включает ADC1, UART2, SPI, I²C и таймеры. Эти возможности подходят для платы датчиков, но сами по себе не определяют, как конкретная плата выполняет выборку, калибровку или передачу результатов измерений.

Прежде чем определять контрольные точки, запишите полную маркировку микроконтроллера, тип корпуса и ревизию платы. В документе ST STM8S105x4/6 datasheet, таблицы 1 и 5 приведены различия между вариантами корпусов. В столбцах LQFP32 и UFQFPN32 указаны одинаковые номера выводов, используемые ниже; у более старого корпуса SDIP32 назначение выводов отличается. Перед трассировкой любой цепи проверьте ориентацию корпуса и метку вывода 1.

Определите цепи сброса, SWIM и связи

Для LQFP32/UFQFPN32 сигнал NRST находится на выводе 1, PD1/SWIM — на выводе 26, PD5/UART2_TX — на выводе 30, а PD6/UART2_RX — на выводе 31. PC1 соответствует выводу 18, а PC7/SPI_MISO — выводу 24. Номера битов порта идут от 0 до 7; PC8–PC11 не являются допустимыми обозначениями битов портов STM8. Пользуйтесь таблицей производителя, а не копируйте распиновку разъёма или список выводов другого микроконтроллера.

Проследите фактические соединения платы и проверьте, используется ли вывод как GPIO или выполняет альтернативную функцию. Перед подключением совместимого программатора сверьте землю, опорное напряжение питания целевого устройства, SWIM и цепь сброса с документацией программатора. Наличие соединений UART указывает на возможный канал связи; оно не доказывает наличие протокола обновления прошивки или доступного загрузчика.

Проследите цепь сигнала от датчика к ADC

Микроконтроллер K6 имеет семь входов своего 10-разрядного ADC1. Для каждого входа датчика запишите вывод корпуса, канал ADC, схему обработки сигнала и соответствующие условия питания. Включите в карту цепей делители, усилители, фильтры и защитные компоненты: напряжение на выводе микроконтроллера может существенно отличаться от измеряемой физической величины.

Перед выбором тестового сигнала проверьте в документации допустимые параметры входа, требования к выходному сопротивлению источника и времени выборки. Для AIN12 на PF4 действует особое ограничение: этот вход нельзя выбрать в режиме сканирования ADC или при использовании аналогового сторожевого устройства. Не предполагайте, что все доступные аналоговые входы поддерживают одинаковые режимы работы. Записывайте исходные коды ADC вместе с известным входным сигналом, конфигурацией канала и условиями выборки, не выдавая непроверенную формулу преобразования за восстановленный алгоритм.

Разделяйте программный код и калибровочные данные

Программная память Flash объёмом 32 KB занимает диапазон 0x008000–0x00FFFF, RAM — 0x000000–0x0007FF, а EEPROM для данных — 0x004000–0x0043FF. Запишите диапазон адресов и длину каждого доступного файла. Для необработанного двоичного файла необходимо явно указать адрес загрузки; образ программной памяти не включает автоматически содержимое EEPROM или конфигурацию байтов опций.

Калибровочные коэффициенты могут находиться в EEPROM, программной памяти Flash, внешней памяти или пакете обновления. Установите их местоположение и формат по проектной документации или с помощью воспроизводимого анализа. Сохраните единицы измерения, масштабирование, порядок байтов, сведения о версии и проверки целостности, если они документированы. Само по себе обнаружение узнаваемой строки или совпадение контрольной суммы не доказывает, что полный алгоритм калибровки восстановлен.

Сохраните содержимое до изменения защиты

Защита от чтения STM8 настраивается байтом опций ROP. Её не следует описывать через защиту STM32 уровня Level 2 или код регистров опций, предназначенный для STM32. Защита от чтения также не доказывает, что приложение использует шифрование XOR: для любой схемы кодирования конкретного приложения нужны отдельные подтверждения.

В документе ST справочное руководство RM0016, раздел 4.5.1 объясняется, что снятие защиты от чтения автоматически стирает программную память Flash, область DATA и байты опций. Если исходное содержимое необходимо сохранить, остановитесь при появлении запроса на стирание или снятие защиты. Перед продолжением запросите у владельца исходный код, производственные двоичные файлы, записи калибровки или проверенные резервные копии. Использование поддерживаемых способов доступа должно быть разрешено; нельзя считать восстановление данных из защищённого устройства гарантированным.

Составьте воспроизводимый протокол измерений

На подходящем испытательном стенде сравните известные входные сигналы с исходными показаниями ADC и всеми выдаваемыми выходными значениями. Запишите питание, конфигурацию тактирования, версию прошивки, настройки каналов, время установления и используемое измерительное оборудование. Если доступен обмен по UART, сохраните исходные записи трафика и отделяйте наблюдаемое поведение кадров от предположений о протоколе.

Для согласованного изменения в рамках обслуживания сравните поведение до и после изменения во всём документированном диапазоне измерений, при запуске и при обработке неисправностей. Сохраните исходные файлы и их хеши; совпадение хешей подтверждает идентичность копий, но не подлинность прошивки или правильность работы датчика. Это руководство описывает метод оценки, а не завершённое восстановление парка контроллеров, проверенный обход защиты или набор измеренных результатов проекта.

Определите, что может обеспечить план обслуживания

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

Явно укажите оставшиеся пробелы, включая неизвестные форматы коэффициентов, недокументированное поведение связи и непроверенные условия эксплуатации. При реализации пользуйтесь документацией STM8 для конкретного устройства. Примеры работы с регистрами не относящихся к нему периферийных блоков DAC или RTC и универсальные фрагменты генерации ключей не заменяют проверенное решение для этого микроконтроллера.

Обсудить оценку платы на STM8:

Billy Zheng Principal Engineer of Well Done PCB Technology

Главный инженер:
д-р Билли Чжэн
Well Done PCB Technology
billy@reversepcb.com
Экстренная поддержка: +86-157-9847-6858

Об авторе

Picture of Aidan Taylor
Aidan Taylor

Я Эйдан Тейлор, и у меня более 10 лет опыта работы в области реверс-инжиниринга печатных плат, дизайна печатных плат и разблокировки IC.

Поделиться

Рекомендуемый пост

Tags

Нужна помощь?


Прокрутить вверх

Instant Quote


Мгновенный расчет