EMB 94
EMBEDDED 94 • NOVEMBRE • 2024 54 SOFTWARE | TCP/IP L o stack TCP/IP lightweight (lwIP) è un’implemen- tazione compatta della suite di protocolli TCP/IP, studiata per ridurre al minimo l’uso della RAM e quindi adatta ai sistemi embedded. Fornisce tre distinte interfacce di pro- grammazione delle applicazioni (API): • API raw di basso livello • API netconn di livello superiore • API socket in stile BSD Questo articolo si focalizzerà esclusivamente sugli esem- pi che utilizzano l’interfaccia API raw. L’API raw è basata sugli eventi ed è progettata per operare senza un sistema operativo sottostante. Le applicazioni che utilizzano l’API raw implementano funzioni di callback che vengono atti- vate da eventi core. Nonostante sia più complessa dell’API socket, l’API raw offre un throughput significativamente più elevato grazie al suo overhead ridotto. Verranno discussi vari esempi dimostrativi costruiti sul- lo stack TCP/IP lwIP, utilizzando il microcontrollore MAX32570 di Analog Devices . La sezione iniziale tratta una demo di ping, dimostrando come inviare un ping da un PC al dispositivo. La sezione successiva fornisce appro- fondimenti su un esempio di Echo server TCP, che serve come demo di un server semplificato, utile per testare le connessioni TCP. Il software development kit MaximSDK di ADI contiene il software e gli strumenti necessari per sviluppare il firmwa- re per i microcontrollori MAX32xxx di ADI. Include un file di libreria di stack lwIP, “MaximSDK\Libraries\lwIP”. La figura 1mostra i file della libreria lwIP nella struttura della cartella MaximSDK. La cartella lwIP contiene diverse sottocartelle: • Cartella API (API netconn e socket) • Cartella Core (file core di lwIP, tra cui “tcp.c”, “ip.c” e così via) • Cartella Netif (file dell’interfaccia di rete) • Cartella Include (tutti i file include di lwIP) • Cartella Maxim (mac driver personalizzato per il mi- crocontrollore ADI) L’architettura di lwIP segue la struttura del modello TCP/ IP. Il protocollo TCP/IP è una combinazione di diversi pro- tocolli a vari livelli, o layer. Il TCP/IP viene normalmente considerato un sistema a 4 layer, come mostrato nella fi- gura 2. Un progetto lwIP contiene sempre un file di configurazio- ne chiamato “lwipopts.h” e un file di configurazione pre- Come integrare uno Stack TCP/IP lwIP nelle applicazioni embedded L’uso di uno stack TCP/IP è molto diffuso nelle interfacce di comunicazione Ethernet per le reti locali e WAN. Lightweight TCP/IP (lwIP) è un’implementazione ridotta del protocollo TCP/IP che mira a ridurre l’utilizzo della RAM. Questo articolo fornisce indicazioni sull’integrazione dello stack TCP/IP lwIP in un’applicazione embedded, semplificando il processo di sviluppo e riducendo tempo e oneri richiesti Anju Puthenpurayil Central Applications Engineer Analog Devices
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzg4NjYz