EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

The big picture - Cheap chips, cheap/free compilers?

Started by mc December 23, 2004
Greetings,

I've done a good bit of microcontroller programming in the past but have 
been mostly away from it for a few years.  When last active, I was mostly 
using PICs with MPLAB and assembly language, and some 8051-architecture 
chips with ASM51.  I have a PICstart-Plus and, at work, a universal 
programmer.  Mostly, I do small, simple things that involve precise timing. 
That is, my microcontroller projects are more electronics than computers.

What is the current situation regarding cheap, easy-to-use chips and 
development tools?  Is the best choice still PIC and MPLAB?  What about free 
compilers?  In particular, are the following well regarded?

- HiTech PICC Lite   (how well does it mesh with MPLAB?)
- BASCOM LT  (for 8051; and for what else?)
- MikroBASIC   for PIC   (usable within MPLAB?)
- MikroPascal   for PIC   (usable within MPLAB?)

I am not particularly attached to the PIC architecture except that I have 
quite a few chips on hand.

I know all the major high-level programming languages (C, Basic, Pascal, 
etc.) and have no qualms about using them; that is, there are none that I 
intensely dislike.

Also, where are the good, moderated, web-accessible forums for discussing 
embedded design these days?  The Usenet newsgroups seem to be dying.

Any advice and suggestions?

Many thanks!




You will find articles about real-time and embedded system
design at:

http://www.eventhelix.com/RealtimeMantra/

Deepa
--
http://www.EventHelix.com/EventStudio
EventStudio 2.5 - Embedded System Modeling with Sequence Diagrams

On Thu, 23 Dec 2004 13:09:11 -0500, "mc" <mc_no_spam@uga.edu> wrote:

[snip...snip...]
>What is the current situation regarding cheap, easy-to-use chips and >development tools?
...
>I am not particularly attached to the PIC architecture except that I have >quite a few chips on hand.
You should at least take a look at Atmel's AVR family. Very comfortable to program in assembly (32 general purpose registers versus one working register in the PICs) and a good fit for comiler writers so you have a choice of several C compilers.
>Also, where are the good, moderated, web-accessible forums for discussing >embedded design these days? The Usenet newsgroups seem to be dying.
There is an active user community operating out of the AVR Freaks site: http://www.avrfreaks.net. (might be down for maintenance) For general embedded info, http://www.embedded.com -- Rich Webb Norfolk, VA
"mc" <mc_no_spam@uga.edu> wrote in message 
news:41cb0e95$1@mustang.speedfactory.net...
> Greetings, > > I've done a good bit of microcontroller programming in the past but have > been mostly away from it for a few years. When last active, I was mostly > using PICs with MPLAB and assembly language, and some 8051-architecture > chips with ASM51. I have a PICstart-Plus and, at work, a universal > programmer. Mostly, I do small, simple things that involve precise > timing. That is, my microcontroller projects are more electronics than > computers. > > What is the current situation regarding cheap, easy-to-use chips and > development tools? Is the best choice still PIC and MPLAB? What about > free compilers? In particular, are the following well regarded?
Things have moved on considerably. Apart from the AVR mentioned by someone else, 32 bit systems based on the LPC2000 Philips ARM chips are available, and worth investigating: http://groups.yahoo.com/group/lpc2000/. Similar devices are becoming available from Atmel. Leon
"Rich Webb" <bbew.ar@mapson.nozirev.ten> wrote in message 
news:663ns01j8pu42ap5iv11ls0ufbenl1dp05@4ax.com...
> On Thu, 23 Dec 2004 13:09:11 -0500, "mc" <mc_no_spam@uga.edu> wrote: > > [snip...snip...] >>What is the current situation regarding cheap, easy-to-use chips and >>development tools? > ... >>I am not particularly attached to the PIC architecture except that I have >>quite a few chips on hand. > > You should at least take a look at Atmel's AVR family. Very comfortable > to program in assembly (32 general purpose registers versus one working > register in the PICs) and a good fit for comiler writers so you have a > choice of several C compilers.
Thanks. I was thinking about going over to AVR five years ago. As long as I'm hacking assembly language it might as well be an easier assembly language than PIC. I see also that there is a free BASCOM for AVR.
You could also look at the Z8 Encore! family from Zilog.. really nice mcu
with many peripheral functions that the others didn't offer or they can't
run concurrently (SPI, I2C, SCI -with IrdA possibilities-..) and the dev kit
with all needed software for only 39$..
but you can even develop for free, because the prog/debug interface need
only an RS232 adaptor and you can find a free assembler here :
http://john.ccac.rwth-aachen.de:8000/as/download.html
the web page wasn't really updated since a moment, but there is always the
last release available for download..
(I contacted the author and he will add the last two instructions -that
Zilog added in the documentation- in the next release)

