FreeRTOS + LWIP + UART Interrupt Problem

OP #3549512
Lesenswert?
• ▲
▼
Guten Tag

Ich arbeite momentan an einer ModBus-RTU (RS-232) zu ModBus TCP Bridge.
Als OS verwende ich FreeRTOS, für die TCP Implementierung den LWIP-Stack 
und für ModBus den Stack von Embeddeed Solutions.

Als Hardware dient der STM32f107 in Verbindung mit dem PHY DP83848C.

Die Implementierung der Stacks ist bereits erfolgt und diese 
funktionieren auch wunschgemäss. Verwende ich jedoch ModBus Master 
(RS232) zusammen mit ModBus Slave (TCP) hängt sich das System nach 
kurzer Zeit auf.
ModBus Slave alleine läuft ohne Probleme. Das selbe gilt auch für Modbus 
Master alleine.


Ich bin mir ziemlich sicher das ich etwas mit den Interrupts falsch 
mache!
Stehe aber momentan ziemlich auf dem Schlauch und wäre froh wenn mir 
jemand von euch helfen könnte.

Vielen Dank

Gruss Mathias

1
void
2
vApp1Task( void *pvParameters )
3
{
4
    xMBSHandle xMBSHdl = NULL;
5

6
    LwIP_Init(  );
7

8
    for( ;; )
9
    {
10
        if( NULL == xMBSHdl )
11
        {
12
            eMBSTCPInit( &xMBSHdl, MBS_LISTEN_ADDRESS, MBS_LISTEN_PORT );
13
            eMBSRegisterDiscreteCB( xMBSHdl, eMyDiscreteInputCB );
14
        }
15
        else
16
        {
17
            //Wird diese Zeile auskommentiert so funktioniert ModBus Master
18
            eMBSPoll( xMBSHdl );
19
        }
20
        vTaskDelay( 1 );
21
    }
22
}
23

24
void
25
vApp2Task( void *pvParameters )
26
{   
27
    ModBusMaster_init();
28

29
    for(;;)
30
    {
31
         //Wird diese Zeile auskommentiert so funktioniert ModBus Slave
32
       eMBMReadCoils( xMBMMaster, 10, COIL_SYSTEMDATAADR_R, COIL_SYSTEMDATACNT_R, RegCoilSystemR );
33
       vTaskDelay( 1000 );
34
    }
35
}
Angehängte Dateien:

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.