Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| de:netzer:s88 [2012/02/06 20:43] – [Einstellungen] svesch | de:netzer:s88 [2025/06/11 20:42] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== S88 ====== | + | ====== |
| ===== Allgemein ===== | ===== Allgemein ===== | ||
| + | |||
| + | <note important> | ||
| Der S88 ist ein Rückmeldebus für Modellbahnsysteme. | Der S88 ist ein Rückmeldebus für Modellbahnsysteme. | ||
| Line 28: | Line 30: | ||
| J1 bietet eine Anschlusstelle nach dem herkömmlichen Verdrahtungsmuster für S88. JP1 ist eine RJ45-Buchse nach dem neuen Verdrahtungsstandard [[http:// | J1 bietet eine Anschlusstelle nach dem herkömmlichen Verdrahtungsmuster für S88. JP1 ist eine RJ45-Buchse nach dem neuen Verdrahtungsstandard [[http:// | ||
| - | Nach dem neuen S88-Verdrahtungsstandard S88N ist für die Versorgungsspannung alternativ zu +5V auch eine +12V zulässig, falls das die Module am Bus unterstützen. Für das Umschalten der Versorgungsspannung per Jumper dient **JP2**. VCC_AUX ist die primäre Versorgungsspannung vom Netzer Spielfeld und sollte entsprechend auf +12V geregelt werden. | + | Nach dem S88-Verdrahtungsstandard S88N ist für die Versorgungsspannung alternativ zu +5V auch eine +12V zulässig, falls das die Module am Bus unterstützen. Für das Umschalten der Versorgungsspannung per Jumper dient **JP2**. VCC_AUX ist die primäre Versorgungsspannung vom Netzer Spielfeld und sollte entsprechend auf +12V geregelt werden. |
| Pin 8 des S88N-Standards ist für das Gleissignal gedacht. Testweise wird hier der SPI-Datenausgang noch über den Bustreiber an diesen Pin gelegt, um ggf. auch Steueraufgaben übernehmen zu können (falls JP3 gejumpert ist). | Pin 8 des S88N-Standards ist für das Gleissignal gedacht. Testweise wird hier der SPI-Datenausgang noch über den Bustreiber an diesen Pin gelegt, um ggf. auch Steueraufgaben übernehmen zu können (falls JP3 gejumpert ist). | ||
| Line 34: | Line 36: | ||
| Die Datenleitung des Busses S88_DATA wird direkt an den Netzer angeschlossen, | Die Datenleitung des Busses S88_DATA wird direkt an den Netzer angeschlossen, | ||
| + | <WRAP center round info 60%> | ||
| + | Für die weitere Dokumentation wird angenommen, dass LOAD an SPI_INT und RESET an SPI_CS angeschlossen ist. | ||
| + | </ | ||
| + | |||
| + | {{ : | ||
| ==== Einstellungen Netzer Webinterface ==== | ==== Einstellungen Netzer Webinterface ==== | ||
| Der Netzer mit installierter **Pro**-Version (min. Release 1.5) muss zuvor über das Webinterface konfiguriert werden: | Der Netzer mit installierter **Pro**-Version (min. Release 1.5) muss zuvor über das Webinterface konfiguriert werden: | ||
| - | - SPI-Master-Mode auf der Allgemein-Seite aktivieren | + | - SPI-Master-Mode auf der Allgemein-Seite aktivieren |
| - | - SPI-Master-Einstellungen: | + | - SPI-Master-Einstellungen: |
| - | + | - GPIO-Einstellungen: | |
| - | {{s88_spisettings.gif? | + | |
| - | + | ||
| - | <note important> | + | |
| - | + | ||
| ==== Herstellen der Verbindung ==== | ==== Herstellen der Verbindung ==== | ||
| - | Für einen Verbindungstest sollte ein Terminalprogramm verwendet werden, mit dem Bytes in Hexadezimal- oder Binärdarstellung versendet oder empfangen werden können wie z.B. das [[http:// | + | Für einen Verbindungstest |
| + | Unter Linux kann auch ganz einfach **netcat** verwendet werden. | ||
| - | Startkommando: | + | ==== Beispielprotokoll ==== |
| + | Für das Generieren der Steuersignale wird die folgende Sequenz benutzt: | ||
| ^ # ^ ASCII-Notation ^ Hexadezimal-Notation ^ Erläuterung ^ | ^ # ^ ASCII-Notation ^ Hexadezimal-Notation ^ Erläuterung ^ | ||
| | 1 | \1 | 0x5C 0x31 | Umstellen des SPI-Modes auf 1. CLOCK wechselt von 1 auf 0. | | | 1 | \1 | 0x5C 0x31 | Umstellen des SPI-Modes auf 1. CLOCK wechselt von 1 auf 0. | | ||
| | 2 | \J | 0x5C 0x4A | LOAD (am INT-Pin) wird gesetzt. | | | 2 | \J | 0x5C 0x4A | LOAD (am INT-Pin) wird gesetzt. | | ||
| | 3 | \t | 0x5C 0x74 | Warte mindestens 100 µs (Ruhe). | | | 3 | \t | 0x5C 0x74 | Warte mindestens 100 µs (Ruhe). | | ||
| - | | 4 | \2 | 0x5C 0x74 | Schalte SPI-Mode auf 2 zurück. CLOCK wechselt von 0 auf 1. Damit werden durch das anliegende LOAD-Signal die Rückmeldesignale entlang des Busses in die Register übernommen. | | + | | 4 | \2 | 0x5C 0x32 | Schalte SPI-Mode auf 2 zurück. CLOCK wechselt von 0 auf 1. Damit werden durch das anliegende LOAD-Signal die Rückmeldesignale entlang des Busses in die Register übernommen. | |
| - | | 5 | \j | 0x5C 0x74 | Schalte LOAD von 1 auf 0 zurück. | | + | | 5 | \I | 0x5C 0x49 | Aktiviere RESET (am CS-Pin) von 0 auf 1. Damit werden eventuell vorhandene Latches zurückgesetzt. | |
| - | | 6 | \I | 0x5C 0x49 | Aktiviere RESET (am CS-Pin) von 0 auf 1. Damit werden eventuell vorhandene Latches zurückgesetzt. | | + | | 6 | \i | 0x5C 0x69 | Schalte RESET von 1 auf 0 zurück. | |
| - | | 7 | \i | 0x5C 0x69 | Schalte RESET von 1 auf 0 zurück. Nun ist der S88 vorbereitet, | + | | 7 | \j | 0x5C 0x74 | Schalte LOAD von 1 auf 0 zurück. Nun ist der S88 vorbereitet, |
| | 8... | a | 0x61 | Nun können beliebige viele Daten übertragen werden (sinnvollerweise nur soviel wie S88-Module am Strang hängen - Module mit 16 Eingängen zählen natürlich doppelt). Jedes Byte (**ohne** Fluchtsequenz) bewirkt ein Schieben des Busses um 8 Bit (normaler SPI-Modus). Gleichzeitig werden die Daten von der Leitung MI übernommen und über das Socket versendet.| | | 8... | a | 0x61 | Nun können beliebige viele Daten übertragen werden (sinnvollerweise nur soviel wie S88-Module am Strang hängen - Module mit 16 Eingängen zählen natürlich doppelt). Jedes Byte (**ohne** Fluchtsequenz) bewirkt ein Schieben des Busses um 8 Bit (normaler SPI-Modus). Gleichzeitig werden die Daten von der Leitung MI übernommen und über das Socket versendet.| | ||
| + | Und so sieht es dann aus (Oben ist der Takt, unten LOAD - das Timing des ersten Bytes): | ||
| + | {{ : | ||
| + | |||
| + | ===== PC-Software ===== | ||
| + | Kommt bald... | ||