Bueno, he estado haciendo pruebas con ambos STACK´s / Compiladores ...
El original Microchip STACK TCP/IP con C18 que tengo está muy bien pero el ejemplo del que dispongo, que traía la placa de desarrollo OLIMEX-PIC-WEB, es extra-ulta-mega-completo, contempla todo, todos los protocolos y tips en un único proyecto para MPLAB/C18 ... está muy bien pero es increíblemente farragoso de leer y/o entender, no sólo por lo complejo del protocolo sino por la increíble colección de #DEFINES que lleva a bordo según sea el HARDWARE sobre el que se va a probar, el PIC, dsPIC, PIC32 que vaya a correr el programa, de si lleva la capa hardware encima o de si vía SPI controla un ENC24J60, de si tiene o no LCD, uno o dos botones, de si lleva EEPROM interna o externa o de si ésta es la 24L256 o una vaya-usted-a-saber-qué ... el resultado es que no hay forma (rápida) de aclararse qué hay que hacer para conseguir qué cosa ...
La versión CCS del STACK TCP/IP es idéntica, es hija y nieta de la de Microchip, pero los ejemplos son infinitamente más manejables, entendibles y accesibles. Un exXX.c casi para cada función u protocolo. Y así da gusto, sobre todo porque no tienes que perderte en el ICMP si no vas a enviar correos con el PIC, o con el NTP si no vas a requerir sincronizaciones, y así con todo.
Ya he puesto en marcha, por separado y con el CCS 5.064, los distintos ejemplos sobre los temas que necesito:
- IP estática versus IP dinámica (DHCP)
- ICMP para respuestas a PING
- Escucha y respuestas UDP para descubrir /configurar dispositivos en red
- Escucha TCP (Server) para conectar con dispositivos individuales y operar con ellos
- Enlace TCP (Client) para que los dispositivos conecten con un Servidor externo y suban o descarguen información relevante para su funcionamiento
Todo esto es más o menos todo lo necesito así que va por buen camino, con el hard de desarrollo, los compiladores y los conocimientos y práctica de que ya dispongo. Así que voy a seguir insistiendo por este camino que parece que por ahora es fértil sin grandes complicaciones.
Ahora el gran reto es integrar todo esto al mismo tiempo si que cualquier de ellos interfiera negativamente el cualquier otro y hacer que funcionen conjuntamente de forma amigable y apacible.
Continuamos para bingo.