I
design and build small devices, usually for friends and family, using PIC
microcontrollers. I would very much like to be able to make a decent living
from it but I'm not a real software developer and have no formal training in
the discipline.
My
day job is as a software tester for such organisations as Symbian, T-Mobile,
Psion, IBM, BT and quite a few others so I can tell people what is wrong with
their software, it's just that I couldn't do any better myself!
To
date I have a few nice little projects in the wild. A data logger for a
racecar, a fuel computer for a dive boat, a security camera and recorder
controller and last and most certainly the most exciting, a radio controlled
firework ignition system.
It
is the latter that finally convinced me that for speed of development, code
quality, portability, ease of use, ram re-usability - need I go on? ...to use C instead of assembler. It was a
tough decision as I had got pretty good at assembler, so good in my own opinion
that I had finally figured out why they got around to writing C in the first
place. Pointers were obvious to me, variables, arrays, you name it. So why not
just make life easier and use C? Simple, I didn't want to pay for it, as I
don't make any money out of it.
So,
now skip forward a year or so. I had tried the free download restricted version
of anyones compiler I could get my hands on. I eventually decided CC5X was the
one as it claimed to be restricted but in such a way that by compiling several
small modules, the restrictions could effectively be ignored. I persevered with
this for some time until I finally decided to revert to assembler because the
life of a poor C programmer was so miserable.
I
couldn't tell you what made me take one last look at the contenders in the PIC
compiler market but nevertheless I did and for some reason decided to spend
hard earned money on SourceBoost IDE. It advertised itself to me as pretty much
MPLAB but in C, with all the associated goodies such as a simulator, for not a
large capital outlay.
The
rest is history. I am totally converted. Life is bliss. I like my ideas to be
manifested in a working device quickly, less I lose interest, and with this
development environment that is easily realised. I re-coded my atrocious
attempt at CC5X C code into decent standard C in no time at all and the results
were almost instantaneous. Working code in hours instead of weeks. I then moved
on to my star project, the fireworks controller, and because of the plummeting
defect rates and speed of development I ported the whole lot to C in no time at
all, and previously unidentified or unfixable problems were gone. I can now
apply my professional software testing techniques to the code and then test the
functional aspects of my own work and the results are great.
What
caused me to start writing this report tonight was deciding to use the sample
LCD code to update the boat fuel computer. I thought I would need the LCD plug
in to test it, so I needed to post a report on my web site to get a free one!
As it happened it was quicker to port the project to C than it was to write
this report. I grabbed the sample code from the SourceBoost web site, changed a
few config items, changed the target device, programmed my chip, connected 5
volts and it just worked! First time, no bugs, job done.
Thanks
Pavel and Dave. Now can I please have a free plugin license?