DS2423 mit DS2413 zum Zurücksetzen
Wenn zwei 1-Wire Chips in einem Controler möglich sind, gibt es eine Vielzahl an Variationsmöglichkeiten. So kam vereinzelt der Wunsch auf, die Zähler auf irgend eine Weise über den 1-Wire-Bus auch rücksetzen zu können.
Sicher, es könnte einfach ein bestimmter Wert an eine bestimmte Stelle in den SRAM-Speicher des DS2423 geschrieben werden. Mit diesem wäre es kein Problem dann den Zähler zurück zu setzen oder einen Wert einzustellen. Aber viele Softwaresysteme für 1-Wire unterstützen den Zugriff auf das SRAM gar nicht. Eine weitere Möglichkeit ist die Simulation eines DS2413, der ja ein zweifach PIO darstellt.
Wird PIOA eingeschaltet, dann wird der Counter von Page 14 (Counter A) zurückgesetzt. Genau das gleiche gilt dann für PIOB und Counter B.
Einen passenden Quellcode für diese Variante gibt es unter DS2423_DS2413 in der Git-Repository.
Für die Verwendung der Dual-Funktionen wird die Datei common/OWDS2423_DS2413.S benötigt. Dort sind alle 1-Wire Kommandos entsprechend für zwei 1-Wire-Chips aufgegliedert.