tags:

views:

347

answers:

4

I have been using IAR so far, but it crashes sometimes and doesn't have code completion. Also, the other dev environments I use are eclipse based. Which one should I buy?

+2  A: 

I have worked quite extensively with CrossWorks for MSP430 and I liked it a lot better than IAR. The IDE has a lot of mature IDE features, including code completion, source code browser, connection to version control, extensive debug options, etc. I also really liked the way CrossWorks handled connecting to the target using JTAG, allowing you to just connect without downloading a new software image so you can just reset the target etc. On top of that it seemed that CrossWorks was a 'lighter' software package than IAR in terms of memory load and loading time.

Anyway, you should try it yourself by just downloading the IDE from their website and getting a 30-day trial license from them (if that's not enough they will renew it for another 30 days).

General CrossWorks for MSP430 webpage: http://rowley.co.uk/msp430/index.htm
CrossWorks for MSP430 version 2.0 documentation: http://www.rowleydownload.co.uk/documentation/msp430_2_0/index.htm

Albi
My experience with IAR in general is that their support is poor. My limited experience with Rowley is that they are very responsive.
Clifford
My experience with IAR has been excellent. Maybe I have found some "Interesting" problems with their tools with good demonstration cases, but I have had a couple of early release betas to try against my code. I would agree that Rowley support is very good.
Ian
+1  A: 

For my money (or rather my employer's) it comes down to a choice between IAR and Crossworks. I have not heard rave reviews about the TI offering (often the opposite). I use IAR and have used the early pre-release (Beta) versions of the Rowley products.

I would agree that the IAR editor is not world beating. I use my own favourite editor that does all of the code completion and template expansion that I could wish for. It is possible to make the IAR Embedded Workbench open my editor in preference to their own when I open a file. The code generation and support for new devices has been excellent. I was an early adopter of the F5X series and at the time IAR was the only toolset that could compile for this family of processors. IAR have also been updating their tools regularly with new features that are being rolled out between all of the variants of their tools.

If you use FreeRTOS then there is a free plugin for the IAR tools that displays the task states and memory usage.

Support for the IAR and Crossworks products is excellent. The product development engineers are active in the Yahoo MSP430 newsgroup and I have found both to be very responsive to questions posed by users.

Ian
What editor do you use?
michael
I use ED for Windows ( http://getsoft.com/ ). It is one that was used at a previous company and, having learnt all its foibles and configured all the code templates I have just kept using it. Editor wars, like coding language wars, seem to be the most futile conversations on software user groups and fora.
Ian
+5  A: 

The current version of Code Composer Studio is Eclipse based, so that may be an option.

If your existing IAR compiler is working for you and it is just the IDE stability and code completion that you are interested in, then you might consider using plain Eclipse/CDT or even the free Visual C++ Express Edition using a "makefile project", and simply invoke the IAR command line tools directly or via a makefile to avoid the IDE.

Using VC++ works well in my experience, but takes some initial setting up. You have a number of choices for setting this up; you could create a makefile to work with Microsoft's nmake utility (similar but not identical to GNU make), you could use GNU make and a traditional makefile, you could use a different build manager altogether, or you could use IAR's command line build utility (iarbuild.exe). This last option is perhaps the simplest, and works well if other team members want to continue using the IAR IDE. You use IAR's IDE to maintain the project (add files, remove files, change compiler/linker options etc.), but use Visual Studio for editing and building your project day-to-day. For code completion and browsing to work, you need to add all your sources to the VC++ project (often the tedious part because VC++'s "add files" will not recurse subdirectories), and add all the include search paths for the project (including the compiler's default paths) to the VC++ project's include paths. You also need to add any command line or compiler predefined macros for the project to the macros list; this allows it to parse conditionally compiled sections accurately and 'grey-out' disabled code sections. The include and macro lists can usually be copy & pasted directly from the IAR IDE project settings.

One problem with VC++ Express is that it does not provide a flexible way to customise the debugger invocation, and will try and use the VC++ debugger rather than C-Spy. However you can a custom menu item to the "Tools" menu launch C-Spy. Launching C-Spy from the command line is dealt with in the link above. Another option is to place the build commands into a batch file and launch the debugger on successful compilation; then use the batch file as the custom build command rather than iarbuild.exe directly; but this can get annoying if you just wanted to build the code without execution. Using a batch file is a simple way to add pre/post build steps that you do not want to add to the IAR project itself.

I use the VC++ Express IDE regularly for projects created using Code Composer Studio, Keil uVision, Microchip's MPLAB, (using their various command line project build tools), and and plain GNU make managed projects. Despite its quirks and inflexibility in some areas, as a (free) code editor it is excellent and makes long coding sessions much easier than the relatively primitive compiler vendor's IDE's. Sometimes (especially when debugging) I end up flipping between VC++ Express and the compiler vendor IDE, but in most cases this is handled well by automatic file change detection in each editor; and I have only seldom lost edits by making unsaved changes in both editors then saving one version.

Clifford
A: 

When I was using the MSP430 I found that the best IDE for it was CodeComposer. Also since it is eclipse based I find it very easy to use and familiar not many crashes at all that I remember. also the price is cheaper when considering something like IAR.

I am using IAR for the STM32 works great I found some weird issues about it. lots of crashes though. I would go with CodeComposer

jramirez
Ya it does crash a lot!
michael