Unoffical empeg BBS

Quick Links: Empeg FAQ | RioCar.Org | Hijack | BigDisk Builder | jEmplode | emphatic
Repairs: Repairs

Topic Options
#327673 - 19/11/2009 15:59 Another PIC C compiler question
Barefoot Andrew
new poster

Registered: 19/11/2009
Posts: 2

Dear All,

I'm new around these parts, and empegbbs was recommended to me for asking a PIC question...

I need to choose a C compiler for a commercial PIC project, and compiler support for PIC16s, PIC18s and PIC24s will be needed.

Options in the running include single and multi-family compilers from Microchip (MPLAB), HTSoft, CCS and mikroElektronika, and I'm looking for anything good or bad that folk have to say about these products.

I'm aware of this thread which references the CCS compiler, but I've heard elsewhere that this product has some annoying idiosyncrasies.

I've also seen this thread about the MPLAB option.

Does anyone have experience of the mikroElektronika options ?

Most recommendations seem to point to the HTSoft compilers, but as we need three developer licences for three families this could get pricey. I'm reluctant to OK this sort of spending unless utterly convinced about product quality.

Thanks,
A.

Top
#327696 - 21/11/2009 07:04 Re: Another PIC C compiler question [Re: Barefoot Andrew]
altman
carpal tunnel

Registered: 19/05/1999
Posts: 3457
Loc: Palo Alto, CA
Not really a very demanding use, but I used the CCS compiler for the PICs in the empeg. It was a little strange (you can't hide the design of the PIC totally!) but cheap and worked for us...

Top
#327705 - 21/11/2009 20:47 Re: Another PIC C compiler question [Re: Barefoot Andrew]
pca
old hand

Registered: 20/07/1999
Posts: 1102
Loc: UK
Hi.

I have used both the Hi-tech and the CCS PIC C compiler, and to be honest I prefer the CCS one.

The Hi-tech one is a more ANSI-compliant compiler, to be sure, but the CCS one wins out for me because it has inbuilt support for all the hardware. You don't have to drive everything yourself, you just have a function already defined to do it. Timers, interrupts (very easy to use), Uarts, etc, all just pretty much work.

It's also cheaper.

That said, it does have it's quirks. There are oddities about including files, and if you're insistent on writing C in a traditional method, as per linux for example, you may well find it a little limited. But taken as a very high-level macroassembler with all the useful functions already defined and pretty well documented, it's very versatile. It supports pretty much all current PICs, and can be interfaced with MPLAB very easily. I've written dozens of projects with it and find it pretty easy to use.

I haven't tried the other one you mention.

pca
_________________________
Experience is what you get just after it would have helped...

Top
#327738 - 24/11/2009 10:02 Re: Another PIC C compiler question [Re: pca]
Barefoot Andrew
new poster

Registered: 19/11/2009
Posts: 2

Thanks to both of you.

A decision will be made soon, and I'll report back here anon with some findings for the benefit of future enquirers.

A.

Top
#327740 - 24/11/2009 10:45 Re: Another PIC C compiler question [Re: altman]
sn00p
addict

Registered: 24/07/2002
Posts: 618
Loc: South London
Originally Posted By: altman
It was a little strange (you can't hide the design of the PIC totally!) but cheap and worked for us...


Reminds me of the old adage..."You can't polish a turd".

I'd imagine all the PIC compilers have funnies and quirks, every single one I have tried here has produced incorrect code after very little effort (even MPLAB, microchips own). I'd definately do as patrick says, treat it as a high level macro assembler and triple check the code output to make sure it's doing what you want it to do.

Although I've never used the PIC version, it might be worth looking at Crossworks (www.rowley.co.uk), we use the ARM version (which is a fancy gui on top of the gnu tools), but it's faultless and it works how I expect it to work as a programmer. On MSP, PIC and AVR they have their own compilers, so I don't know how good they are, but their support is top notch.

Top