logo elektroda
logo elektroda
X
logo elektroda

Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)

piotr_go 552 0
WERBUNG
  • Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)





    Beschreibung des Programmierprotokolls für Nyquest MTP (NY8AE51F)-Mikrocontroller auf der Grundlage unserer eigenen Analyse der während der Programmierung erfassten Timings.
    Timings wurden von der Person zur Verfügung gestellt, die im Besitz des originalen Programmierers ist (DANKE).

    Der Mikrocontroller NY8AE51F verfügt über einen wiederbeschreibbaren 1K*14bit-Speicher, 64B RAM, 64B EEPROM und ist in den Gehäusen SOP8 und SOT23-6 erhältlich.
    Nyquest bietet auch MTP-Chips in größeren Gehäusen an, z. B. NY8BExx, NY8BMxx in SOP16, und eine ganze Reihe von OTP-Speicherchips (zu Preisen unter 2 Cent). Dazu 4-Bit µC und diverse „Player“.
    https://www.nyquest.com.tw/en/product/

    Programmierung:
    Programmierspannung 5V. Status der RESET-Leitung - niedrig.
    Reihenfolge der Signale auf den Screen­shots: VCC, SCL, SDA.
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)

    Auslesen:
    Wir schalten die Stromversorgung ein
    Wir warten 1ms 130µs ab
    Wir senden den Initialisierungscode:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Wir senden den Auslesebefehl:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Wir erfassen Daten:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)

    Schreiben:
    Wir schalten die Stromversorgung ein
    Wir warten 1ms 130µs ab
    Wir senden den Initialisierungscode:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Wir senden den Schreibbefehl:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Wir senden Daten:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)

    Löschen:
    Gibt es nicht. Beim Speichern überschreiben wir die alten Werte.

    Initialisierungscode:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Der Code besteht aus 16 Bits (0x53AD).
    Wir setzen die Bits vor dem steigenden Taktsignal. Vom Ältesten bis zum Jüngsten.
    Nach dem Senden der 16 Bits setzen wir die Taktleitung als Pull-up-Eingang.
    Wir setzen die Datenleitung auf den niedrigen Zustand.
    Wir warten eine Weile.

    Startbit:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Wir setzen den High-Status auf der Datenleitung.
    Wir warten auf den High-Status auf der Taktleitung.
    Wir setzen den Low-Status auf der Datenleitung.
    Wir setzen den Low-Status auf der Taktleitung.

    Der Takt außerhalb des Abschnitts zwischen dem "Code" und dem Startbit wird vom Programmierer generiert.

    Lese-/Schreibbefehl:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Der Befehl besteht aus 2 Bytes. Darauf folgt 1 Byte unbekanntes Ziel (0x00) gefolgt von 2 Bytes Adresse.
    Nach jedem Byte antwortet der Mikrocontroller mit einem einzelnen Bit.

    Befehle:
    Lesen - 0x40, 0xC0, 0x00, [address_hi], [address_lo]
    Schreiben - 0x48, 0xC2, 0x00, [address_hi], [address_lo]

    Daten lesen:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Wir empfangen 8 Bit Daten (data_hi).
    Wir senden 1 Bit '0' Bestätigung vom Programmierer.
    Wir empfangen 8 Bit Daten (data_lo).
    Wir senden 1 Bit '0' Bestätigung vom Programmierer.
    ...

    Daten schreiben:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Oder je nach Wartezeit:
    Programmierprotokoll für Mikrocontroller Nyquest MTP (NY8AE51F)
    Wir senden 8 Bit an Daten (data_hi).
    Wir erhalten die 1 Bit Bestätigung vom Mikrocontroller.
    Wir senden 8 Bit an Daten (data_lo).
    Wir warten darauf, dass die Datenleitung auf High geht,
    Wir setzen den High-Status auf der Taktleitung.
    Wir setzen den Low-Status auf der Taktleitung.

    Speicher:
    0x0000...0x03FF Programmspeicher
    0x0400...0x0410 „Fuse-Bits“

    Bei Interesse kann ich auch die Programmierung der OTP-Version und die Dekodierung der vom Compiler des Herstellers generierten BINs beschreiben.

    Cool? DIY-Rangliste
    Über den Autor
    piotr_go
    DIY Elektronikdesigner
    Offline 
    piotr_go hat 2834 Beiträge geschrieben mit der Bewertung 3186, und dabei 91 Mal geholfen. Er ist seit 2003 bei uns.
  • WERBUNG
WERBUNG