Webbläsare i en PIC?

Planering och tankar kring eventuella framtida projekt.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46935
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Webbläsare i en PIC?

Inlägg av TomasL »

Är det nån som funderat på detta.
Har börjat kika lite på Dunkels "contiki" verkar dock inte finnas någon PIC-portering men väl en AVR.

Hade tänkt mig en 18F8722 med en av de pekskärmar jag köpte av sodjan, visserligen inte färg, men s/v får duga till en början.

En undring, har aldrig jobbat med AVR, men efter vad jag förstått så är dem släktingar, så frågan är då hur mycket jobb en portering från AVR till PIC kan kräva.
Användarvisningsbild
bengt-re
EF Sponsor
Inlägg: 4829
Blev medlem: 4 april 2005, 16:18:59
Skype: bengt-re
Ort: Söder om söder
Kontakt:

Inlägg av bengt-re »

Hmm PIC och AVR är lika mycket släktingar som en Ford och en Fiat - båda är bilar, båda kan köra på en väg, båda har bromsar....

Flytta kod mellan PIC och AVR är inte så där enkelt - arkitekturen skiljer sig rätt mycket, MEN om koden är skriven C så är det görbart, även om det är en massa jobb då också. Är koden i ASM så kan du på sin höjd använda koden för att få idéer om hur du skall lösa problemet själv.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46935
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Inlägg av TomasL »

Jo, koden är skriven i portabel ansi, så det borde inte vara några problem.
Får väl tanka ned det och börja kika på hur det ser ut.

Footprinten skall visst vara väldigt liten, typ 10-20 kB eller så, så det vore inga problem att få plats med det.

Misstänker dock att bilder kan bli ett problem :(
Användarvisningsbild
bengt-re
EF Sponsor
Inlägg: 4829
Blev medlem: 4 april 2005, 16:18:59
Skype: bengt-re
Ort: Söder om söder
Kontakt:

Inlägg av bengt-re »

Det är LÅNGT över min kunskapsnivå att skriva en webläsare för en uC. Det är nog rätt svårt, och mycket jobb att få det att fungera, men inget är ju omöjligt.
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

När det gäller en så pass komplex kod som en webserver, så tror jag att
det kan vara svårt att skriva portabel kod som lätt flyttas mellan
arkitekturer. Det blir nog ganska "maskinnära" oavsett språk...
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46935
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Inlägg av TomasL »

När det gäller en så pass komplex kod som en webserver, så tror jag att
det kan vara svårt att skriva portabel kod som lätt flyttas mellan
arkitekturer. Det blir nog ganska "maskinnära" oavsett språk...
Nja webservern är klar och fungerar, nu tänkte jag ha en web-läsare också.

Teoretiskt sett, om koden är skriven i ANSI-C så borde den vara portabel till vilken arkitektur som helst, men det är dock teorin bakom det hela.
Det verkar som att koden använder ett symbol-bibliotek, dedicerat för målprocessorn.

Sedan är ju det stora problemet att olika kompilatortillverkare har olika ideer om vad som är ansi och inte, och därmed uppstår en viss inkompabilitet.
Dock är den kompilatorn jag använder, troligen en av de mest ANSI trogna på marknaden, efter min egen erfarenhet.

Så vi får väl se hur det går.

Först måste jag dock skriva lite drivrutiner till några frekvensomformare, så jag kan prata med dem.
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

OK sorry !!
Missade det.

Du vill alltså kunna hämta info från en websida direkt från en PIC ?
Igen dum ide i sig...

> Teoretiskt sett, om koden är skriven i ANSI-C så borde den vara portabel till vilken arkitektur som helst,

He he ! Den var bra ! :-)

> Det verkar som att koden använder ett symbol-bibliotek, dedicerat för målprocessorn.

Visst har man det. T.ex DDRx resp. TRISx, för att ta ett enkelt exempel.
Jag har väldigt svårt att tänka mig en C-kod för en AVR/PIC som inte
innehåller en hel del processor-specifik kod. T.ex användningen av
alla specialregister.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46935
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Inlägg av TomasL »

Du vill alltså kunna hämta info från en websida direkt från en PIC ?
Igen dum ide i sig...

> Teoretiskt sett, om koden är skriven i ANSI-C så borde den vara portabel till vilken arkitektur som helst,

He he ! Den var bra !
In a perfect world :(
> Det verkar som att koden använder ett symbol-bibliotek, dedicerat för målprocessorn.

Visst har man det. T.ex DDRx resp. TRISx, för att ta ett enkelt exempel.
Jag har väldigt svårt att tänka mig en C-kod för en AVR/PIC som inte
innehåller en hel del processor-specifik kod. T.ex användningen av
alla specialregister.
Jo, men användandet av "special-register" har ju inget att göra med "webläsarkoden" i sig, det är ju drivrutinerna som hanterar det.
i min webserver eller i TCP/IP stacken finns det inte nån PIC-specifik kod överhuvudtaget.
Däremot i drivrutinerna för ethernet-kretsen, I2C minnena osv.
Det hela går ut på att webläsaren hämtar data i ett minnes-segment,placerade där av drivern för ethernet och pekskärmen, gör sin sak, placerar ut-data i ett annat minnessegment där det hämtas upp av drivrutinen för displayen och ethernet som sin tur hanterar hårdvaran.

Därmed borde koden vara rimligt portabel.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

Just en webbläsare borde vara en av dom enklare sakerna att portera i "vår" värld av inbyggnadssystem. En väldigt stor del av koden till webbläsaren borde ju vara plattformsoberoende. Det är egentligen bara drivrutinerna i TCP/IP-stacken som är beroende av hårdvaran och den biten verkar du ju redan ha klart i och med att du har en webbserver.

Annars håller jag med rent generellt. En applikation som håller på att fippla med registerna 90% av tiden blir ett rent skitjobb att portera oavsett assembler eller C.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46935
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Inlägg av TomasL »

Annars håller jag med rent generellt. En applikation som håller på att fippla med registerna 90% av tiden blir ett rent skitjobb att portera oavsett assembler eller C.
Helt sant, hw-kod kan i bland vara ett rent h-e att portera, Dialekter kan iofs vara mycket stökigt med lömska fel, där utv-system kompilerar si och det andra så.
Skriv svar