TCP/IP stack

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
persika
EF Sponsor
Inlägg: 1552
Blev medlem: 31 juli 2006, 22:14:37
Ort: Österlen, Skåne

TCP/IP stack

Inlägg av persika »

Vad har man för nytta av en "TCP/IP stack" i en PIC ?

Kan man koppla en pic till ett nätverk o få den att visa upp en html-sida för "besökare" ?
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Om du har en IP-stack så kan du snacka alla möjliga protokoll som använder just IP (och TCP). Det kan vara t.ex. HTTP (= webserver) eller NTP (bygg en klocka som hämtar tiden från nätet) eller POP3 (bygg en pryl som kollar om du har ny mail).

osv osv osv osv
Användarvisningsbild
persika
EF Sponsor
Inlägg: 1552
Blev medlem: 31 juli 2006, 22:14:37
Ort: Österlen, Skåne

Inlägg av persika »

Skulle man kunna ha en pic som vebbserver ? vad behöver man i så fall, för det minimala ?
cyr
Inlägg: 2712
Blev medlem: 27 maj 2003, 16:02:39
Ort: linköping
Kontakt:

Inlägg av cyr »

Tja, beror lite på vad du vill göra och hur du vill koppla den till nätverket.

Ett exempel som använder ett gammalt ISA-nätverkskort:

http://members.vol.at/home.floery/elect ... erver.html

Googla på "PIC web server" så hittar du fler...
Användarvisningsbild
persika
EF Sponsor
Inlägg: 1552
Blev medlem: 31 juli 2006, 22:14:37
Ort: Österlen, Skåne

Inlägg av persika »

OK, ska kolla.

Skulle gärna vilja gjort en sak som mäter hur det står till i huset, tex temperatur, och som lägger ut det på en internet sida, som man kan gå in o kolla på när man är ute på resande fot.

Är det möjligt med bara en pic ? (som sagt, ska kolla på din länk oxå)
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Jodå, visst fungerar det! Om du hade tittat en extra gång i projektforumet innan du författade denna tråd så hade du sett Nu funkar det! (Delvis) FTP och TCP/IP stack på en PIC.

Det går bra att "hosta" websidor med en PIC eller för den delen en AVR, men man måste hålla sig till endast text och eventuellt bilder i väldigt litet format om man inte tycker det är en intressant utmaning att hänga på väldigt mycket extra minne till µC.
Användarvisningsbild
JimmyAndersson
Inlägg: 26651
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Nu blev jag nyfiken: Vad gör den här tråden i Projekt-delen ???
Användarvisningsbild
lgrfbs
Inlägg: 7367
Blev medlem: 28 januari 2005, 15:48:53
Ort: X-län
Kontakt:

Inlägg av lgrfbs »

Kan "Almänt" vara bättre?
Användarvisningsbild
Fagge
Inlägg: 3930
Blev medlem: 27 maj 2003, 13:59:51
Ort: Blekinge

Inlägg av Fagge »

Jag la den här i stället, för allt handlar ju just om detta, "Mikroprocessorer"
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47564
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Inlägg av TomasL »

Det går alldeles utmärkt att stoppa i en stack mm i en PIC. För tillfället har jag TCP/IP stack, UDP, ARP, ICMP, FTP och HTTP, Kommer som nästa steg att stoppa i SMTP också samt applikationsprogramvaran.

Hur stora sidor man kan ha beror på mängden minne man använder, för tillfället använder jag 2x512Kbit, dvs 128KByte minne för html.
Använder mig av en 18F8622 (48Kord) ROM.
Har förbrukat ungefär 20Kord av detta.
Om man tittar på PICDEM.Net, så får de plats med det mesta i en 18F452a, men inget mer och med häftig optimisering.

Ethernet, ja det är den gamla RTL8019 ISA kontrollern som jag använder, behöver inte mer än 10Mbit, då PIC'en inte klarar av mer.
Det går troligen inte använda nån modernare typ PCI kontroller, då ISA-Bussen ursprungligen var en 8-bitars buss och PCI är 16 bitar och det fungerar inte så bra med 8-bitars processorer.