and there are free programmer & debugger software available here :
http://z8encore.sourceforge.net/


"Fred*" <tmp@mail.com> wrote in message 
news:41cbc91c$0$24549$8fcfb975@news.wanadoo.fr...
> You could also look at the Z8 Encore! family from Zilog.. really nice mcu
Thanks. Speaking of which... How cheap are embedded PCs (DOS 8088-compatible systems) these days? That would be my choice of system for developing anything complicated, because we have such very good development tools (and I mastered them in the 1980s when programming a real 8088 PC).
Not much written, so I'll add some comments....

On Thu, 23 Dec 2004 13:09:11 -0500, "mc" <mc_no_spam@uga.edu> wrote:

>I've done a good bit of microcontroller programming in the past but have >been mostly away from it for a few years. When last active, I was mostly >using PICs with MPLAB and assembly language, and some 8051-architecture >chips with ASM51. I have a PICstart-Plus and, at work, a universal >programmer. Mostly, I do small, simple things that involve precise timing. >That is, my microcontroller projects are more electronics than computers.
Assembly coding remains a viable and excellent way to do your projects.
>What is the current situation regarding cheap, easy-to-use chips and >development tools? Is the best choice still PIC and MPLAB? What about free >compilers? In particular, are the following well regarded?
You don't say how long you've been away and it's not clear whether your projects are hobbyist or professional, issues such as price sensitivity (which can eliminate choices such as Cygnal, for example) and power consumption (battery?), but there are some excellent options out there. I haven't done a survey, but: (0) I like Microchip a lot because of their support for me in the past. I work in a small company and we don't purchase 10^5+ CPUs -- more in the 10^3 and maybe 10^4, on occasion, per year. We are NOT big potatoes to them. But we've received quite excellent and direct support when and where we've needed it. I've been able to call up their support and talk with VERY SMART people who know intimate details and are very logical and careful. Their chips include very good brown out detection and often the kind of mix of features we need. Also, they are broadly carried by Digikey. The ICE2000 system is excellent, but very expensive -- but it's available if you need it. The cheaper programmers are easily available through a variety of sources. Voltage ranges of operation are from about 2.5V to 5.5V or so. (1) The TI MSP430 chips are pretty easy to use and, from a hardware designer's view, have some darned excellent features. Digikey carries many of them, in qty 1s, so they are easily accessible to those in the US and Canada. The programmer/debugger pod is very cheap and appears to work pretty well using a parallel port. I believe USB is in the market, or coming out soon. GNU C is available, but so are some excellent compilers from folks who seem to support their products well. I have some strong opinions about the instruction set (which looks encouragingly similar to a PDP-11 instruction and yet is a disappointing bastard of almost heart-breaking and wrong-minded compromise, to me) but the hardware features are wonderful and the instruction set is 16-bit and a whole lot nicer than the PIC. These don't operate above 3.6V (well, some do -- but only the older ones.) (2) The Atmel AVR chips are also pretty easy to use and I've enjoyed them a lot. Their is a pretty nice programming board (no debugger, per se) that is the STK500 (or some later incarnation) and includes a lot of sockets and buttons and LEDs and is very handy and reasonably priced. There are (to me) newer incarnations called the ATmega and ATtiny and I do not know if these have built in debugger features -- they might. The instruction set is reasonably nice, too. However, all of my support from Atmel has been terrible, without exception. It has taken as long as 10 months to get two samples of an announced chip -- and that was more than six months after they first started shipping samples to "bigger customers." I have to go though a local FAE who then forwards my questions back -- it can take several days to get my first return, though it often happens in about one day. But this 1-2 day loop can lead to extended discussions that simply take too long. I use Atmel only with the idea that I cannot count on timely support -- because I'm far too small. It is my impression that they don't even bother pretending that I'm worth caring about. ... (I keep a supply of bubble-gum Atmel AT90s, PICs, and TI MSP430's laying around for use.)
>- HiTech PICC Lite (how well does it mesh with MPLAB?) >- BASCOM LT (for 8051; and for what else?) >- MikroBASIC for PIC (usable within MPLAB?) >- MikroPascal for PIC (usable within MPLAB?)
The 8051 still has that BASIC52 floating about. Not sure where it's been ported, though. Might look around. I still have the free manual that Intel used to give away for it. Nice.
>I am not particularly attached to the PIC architecture except that I have >quite a few chips on hand. > >I know all the major high-level programming languages (C, Basic, Pascal, >etc.) and have no qualms about using them; that is, there are none that I >intensely dislike.
Since you are talking more about small and precise timing things, I'd stick with assembly. No matter what you choose, that's usually available, free, updated regularly, works like clockwork, doesn't do unexpected things, etc. And you have full control.
>Also, where are the good, moderated, web-accessible forums for discussing >embedded design these days? The Usenet newsgroups seem to be dying.
Just do a search with google. You'll find them all that way, I think. Jon
On Thursday, in article
     <41cb0e95$1@mustang.speedfactory.net> mc_no_spam@uga.edu
     "mc" wrote:
