|Compilers for Microchip PIC16C5x nzkite!foster@gvls1.VFL.Paramax.COM (1993-01-29)|
|Re: Compilers for Microchip PIC16C5x AMN@VMS.BRIGHTON.AC.UK (Anthony Naggs) (1993-02-05)|
|From:||Anthony Naggs <AMN@VMS.BRIGHTON.AC.UK>|
|Date:||Fri, 5 Feb 1993 01:25:00 GMT|
Foster Schucker, <email@example.com>, writes:
> I'm looking for a compiler for the PIC 16C5x series of microprocessors.
> I'd prefer C or Pascal, hosted on MS-DOS but beggars can't be choosers.
I was interested in this last September, so I contacted Arizona Microchip
in the UK. They directed me to a company, (only five miles up the road
from me!), who are UK agents for:
CC5X Small C Cross Compiler for the Microchip PIC16C5x Family
From: B. Knudsen Data Fax: +47 7 94 25 90
Well, I managed to find the information sheet, but I have mislaid the demo
disk & pricing details.
I considered the 'Small C' to be too small and expensive, also (IMHO) the
code generator seemed to be rather poor.
The [Arizona] Microchip distributor in your area should be upto date on
the available tools.
> The Microchip PIC 16C5x series of microprocessors is a small (18-28 pin)
> chip with 33 instructions, a 12 bit word, with 2K of EPROM. ...
They are very neat, I have used them in several projects. Also parts
introduced around last October include E^2 data retention and on-chip
ADCs. Motorola apparently introduced their 'insect' series of small
microcontrollers to compete about six months ago, but I don't have their
literature to compare architectures.
Why am I posting straight to comp.compilers?
I have been playing with my own version of the assembler, as Microchip
charge for their development tools. I have added features found in other
assemblers, such as include files, linking of intermediate object modules,
... but this is still somewhat short of my ideal.
Having seen the other C compilers' efforts I would like to write my own,
but the very restricted architecture looks like making efficient
optimisation difficult. So my first question, is there any literature on
optimising for strange architectures, (PICs have one register used for all
data transfers, several -bytes- of RAM, no stack space for data) ?
My second is related, what is a reasonable subset of C to support for such
a small processor?
I have also found that most people wanting to use PICs are electronics
engineers or hobbyists with little or no programming experience. So they
would like a simple language that is easy to learn (an hour or two for
basic use, :-), clear to read, with support for both tight and loose
coupling to the hardware features. Before I write a compiler for my own
language, I thought I should ask here for suggestions!
(As a guide: lack of a hardware stack rules out Forth and other threaded
languages, C & Pascal have too much syntax to learn).
Tempting fate, I anticipate that I would like to partition programs so
that they are spread between co-operating PIC processors. So a 'small'
OCCAM might be a good base, allowing simple addition of the parallel
processing syntax at a later date. Anybody have useful experience in
As usual, if you email suggestions to me I'll summarise in a week or two.
Or you can just write and chat about PIC processors!
Hope this is of interest,
Software/Electronics Engineer P O Box 1080, Peacehaven
East Sussex BN10 8PZ
Phone: +44 273 589701 Great Britain
Email: (c/o Univ of Brighton) firstname.lastname@example.org or email@example.com
Return to the
Search the comp.compilers archives again.