Baustein und Gehäuse bestätigen
Der STM8S105K6 ist ein STM8-Mikrocontroller mit 16 MHz, 8 Bit, 32 KB Programm-Flash, 2 KB RAM und 1024 Bytes Daten-EEPROM. Zu seinen Peripheriefunktionen gehören ADC1, UART2, SPI, I²C und Timer. Diese Funktionen können als Grundlage für eine Sensorplatine dienen, belegen aber nicht, wie eine bestimmte Platine Messwerte erfasst, kalibriert oder überträgt.
Erfassen Sie die vollständige Bauteilkennzeichnung, das Gehäuse und den Revisionsstand der Platine, bevor Sie Prüfpunkte bestimmen. Das STM8S105x4/6-Datenblatt von ST, Tabellen 1 und 5, unterscheidet die Gehäusevarianten. Die Spalten für LQFP32 und UFQFPN32 verwenden die nachfolgend genannten Pinnummern; das ältere SDIP32-Gehäuse hat eine andere Belegung. Prüfen Sie die Ausrichtung und die Pin-1-Markierung des Gehäuses, bevor Sie ein Netz nachverfolgen.
Reset-, SWIM- und Kommunikationssignale zuordnen
Bei LQFP32/UFQFPN32 liegt NRST an Pin 1, PD1/SWIM an Pin 26, PD5/UART2_TX an Pin 30 und PD6/UART2_RX an Pin 31. PC1 liegt an Pin 18 und PC7/SPI_MISO an Pin 24. Die Portbit-Bezeichnungen reichen von 0 bis 7; PC8 bis PC11 sind keine gültigen STM8-Portbit-Bezeichnungen. Verwenden Sie die Tabelle des Herstellers, statt eine Steckverbinder- oder Pinliste eines anderen MCU zu übernehmen.
Verfolgen Sie die tatsächlichen Verbindungen auf der Platine und prüfen Sie, ob ein Pin als GPIO oder für eine alternative Funktion verwendet wird. Prüfen Sie vor dem Anschließen eines unterstützten Programmierwerkzeugs Masse, Versorgungsspannungsreferenz des Zielsystems sowie SWIM- und Reset-Verdrahtung anhand der Werkzeugdokumentation. Eine UART-Verdrahtung weist auf einen möglichen Kommunikationsweg hin; sie belegt weder ein Protokoll zur Firmware-Aktualisierung noch einen zugänglichen Bootloader.
Die Sensorsignalkette bis zum ADC nachverfolgen
Der K6-Baustein stellt sieben Eingänge für seinen 10-Bit-ADC1 bereit. Erfassen Sie für jeden Sensoreingang den Gehäusepin, den ADC-Kanal, die Signalaufbereitung und die relevanten Versorgungsbedingungen. Nehmen Sie Spannungsteiler, Verstärker, Filter und Schutzbauteile in den Netzplan auf: Die Spannung am MCU-Pin kann erheblich von der gemessenen physikalischen Größe abweichen.
Prüfen Sie vor der Auswahl eines Prüfsignals die Eingangsgrenzwerte sowie die Anforderungen an Quellimpedanz und Erfassung im Datenblatt. Für AIN12 an PF4 gilt eine besondere Einschränkung: Dieser Eingang lässt sich weder im ADC-Scanmodus noch mit dem analogen Watchdog auswählen. Gehen Sie nicht davon aus, dass alle verfügbaren Analogeingänge dieselben Betriebsarten unterstützen. Erfassen Sie die ADC-Rohcodes zusammen mit dem bekannten Eingangssignal, der Kanalkonfiguration und den Abtastbedingungen, statt eine ungeprüfte Umrechnungsformel als wiederhergestellten Algorithmus darzustellen.
Programmcode und Kalibrierdaten trennen
Der 32 KB große Programm-Flash belegt 0x008000–0x00FFFF, das RAM belegt 0x000000–0x0007FF und das Daten-EEPROM belegt 0x004000–0x0043FF. Erfassen Sie den Adressbereich und die Länge jeder verfügbaren Datei. Eine rohe Binärdatei benötigt eine ausdrücklich angegebene Ladeadresse; ein Abbild des Programmspeichers enthält nicht automatisch die EEPROM-Inhalte oder die Konfiguration der Optionsbytes.
Kalibrierkoeffizienten können im EEPROM, im Programm-Flash, in externem Speicher oder in einem Aktualisierungspaket liegen. Bestimmen Sie ihren Speicherort und ihr Format anhand von Entwicklungsunterlagen oder einer reproduzierbaren Analyse. Bewahren Sie Einheiten, Skalierung, Bytereihenfolge, Versionsinformationen und Integritätsprüfungen, soweit diese dokumentiert sind. Eine erkennbare Zeichenfolge oder eine übereinstimmende Prüfsumme allein belegt nicht, dass ein vollständiger Kalibrieralgorithmus wiederhergestellt wurde.
Inhalte vor einer Änderung des Schutzes sichern
Der STM8-Ausleseschutz wird über das ROP-Optionsbyte konfiguriert. Er sollte weder mit einem Schutz der Stufe 2 nach STM32-Art noch mit STM32-spezifischem Code für Optionsregister beschrieben werden. Ein Ausleseschutz belegt auch nicht, dass eine Anwendung XOR-Verschlüsselung verwendet: Jedes anwendungsspezifische Kodierungsverfahren benötigt eigene Nachweise.
Das Referenzhandbuch RM0016 von ST, Abschnitt 4.5.1, erläutert, dass das Aufheben des Ausleseschutzes automatisch den Programm-Flash, den DATA-Bereich und die Optionsbytes löscht. Wenn die ursprünglichen Inhalte erhalten bleiben müssen, brechen Sie bei einer Aufforderung zum Löschen oder zum Aufheben des Schutzes ab. Beschaffen Sie vor dem Fortfahren vom Eigentümer bereitgestellten Quellcode, Produktionsbinärdateien, Kalibrierunterlagen oder verifizierte Sicherungskopien. Der Zugriff über unterstützte Verfahren muss autorisiert sein; eine Wiederherstellung aus einem geschützten Baustein darf nicht vorausgesetzt werden.
Ein reproduzierbares Messprotokoll erstellen
Vergleichen Sie an einem geeigneten Messplatz bekannte Eingangssignale mit ADC-Rohwerten und gegebenenfalls ausgegebenen Werten. Dokumentieren Sie Versorgung, Taktkonfiguration, Firmware-Version, Kanaleinstellungen, Einschwingzeit und Messgeräte. Falls UART-Datenverkehr verfügbar ist, bewahren Sie die ursprünglichen Aufzeichnungen auf und unterscheiden Sie beobachtetes Rahmenverhalten von einem daraus abgeleiteten Protokoll.
Vergleichen Sie bei einer genehmigten Wartungsänderung das Verhalten vor und nach der Änderung über den dokumentierten Messbereich sowie hinsichtlich Startbedingungen und Fehlerbehandlung. Bewahren Sie die Originaldateien und Hashwerte auf; übereinstimmende Hashwerte belegen die Konsistenz der Kopien, aber weder die Echtheit der Firmware noch die korrekte Sensorfunktion. Dieser Leitfaden beschreibt eine Bewertungsmethode, keine abgeschlossene Wiederherstellung eines Controllerbestands, keine validierte Umgehung des Schutzes und keine gemessenen Projektergebnisse.
Den möglichen Umfang eines Wartungsplans bestimmen
Ein Wartungsplan für eine Sensorplatine sollte ausweisen, welche Firmware, Kalibrierdaten und Hardwareannahmen verifiziert wurden. Ist das ursprüngliche Programm nicht verfügbar, benötigt ein Ersatzentwurf eigene Messanforderungen, eine Schnittstellenspezifikation und Abnahmetests. Der Zugriff auf eine Binärdatei allein belegt weder die Übertragungsfunktion noch die Genauigkeit oder das Verhalten des Sensors unter Umwelteinflüssen.
Benennen Sie verbleibende Lücken ausdrücklich, darunter unbekannte Koeffizientenformate, undokumentiertes Kommunikationsverhalten und ungeprüfte Betriebsbedingungen. Verwenden Sie für die Implementierung die bausteinspezifische STM8-Dokumentation. Registerbeispiele für nicht zugehörige DAC- oder RTC-Peripherie und allgemeine Codefragmente zur Schlüsselerzeugung können einen auf diesem Baustein getesteten Entwurf nicht ersetzen.
Besprechen Sie die Bewertung einer STM8-Platine:

Chefingenieur:
Dr. Billy Zheng
Well Done PCB Technology
billy@reversepcb.com
Notfall-Support: +86-157-9847-6858