I övrigt, det finns ett antal olika TCP/IP-stackar där ute, en del bra och en del mindre bra.
Själv satte jag mig ner och studerade de mest kända stackarna, Bla. Dunkels, uChips, Lean and Mean och några andra.
Tog det bästa principerna ur dem och skruvade ihop min egen.

Det har tagit sin lilla tid, mycket beroende på att komma runt div kiselfel hos PICarna, även fått "gamla" PICar levererade med gamla kiselfel som inte borde finnas längre (skapar mycket strul, tro mig, när det helt plötsligt beter sig helt annorlunda när man byter uP).
Samtidigt har diverse egenheter i min IDE kommit fram, då koden av uppenbara skäl är lite mer avancerad än en blinkande lampa.
Men sköj är det.
Innan jag påbörjade denna uppgift var mina senaste försök i skolan för en 20-25 år sedan då vi programmerade 6800 med hex och asm via ett hex-tangentbord, samt en ALPHA-LSI via strömbrytare och LEDar på fronten.
Har iofs gjort en del VB(A) applikationer också, men att börja med C var något helt nytt för mig, men det är uppenbart att man lär sig.
sodjan
EF Sponsor
Inlägg: 43267
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> men man måste hålla sig till endast text och eventuellt bilder i väldigt litet format...

Om bilderna inte genereras dynamiskt, så kan man låta html koden
tillsammans med det data som genereras dynamiskt (temp eller vad det nu är)
komma från PIC'en. Bilderna kan ligga någon annanstans och länkas in med
IMG-taggar som vanligt. Det blir även enkelt att dela bilder mellan
flera olika "PIC-noder". För användaren som tittar på web-sidan spelar
det naturligtsvis ingen roll *var* bilderna kommer från... :-)
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47564
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Inlägg av TomasL »

> men man måste hålla sig till endast text och eventuellt bilder i väldigt litet format...

Om bilderna inte genereras dynamiskt, så kan man låta html koden
tillsammans med det data som genereras dynamiskt (temp eller vad det nu är)
komma från PIC'en. Bilderna kan ligga någon annanstans och länkas in med
IMG-taggar som vanligt. Det blir även enkelt att dela bilder mellan
flera olika "PIC-noder". För användaren som tittar på web-sidan spelar
det naturligtsvis ingen roll *var* bilderna kommer från...
Nu är det ju iofs inga problem att skriva en ide-driver och använda en vanlig hårddisk och lagra html-sidorna på, om man vill.
Men å andra sidan, man använder nog inte en PIC-baserad http-server för att publicera sina högupplösande bilder, så minnes behovet är egenteligen inga större problem, däremot kan man utan problem bygga ihop en kamera och en PIC-server och på så sätt streama live-video om man vill.

Det största "problemet" med att använda en PIC är bristen på RAM, men ett antal vis personer löste problemet genom att använda förkompilerad html så man kan enkelt beräkna checksummor, paketstorlekar osv utan att ha direkt tillgång till html-sidan.
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Inlägg av BEEP »

sodjan: :tumupp:

Man skulle ju kunna göra tvärt om, att man har en webbsida som hämtar datan ifrån mikroprocessorn.

Vad tror ni om den här?
Jelu Web-Shop - ENC28J60 Ethernet Module

Bild
thepirateboy
EF Sponsor
Inlägg: 2109
Blev medlem: 27 augusti 2005, 20:57:58
Ort: Borlänge

Inlägg av thepirateboy »

Nu fick jag lite inspiration till mitt projekt. Nu verkar det som demoprojektet funkar iaf, alltid något :)

http://213.113.40.88
sodjan
EF Sponsor
Inlägg: 43267
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

"Servern på 213.113.40.88 svarar inte."...
Skriv svar