Hallo Leute
ich versuche im Moment den Freemodbus http://freemodbus.berlios.de/
Stack zu verstehen und habe da noch ein Paar fragen. Speziel im Bezug
auf die verwendung vom LWIP Stack. Habe schon alle Dokus
gelesen(Implementation Guide, Application Guide, LWIP Doku) jedoch bin
ich noch nicht so fit im Programmieren und verstehe einige Sachen nicht.
Zum Beispiel wie sehen die Schnittstellen zwischen LWIP und Freemodbus
aus? Es heisst das LWIP unterstütz wird. Im Code wird dort der LWIP
Stack initialisiert jedoch verstehe ich nicht was genau dort geschieht.
Deswegen möchte ich auf die Demo.c eingehen.
http://www.freemodbus.org/index.php?idx=92
In der Main wird der LWIP Stack initialisiert und in einer neuen Task
wird der Modbus TCP Stack initialisiert, ok das verstehe ich. Jetzt
startet die Poll funktion in der neuen Task, ab da wird es für mich noch
nicht so klar.
Was macht die Poll Funktion? Wartet Sie auf Befehle vom Master? Sendet
der Master einen Befehl mit Funktioncodes?
In der Demo sind 4 Methoden was machen diese?
1 | eMBErrorCode eMBRegInputCB (UCHAR *pucRegBuffer, USHORT usAddress, USHORT usNRegs)
|
2 | eMBErrorCode eMBRegHoldingCB (UCHAR *pucRegBuffer, USHORT usAddress, USHORT usNRegs, eMBRegisterMode eMode)
|
3 | eMBErrorCode eMBRegCoilsCB (UCHAR *pucRegBuffer, USHORT usAddress, USHORT usNCoils, eMBRegisterMode eMode)
|
4 | eMBErrorCode eMBRegDiscreteCB (UCHAR *pucRegBuffer, USHORT usAddress, USHORT usNDiscrete)
|
Grüße
Fred