pic c compiler gcc
Faisal Khan said:
hi...
i want to use PIC 16F84, 16F877 and AVR in my project....can any one of u has used some C based cross compiler for these controllers?....
i have used ke*il (for x51)...is there any similar software awailable for PIC or AVR?....?
bye
The only C compiler that is made for both AVR and PIC is IAR, but IAR compilers are very expensive, but also some of the best.
IAR is fully ANSI-C which makes the code easier to port from PIC to AVR and other MCU's.
www.iar.com
For AVR you can choose between:
IAR: Embedded Workbench Atmel AVR
www.iar.com
HP InfoTech: CodeVisionAVR
www.hpinfotech.ro
ImageCraft: ICCAVR / ICCtiny:
www.imagecraft.com/software
AVR GCC (freeware): **broken link removed**
For PIC you can choose between:
IAR: Embedded Workbench PICmicro 16/17 / PICmicro PIC18 / dsPIC:
www.iar.com
CCS: PCB / PCM / PCH / PCW / PCWH
www.ccsinfo.com/picc.shtml
HI-TECH: PICC / PICC-18 / dsPICC
www.htsoft.com
Microchip: MPLAB C17 / C18 / C30 (no compiler for PIC16)
www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1475&category=devSoftware
Bytecraft: MPC PIC 12/14/16/17:
www.bytecraft.com/mpccaps.html
B Knudsen Data: CC5X / CC8E
www.bknd.com
Pavel: C2C:
www.picant.com
For PIC I would choose between IAR, HI-TECH and CCS (and maybe Microchip's own?). For AVR you can choose between all four compilers, they are all good. I general AVR compilers are better quality than PIC compilers, probably because of the more C friendly architechture of AVR compare to PIC, but it have improved with the new PIC18 architechture.
AVR was designed with help from IAR to begin with, to make it more C friendly.
When the PIC was first designed, it wasn't meant to be used with a compiler, but only assembly.
In general good quality AVR compilers are cheaper than PIC compilers.
The easiest compilers to use for beginners is CodeVision (AVR), ImageCraft (AVR) and CodeVision (PIC). All three has a CodeWizard, to generate fast code for init. and drivers. Something similar can be found with IAR's MAkeAPP. CodeVision and CCS are not fully ANSI-C compatible, this probably helps them getting more userfriendly and device specific, but it also makes it harder to port the code for another compiler/architechture.
The only free compiler available is AVR GCC for AVR, but the quality is still good and it's ANSI-C.
IAR and HI-TECH is probably the two compilers that is most similar to KEIL, they are both ANSI-C and very professional (and expensive).
If money is not an issue I would probably choose IAR, you can get IAR compilers for almost every 8-, 16- and 32-bit bit architechture at the available, including AVR, PIC and the x51 which you are used to.
Here's a good article about wich C compiler to choose for AVR:
Which C-compiler should I choose?
The IAR compiler will not be reviewed at this stage, as this document is intended for beginners to AVR, and quite frankly the IAR compiler is out of the price range of most beginners (and some businesses!). It is however reputed to be a good compiler and those interested should check out.
**broken link removed**