gcc + PIC12/16

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
bos
Inlägg: 2314
Blev medlem: 24 februari 2007, 23:29:15
Kontakt:

gcc + PIC12/16

Inlägg av bos »

Jag har en licens till Hi-Techs C-kompilator och jag är nöjd med den, men jag kan ändå inte undgå att undra varför det inte finns en gcc-variant som klarar PIC12/PIC16. Var jag än läser på nätet så ser jag att gcc inte klarar att bygga kod för Microchip PIC12/16 och att det "aldrig" kommer att komma en gcc som klarar detta.

Exempelvis från <http://www.voti.nl/picfaq/index_1.html>:
20. Where can I get a GCC for PICs?

There is no GCC port for PICs, and it is not likely that one will
ever exist. The assumptions made by GCC about the target CPU
architecture are reasonable for almost all CPU's that can be found
in the world (including AVR, 8051 and 68HC microcontrollers), but
definitely not for PICs.
Är det någon begränsning nånstans, eller är det helt enkelt för att ingen orkat ta tag i det? Eller vad är anledningen? Jag menar, gcc klarar ju till och med att spotta ut kod till Z80 så det kan ju knappast vara någon sorts begränsning i gcc.


EDIT: rubrik
Senast redigerad av bos 15 oktober 2010, 23:56:46, redigerad totalt 1 gång.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47002
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: gcc + PIC

Inlägg av TomasL »

Beror på vilken PIC du menar.
PIC16 garanterat nej.
PIC18 finns säkert.
PIC32 Ja naturligtvis, eftersom vi använder en.
bos
Inlägg: 2314
Blev medlem: 24 februari 2007, 23:29:15
Kontakt:

Re: gcc + PIC

Inlägg av bos »

Så klumpigt av mig. Det är PIC12/PIC16 min undran syftar på. Jag vet att gcc finns till exempelvis dsPIC.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47002
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: gcc + PIC12/16

Inlägg av TomasL »

PIC16 är inte byggd för att hantera högnivåspråk, av den anledningen finns ingen port av GCC (strulig minneshantering), däremot finns det åtminstone två C-Kompilatorer som kan hantera PIC16, en av dem har du testat, den andra är WIZ-C.
Användarvisningsbild
jesper
Inlägg: 722
Blev medlem: 12 juni 2006, 16:04:08
Ort: Laem Mae Phim, Thailand

Re: gcc + PIC12/16

Inlägg av jesper »

Börja använda en "riktig " processor istället :vissla:

Bild
bearing
Inlägg: 11676
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Re: gcc + PIC12/16

Inlägg av bearing »

En gissning är att anledningen är att PIC12/-16 hanterar pekare dåligt, och har hårdvarustack.
bos
Inlägg: 2314
Blev medlem: 24 februari 2007, 23:29:15
Kontakt:

Re: gcc + PIC12/16

Inlägg av bos »

jesper skrev:Börja använda en "riktig " processor istället
Nu handlar ju inte den här tråden om vems MCU kan sätta någons pappa i finkan eller vilken som kan koka kaffe snabbast, men jag skulle aldrig ta i en AVR med tång ens. Atmel fick sin chans att få mig som kund för 3 år sen, men de var tydligen för fina för det. Dessutom borde de veta (eller kanske inte, det är ju trots allt Atmel...) att det ska vara (större) mellanrum mellan "OFYOUR", så allt den där reklamskylten åstadkommer är att sänka deras anseende ytterligare.

bearing/Tomas: Efter lite mer googlande ser det ut som att ni har rätt angående i att det är minneshanteringen som är "skräp" samt avsaknaden av en vettig stack som är den stora anledningen till att det aldrig kommer att komma en gcc-port.

Som sagt, det är inget jag lider av då jag redan har tillgång till Hi-Techs kompilatorer (som f.ö. funkar ruggigt bra), men det är bra att kunna stilla en undran lite då och då.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: gcc + PIC12/16

Inlägg av sodjan »

Nu är det ju inte så at det inte *går* att fixa en C-kompilator till midrange PIC'arna,
det är bara så att den arkitektur som man har valt i GCC inte passar så bra just
mot PIC arkitekturen. Sen kan man sitta i sandlådan ock sprätta sand i ögonen
på varandra hur mycket man vill... :-)
Användarvisningsbild
psynoise
EF Sponsor
Inlägg: 7230
Blev medlem: 26 juni 2003, 19:23:36
Ort: Landvetter

Re: gcc + PIC12/16

Inlägg av psynoise »

Finns andra öppna alternativ till GCC som mer specificerar sig på små datorer:

http://sdcc.sourceforge.net/
arte
Inlägg: 317
Blev medlem: 13 januari 2006, 01:18:50

Re: gcc + PIC12/16

Inlägg av arte »

Det finns en llvm port till PIC16.

Kolla llvm.org

LLVM är bla en modern optimerad kompilator, säkert ungefär samma prestanda som gcc.
Skriv svar