Schönen Abend, Es gibt wieder mal ein Projekt zum Thema Kochtopf und Temperaturregelung. Dazu habe ich mir einen Induktionsherd besorgt und würde als ersten Schritt gerne die Leistung per Mikrocontroller steuern können, was sich nun als schwieriger als gedacht herausgestellt hat. Um welches Gerät gehts: * CPSN-3000 dieses enthält zwei solcher Leistungsteile: * https://www.ymarveelectronica.com/tienda/vitroceramica/placas-control-electronicas/cpsn-3000-d-2954034100-teka/ und das Bedienpaneel, welches mit beiden Leistungsteilen kommuniziert (siehe Bilder). Von den 5 Drähten sind nur 4 auf der Leiterplatte kontaktiert, und zwar: * +10.5V (Vin) * GND * +5V (Vout) * data Kommuniziert würd über einen Bus (die Datenleitungen beider Leistungsteile sind auf der Platine verbunden). Alle Oszilloskopaufnahmen zeigen den Bus, gesendet wird von TxD6 (NEC D78F0534), die Signale werden am Weg zum Bus invertiert (was auf Wired-And schließen lässt). Der verwendete UART würde zwar LIN 'unterstützen', die Pulse sehen aber nicht danach aus: Den langen 1-Pulse würde ich als SOF (start of frame) werten, ist aber für LIN vermutlich zu lange (ca. 4.5ms, minimale Pulselänge: 100µs - das entspräche 45 Takten, das UART-Modul unterstützt bis zu 20). Außerdem fehlt das LIN-Sync danach (0x55 nach dem SOF). Ausgehend vom angenommenen SOF und der mininmalen Pulselänge von 100µs habe ich danach die Punkte vom Oszilloskop ausgelesen/mit einem Mikrocontroller gesampled und über ein Skript in Pulse umgewandelt. Mittels division durch die kleinste Pulselänge hab ich dann auf die Anzahl der Bits je Puls geschlossen. Weiters habe ich dann Pulselängen mehrerer Frames verglichen und zu Gruppen zusammengefasst. Siehe dazu die angehängten Textdateien. Was mich vor allem stutzig macht ist, dass es einige Pulse gibt, die kein vielfaches der kleinsten Pulslänge sind (das führt auf ein absurdes Ergebnis von z.B.: 3.5 Bits...). Falls jemand eine Idee hat, was das für ein Protokoll sein könnte, welche Modulierung es sonst noch sein könnte oder sowas ähnliches schon gesehen hat, ich bin über jegliche Informationen dankbar! lg michael
michi099 schrieb: > das führt auf ein absurdes Ergebnis von z.B.: 3.5 Bits... Ist das ein High- oder Low-pegel mit 1,5bits? Wenn Low(logisch 1, da invertierter UART) könnte es ein 1,5-Stopbit-Format sein. mfg mf
:
Bearbeitet durch User
Waren tendentiell eher Low (am Bus), d.h. High am TxD-Pin. Es gibt aber auch 'krumme' längen wie 1.3, 1.8 usw. (siehe frame_analysation_with_bitcount.txt im Ausgangspost). Was für mich gegen UART spricht ist, dass sowohl lange Low als auch High-Pulse vorkommen: * Sei Low der Ruhepegel: viel zu lange High-Pulse (~44 und 9 Bit) * Sei High der Ruhepegel: zumindest ein zu langer Low-Puls (36.5 Bit) Danke jedenfalls für die Idee, werd mir das nochmal durch den Kopf gehen lassen. Plan B wäre Sequenzen zu Samplen, wenn möglich einzelne Frames zu Isolieren (das hat einigermaßen funktioniert, mit Luft nach oben) und entsprechend abzuspielen. lg michael
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.