[time-nuts] I want a good micro-controller

Didier Juges didier at cox.net
Sat Aug 16 19:00:17 EDT 2008


That is an interesting thread. So I feel like I have to add my $0.02

I am a casual programmer. I got into programming when I had to, because it
was, at one time, the path of least resistance for something I wanted to do.
I am otherwise an EE. Today, I spend my time 50/50 doing hardware design and
software design. Most my software is embedded software, with a few
exceptions.

I am in the interesting position of having written (and re-written)
essentially the same desktop application under 4 different environments:
QuickBasic 4.5 (I can hear teeth clinching...), Microsoft QuickC 2.5
(MS-DOS), gcc under Linux and Visual Basic 6.0, so I think I can compare the
environments and the results pretty well.

While the visual appeal (eye candy) of the VB 6.0 version is undeniable, by
far the easiest to maintain (and with fewest bugs) is the gcc version.
Feature-wise, it matches the VB 6.0 version, but in different ways. It is
not as pretty (ncurses on an 80x24 terminal is NOT eye-candy) but it does
things that I have not even contemplated doing under VB.

Basic (and Visual Basic) go out of their way to make things easy, and as a
result allow way too many bugs (I call them undocumented features). They are
great to quickly simulate a user interface, or for a quick tool, but you do
not want to write large programs with it. Even though I know people who have
done it successfully, I myself have not been successful with it. It is just
too hard to do the right thing with Basic, it encourages slopiness.

Other than the PC, I write a fair amount of code for the 8051 and it's
variants, in C, using either the Keil compiler, or more recently the SDCC. I
have done a good bit of assembly for the Motorola 68HC05 way back (and the
8008 even farther back), and I am very glad this is over. The Motorola
architectures are usually pretty well done, but assembly? Pleeeeaaase...
(actually not quite over yet, I have my version of the 10 MHz-PPS divider
originally by TVB, mine runs on an 8051 and is written in assembly too)

In general, I find C programs easy to write and easy to maintain, and C
matches well with my hardware background.

Didier KO4BB




More information about the time-nuts mailing list