US giants hotly dispute chipset claims of GPS

Embedded code development software does not come cheap if you are developing tens of thousands of lines of code in a multi-engineer project.

On the other hand, if the project is smaller, and particularly if it avoids high-level languages, the tools can cost nothing because silicon vendors, eager to sell microcontrollers, give them away.

What you won’t get in a free tool is an all-singing integrated development environment (IDE) that will cover multiple manufacturers, but what you do get is a IDE on which products can be developed.


Free IDEs generally include basic tools for: project management, code creation, linking, code assembly, and debugging.


The huge user-base, and public beta version debugging, means these tools generally work well and are easy to use.

Beyond basic functions, there are additions tuned to the particular chip makers device strengths. “If you want to differentiate a product, you need something in the IDE to highlight the attractive features of your device,” says Colin Garlick, applications engineer at 16-bit microcontroller firm Cyan Technology.

In Cyan’s case, peripherals within its microcontroller (pictured above), can be allocated to a choice of pins through a switch matrix. In most microcontrollers pins have multiple functions, but a particular peripheral connection is only available through one pin.
Within its CyanIDE environment, Cyan’s pin assignment showcase is a drag-and-drop tool called the Configurator which automates initialisation code creation.

Automatic initialisation code creation is also the task of Visual Device Initialiser, a recent addition to Microchip’s MPLAB IDE.

Downloadable separately from MPLAB, Visual Device Initialiser only works with the firm’s C18 and C30 devices at the time of writing.

Basic functions in free IDEs tend to be expanded over time. Although MPLAB has always had a simple project management tool, one of its newest additions is the ability to work with third-party project management tools. Connections for Microsoft’s Visual Source Save multiple-user version control package, and a similar product called PVCS Version Manager are now included in MPLAB and there are a couple of others in the pipeline, according to Steve Diaper, senior application engineer at Microchip.

What does Diaper see in future MPLABs? “Possibly patch upgradeability,” he says. “The tools are getting large and, particularly in Europe, users don’t want to download a file that big for an update.”

IDEs from major chip makers tend to pick up functions and abilities together, as microcontroller makers watch the competition. “We keep a pretty close eye on what the other guys do,” admits Diaper. And the user-base it well tuned to possibilities. “Most changes are driven by customer requests,” he adds.

Away from free IDEs, there are IDEs from third-party supplies that you pay for. “You might use one for the look and feel,” says Diaper. For example, “there is one particular editor that a lot of embedded engineers like to use”.

For users who want a single user interface for microcontrollers from several manufacturers, Cosmic Software and Motorola subsidiary MetroWerks both have pay-for IDEs – and Metrowerks’ is free if you are using many of Motorola’s smaller microcontrollers, as it is Motorola’s standard IDE.

Anyone for a C compiler?

C compilers can be found for free, particularly if firms are looking to capture market share. UK fabless chip start-up Cyan Technology offers a free in-house-developed ANSI-standard C compiler for its 16-bit eCOG1 processor. Unlike many free compilers, this one has no functional limitations for which you have to pay extra.

Microchip has compilers for its C17, C18 and C30 ranges. For the mid-range C16 devices, third-party tool vendor Hi-Tech Software offers PICC Lite – a free slightly-limited C compiler for a small number of PICs, including two of Microchip’s newer 8-pin devices. The firm “provided this freeware compiler as a low-cost tool for hobbyists and students, however the licence allows its use for commercial purposes as well”, says Hi-Tech. “It is ideal as a teaching tool for an introduction into the ‘C’ language and embedded programming on a Microchip device.” Hi-Tech also has a free Z80 CP/M C compiler and many pay-for compilers.

Microchip also occasionally provides time limited compilers for other PICs during promotions. Motorola offers a free C compiler for many of its 8 and 16-bit microcontrollers along with CodeWarrior, the integrated development environment (IDE) from its MetroWerks subsidiary.

Unusually for an in-house IDE, CodeWarrior also supports several non-Motorola microcontrollers with C compilers, but you have to pay.

Free open-source compilers are available for popular 8-bit controllers available under GNU licences – so-called GCCs (GNU C compilers). “These are fairly easy to provide,” says Colin Long, microcontroller marketing director at STMicroelectronics. “Normally, a GCC does not give such optimised code, but they are a lower cost way for small companies to develop C.”

ST does not have its own C compiler. Instead Cosmic and Metrowerks provide professional compilers which work with ST’s own STVD7 embedded development environment for its ST7 microcontrollers. Both of these are available free in code-size-limited versions, said Long.

A quick search on Google will find GCCs for other processors including Motorola’s 68HC11 and Atmel’s AVR.

Staff

Leave a Reply

Your email address will not be published. Required fields are marked *

*