>Greetings, > >I've done a good bit of microcontroller programming in the past but have >been mostly away from it for a few years. When last active, I was mostly >using PICs with MPLAB and assembly language, and some 8051-architecture >chips with ASM51. I have a PICstart-Plus and, at work, a universal >programmer. Mostly, I do small, simple things that involve precise timing.
That all depends on your definition of 'precise', one man's 'precise' is another man's missed mars by 3 light years!
>That is, my microcontroller projects are more electronics than computers.
LOTS and lots of microcontrollers have all sorts of built in timers to greatly assist with this sort of timing issue for MOST cases, depending on how precise you need to be.
>What is the current situation regarding cheap, easy-to-use chips and >development tools? Is the best choice still PIC and MPLAB? What about free >compilers? In particular, are the following well regarded? > >- HiTech PICC Lite (how well does it mesh with MPLAB?) >- BASCOM LT (for 8051; and for what else?) >- MikroBASIC for PIC (usable within MPLAB?) >- MikroPascal for PIC (usable within MPLAB?) > >I am not particularly attached to the PIC architecture except that I have >quite a few chips on hand.
There are many manufacturers PIC and 8051 variants abound as do ARM chips as well as other manufacturers TI, Atmel, Renesas, Zilog, Rabbit and many others. What you need depends on your application requirements and future enhancements.
>I know all the major high-level programming languages (C, Basic, Pascal, >etc.) and have no qualms about using them; that is, there are none that I >intensely dislike.
One of the easiest ways to find tools for higher levels I find is start at the GNU compilers see what architectures they support as an alternative that assists at least evaluation of microcontroller WITHOUT huge expense.
>Also, where are the good, moderated, web-accessible forums for discussing >embedded design these days? The Usenet newsgroups seem to be dying.
I have not found many web-accessible forums that have been much use to ME other may have but then again I prefer to use the internet for when I need to find things not be permanently glued to it, which web encourages.
>Any advice and suggestions?
Search for microcontrollers on places like google and the like, search for semiconductor manufacturers and what they produce, also look at SBC and add on module manufacturers and see what controllers they use.
>Many thanks!
-- Paul Carpenter | paul@pcserviceselectronics.co.uk <http://www.pcserviceselectronics.co.uk/> PC Services <http://www.gnuh8.org.uk/> GNU H8 & mailing list info <http://www.badweb.org.uk/> For those web sites you hate
mc wrote:
> Greetings, > > I've done a good bit of microcontroller programming in the past but have > been mostly away from it for a few years. When last active, I was mostly > using PICs with MPLAB and assembly language, and some 8051-architecture > chips with ASM51. I have a PICstart-Plus and, at work, a universal > programmer. Mostly, I do small, simple things that involve precise timing. > That is, my microcontroller projects are more electronics than computers. > > What is the current situation regarding cheap, easy-to-use chips and > development tools? Is the best choice still PIC and MPLAB? What about free > compilers? In particular, are the following well regarded?
One thing that separates uC is on-chip debug. Everyone these days has Flash, and simulators, but not all have on chip debug. If you already know the 80C51, then look at Silicon Labs,for the C8051F family., These all have >=25Mips cores, high performance Analog, and on Chip Debug. The C8051F330P is in a DIP20 package Systems start from $25 Philips also have an expanding family of LPC900 80C51 variants, with lower cost / lower performance point than SiLabs. STm have the uCPSD34xx series, with USB and debug in early release. Winbond have a HW-Debug 80C51 variant comming. -jg

The 2024 Embedded Online Conference