Hi all,
I'm AVR and 68H12 programmer; haven't try PIC yet.
Anyone have a good suggestion on C compiler for PIC?
It would be nice if there is something similar to Avrcodevision in AVR.
By the way, i haven't seen any good C compiler for 68H family either?
Hi,
ccs is the good compiler, i think ia perfect for a PIC mcu. HiTech have a C compiler, IAR too. Mcrochip have a C, and some other picC and ......i forgot another, but i thing ccs is very good.
I am not good at C and so when I found a compiler in BASIC, that to a quality product made me very happy. Good support through forums, good documentations, good reading material and good development boards.
They have compilers for dsPIC which should seal the issue in their favour.
b.t.w. the also have compilers for C and PASCAL too!
For PIC, I personally still prefer assembly language for PIC.
Using assembly language, you can take full control to the controller.
For those who are familiar with C code, you can use assembler macro to make your code looks similar to C.
Besides, I found that assembly language sound promise for the latest model.
Assembler is good for the low and mid range pics, but some of the newer types like the dsPics and the Pic24's are true 16 bit devices with quite large resources, IE: 128K of rom and 16K of ram.
So quite sophisticated software is possible which would be hard to maintain in assembler. The Pic30 tools are very good, being a port of the gcc compiler. This is the best toolset ive used with pics.
I guess every compiler is OK, until its limits limit your programming code/wishes/expectations. I've been using Hi-tech Picc and fortunatelly found some workarounds to got what I wanted.
I have personally used CC5X and mikroC. Both work ok but mikroC has very ineffecient code generation vs CC5X. I compiled the same application in both compilers. In CC5X it was about .8K of code. The same application in mikroC was 1.6K of code - basically twice the size. Also, CC5X integrates with MPLAB and mikroC doesn't. MikroC has a nice library but I much prefer efficient code.