Ethernet?

4 replies [Last post]
jdemeyer
Offline
Member since: 2009-10-27

Op de Dwengo-workshop werd gezegd dat het mogelijk is om een webserver op het Dwengo-bordje te zetten. Maar hoe zouden jullie dat dan aanpakken? Mijn gevoel zegt dat 2048 bytes RAM daarvoor wel heel weinig is.

michelstandaert...
Offline
Member since: 2009-11-27

Dat is nu een vraag waar ik ook graag het antwoord wens te kennen

Wim
Offline
Member since: 2009-03-26

Met 2KB RAM is het een uitdaging, maar het is zeker mogelijk! Michochip heeft zelfs speciaal voor de PIC18 familie een TCP/IP stack External link ontwikkeld.

Verwacht natuurlijk niets dat Apache of PHP evenaart. Maar het is zeker mogelijk om een paar kleine webpagina's aan te bieden over HTTP, waarin dynamisch bv. een temperatuursmeting in verwerkt wordt, of waarmee (via GET of POST) motoren aangestuurd kunnen worden.

We zijn trouwens bezig om hiervoor een uitbreidingsbord te ontwikkelen, gebaseerd op de ENC28J60 External link. Als jullie interesse hebben kan ik eventueel eens horen of we hier al een beta-versie van kunnen laten testen...

jdemeyer
Offline
Member since: 2009-10-27

Die ethernet controller heeft 8 Kbytes RAM, dat verandert de zaak natuurlijk al direct heel wat.

Ik zou beginnen met een client te maken i.p.v. een server, en bijvoorbeeld een programma schrijven dat zelf contact opneemt met een server om temperatuursgegevens door te sturen.

Wim
Offline
Member since: 2009-03-26

Klopt, die 8 kB doet dienst als zend- en ontvangstbuffer. Bovendien zit er op ons uitbreidingsbordje nog een extra 25LC1024 (128 kB EEPROM) waar je statische bestanden in kan steken voor de webserver.

Als je ook de server zelf controleert hoef je zelfs geen complete HTTP implementatie te hebben, maar bv. met UDP-pakketjes werken. Je kan dan een groot deel van de TCP/IP stack dan uitzetten (m.b.v. conditionele compilatie) wat een hoop data- en programmageheugen terug vrijmaakt voor andere doeleinden.