Logiciels Libres et Systèmes Embarqués

Référence du fichier run.c

#include "xtime_l.h"
#include "global.h"
#include "lwip/tcp.h"
#include "netif/xemacliteif.h"

Aller au code source de ce fichier.


Fonctions

void run (struct netif *netif)
 Fonction principale de l'application.

Documentation des fonctions

void run ( struct netif *  netif  ) 

Fonction principale de l'application.

Il s'agit de la fonction la plus compliquée de l'application, alors des explications semblent les bienvenues...

Pour que la pile TCP/IP de lwIP fonctionne, il faut appeler certaines fonctions périodiquement. Nous avons utilisé le timer interne au PPC pour effectuer ces appels périodiques, grâce aux fonctions XTime_SetTime() et XTime_GetTime() qui, respectivment, met à jour et lit la valeur du Time Base Register. Ce dernier est sur 64 bits et est incrémenté de 1 à chaque coup d'horloge.

Ainsi, nous pouvons (devons) appeler la fonction tcp_tmr() toutes les 100 milli-secondes et la fonction etharp_tmr() toutes les 10 secondes. Dans les autres "périodes", nous faisons appel à la fonction xemacif_input() afin que lwIP puisse lire les trames Ethernet entrant sur l'interface réseau.

Paramètres:
netif interface réseau où lire les trames Eternet.
Note:
TCP_TMR_INTERVAL est la période (en milli-seconde) à laquelle tcp_tmr() doit être appelée.

ARP_TMR_INTERVAL est la période (en milli-seconde) à laquelle etharp_tmr() doit être appelée. Nous avons fait l'hypothèse qu'elle est plus grande que TCP_TMR_INTERVAL.

Définition à la ligne 11 du fichier run.c.

Références print().

Référencé par main().