View previous topic :: View next topic |
Author |
Message |
Potential Customer Guest
|
CCS C vs Microchip C18 |
Posted: Fri Jul 28, 2006 2:33 pm |
|
|
Hello,
I'm looking for opinions on whether I should buy the latest CCS C compiler or the Microchip C18 compiler. I'm currently at the Microchip Master's conference and both compilers are being sold at half price. Which is better?
Thanks for the help.
P.C. |
|
|
dyeatman
Joined: 06 Sep 2003 Posts: 1934 Location: Norman, OK
|
|
Posted: Fri Jul 28, 2006 2:47 pm |
|
|
I have used both, and the CCS is more "bang for the buck" in my opinion. Lots of library support and the project wizard are two big features. This excellent forum is another great "feature". There are several comparisons out there you can pick up via Google if you want more details |
|
|
Potential Customer Guest
|
|
Posted: Fri Jul 28, 2006 2:54 pm |
|
|
Could you point me to a comparison. I googled it but I found only 1 comparison that was outdated.
Thanks. |
|
|
dyeatman
Joined: 06 Sep 2003 Posts: 1934 Location: Norman, OK
|
|
|
Mark
Joined: 07 Sep 2003 Posts: 2838 Location: Atlanta, GA
|
|
Posted: Fri Jul 28, 2006 5:59 pm |
|
|
The PCH compiler is far cheaper than the C18.
CCS provides many great examples.
CCS many useful setup functions.
Serial setup is easier
I2C is easier
Handling interrupts is easier
However, CCS doesn't allow pointers to constants. I really like that about C18. CCS doesn't allow separate files to be compiled and then linked. C18 does. C18 provides code that you can see\feel\touch for some functions that CCS just sort of magically puts in there. C18 updates are free.
These are a few of the differences. If you are a beginner or new to C. Then CCS is probably a better choice. I started with CCS and moved from PCH to C18 for the PIC18's. I have never went back. I do still use PCM however. Now CCS is coming out with v4 of their compiler. It probably addresses many of my dislikes with their compiler. But given its newness, I feel that it will be a while before its up to snuff. |
|
|
Potential Customer Guest
|
|
Posted: Fri Jul 28, 2006 8:24 pm |
|
|
Thanks for the help.
Right now at the Microchip Masters Conference I can buy the Microchip PIC18 compiler for 247.00 (50% off). I did get to look at the new CCS Version 4.0 compiler here. They did add arrays of bits and pointers to constants. It also supports the PIC24, dsPIC30Fxxx and dsPIC33Fxxx. And, according to the paper I received from the CCS booth the compiler can now compile units separately into relocatable object files, and then link the object files into the final build. I'm not crazy about the new interface though, it is the same as Microsoft's Office 2007 ribbon menu system, but it doesn't have the same polished look. Thanks.
P.C. |
|
|
asmallri
Joined: 12 Aug 2004 Posts: 1635 Location: Perth, Australia
|
|
Posted: Fri Jul 28, 2006 9:54 pm |
|
|
The C18 compiler is free (with minor restrictions). This is the student version (therefore the minor restrictions). You are free to use it for commercial use.
I use both compilers. For production hardware projects I use CCS. It is more feature packed (in terms of libraries supported). I find it quicker to produce commercial production software with the CCS compiler. I have found that the CCS compiler produces a smaller code footprint (significantly smaller) than the C18 compiler - even the commercial C18 with full optimization enabled.
The linkable modules and objects with C18 are good but I have found the linear mechanism with the current CCS compiler to enable me to produce and debug code quicker. I am probably one of the few not interested in the move by CCS to version 4 as I think this will be suffer the same limitations (from my perspective) that C18 presents for me today.
With CCS you get limited suport when you purchase the compiler (30 days) and then have to pay maintenance fee for on-going support. I have no objection with this model however the maintenace fee is ridiculously high in comparison to the purchase price.
For development of software drivers that I sell to other developers then CCS presents a problem because the addressable market (those using C18) is significantly larger than those using CCS.
The port between CCS and C18 and visa versa is not trivial and in my mind, makes it impractical to develop to both compilers for driver development.
So - if I had a clean slate and wanted to develop hardware products I would use CCS version 3.xxx
If I wanted to develop drivers to sell to software developers I would use C18 (the free version). _________________ Regards, Andrew
http://www.brushelectronics.com/software
Home of Ethernet, SD card and Encrypted Serial Bootloaders for PICs!!
Last edited by asmallri on Sat Jul 29, 2006 9:29 am; edited 1 time in total |
|
|
ckielstra
Joined: 18 Mar 2004 Posts: 3680 Location: The Netherlands
|
|
Posted: Sat Jul 29, 2006 8:41 am |
|
|
Quote: | With CCS you get limited suport when you purchase the compiler (30 days) and then have to pay maintenance fee for on-going support. I have no objection with this model however the maintenace fee is ridiculously high in comparison to the purchase price. | Note that you are not required to buy the maintenance contract immediately. You can wait several years until you see a new version with features / bug fixes you like and than purchase the maintenance. It automatically stops again after 1 year and is more like buying an upgrade and receiving a 1 year maintenance with that.
Quote: | So - if I had a clean slate and wanted to develop hardware products I would use CCS version 3.xxx | From experience with the 3.1xx to 3.2xx release I agree that v4.xxx will be alpha versions for at least the next comming 6 months.
If I had a clean slate for developing hardware products I would skip Microchip at all. The smaller PIC processors are OK for the very specific cheap markets they are designed for, but the PIC18 and higher processors have to compete with 'real' processors and fall short. Besides that, how can you trust a company with 84(!) different processor models in the PIC18 series in production? Have you seen the long hardware errata list for some of these chips? Because of the huge number of chip models volume in each model is relative low and it takes Microchip forever to fix these problems.
For a new project we are considering to use an ARM based processor. Similar prices for the processors, comparable power consumption, way more memory (up to 1Mb ROM, 64kb RAM internal), larger choice in internal devices (for example 6 UARTs, ethernet, 3DES, etc). But above all, easier to program because of no bank switching in RAM and a RAM stack pointer instead of a limited hardware stack.
A rethoric question: Have you ever wondered why there is no free GCC compiler for the PIC? |
|
|
arnadan
Joined: 11 Nov 2013 Posts: 13
|
|
Posted: Fri Nov 29, 2013 12:07 am |
|
|
After reading this post some weeks ago I decided to buy the CCS compiler. Unfortunately I have to say that I already regret this decision!
CCS IDE is very awkward to use and so far I could not get the linker to work (as per default CCS only compiles all the code which means that one has to include C files with code instead of only the headers).
Debugging does not work for me yet. I can download the software but then get some strange error message at the end. When connecting to my target for debugging I get an error telling me that the driver for the programmer is not installed (this message shows after I have successfully programmed my target. So why should there suddenly be a driver problem?)
Sent support requests for both those topics to CCS weeks ago but no response yet. |
|
|
asmallri
Joined: 12 Aug 2004 Posts: 1635 Location: Perth, Australia
|
|
Posted: Fri Nov 29, 2013 2:38 am |
|
|
arnadan wrote: | After reading this post some weeks ago I decided to buy the CCS compiler. Unfortunately I have to say that I already regret this decision!
CCS IDE is very awkward to use and so far I could not get the linker to work (as per default CCS only compiles all the code which means that one has to include C files with code instead of only the headers).
Debugging does not work for me yet. I can download the software but then get some strange error message at the end. When connecting to my target for debugging I get an error telling me that the driver for the programmer is not installed (this message shows after I have successfully programmed my target. So why should there suddenly be a driver problem?)
Sent support requests for both those topics to CCS weeks ago but no response yet. |
I do not use the CCS IDE - I use MPLAB. Unfortunately Microchip have dropped support for the MPLAB IDE in favour of their "improved" MPLAB-X IDE however the MPLAB-X IDE is absolute rubbish and I would not wish it on anyone. _________________ Regards, Andrew
http://www.brushelectronics.com/software
Home of Ethernet, SD card and Encrypted Serial Bootloaders for PICs!! |
|
|
Ttelmah
Joined: 11 Mar 2010 Posts: 19515
|
|
Posted: Fri Nov 29, 2013 5:08 am |
|
|
It's no more work to have #include for the sources, than it is to include the headers. Provided these are written and working, they add almost no time to the compile, and have the advantage, that it allows RAM space to be saved, since the compiler can then optimise this, which can't be done in the same way when pre-compiled libraries are used.
One critical thing, make sure you turn off the 'call tree file' option in your compiles. For some reason, this absolutely 'grinds'. Takes a 30000+ line compile, from taking a second, to a couple of minutes, and this then makes one hate having to include extra code....
Programming, and debugging, don't use the same interface to the chip. Can you tell us the actual error message?.
You did presumably get an almost immediate 'we have got your message' type acknowledgement from CCS?.
Best Wishes |
|
|
Gabriel
Joined: 03 Aug 2009 Posts: 1067 Location: Panama
|
|
Posted: Fri Nov 29, 2013 7:55 am |
|
|
I own/use PCM and PCH with MPLAB 8.85 and 8.92
Im pretty sure you can download Older revisions of MPLAB.
I love this setup.
Ive used BOTH C18 and CCS. CCS is "Over 9000" times better.
CCS handles "everthing" for you... makes getting code ready faster and easier.
In my experience... CCS support, the few times ive needed it, has been great.
Its Thanksgiving in the US... so getting help this week is probably going to be slow.
The microchip forum is like the youtube comment section... unlike this forum which is one of the greatest things ever.
G. _________________ CCS PCM 5.078 & CCS PCH 5.093 |
|
|
|