> My question pertains to the use of other microcontrollers.
> Why is the MicroChip PIC controller so much better than other =
> controllers like ATMEL or ZILOG? Is there an application that would be =
> better suited to one of the other manufacturers? I am kind of new to the =
> microcontroller world and I see that there are quite a few =
> manufacturers. On what grounds do these companies compete? I really just =
> want verification that I have gotten lucky and chosen the best =
> controller out there.
> Thanks in advance,
The Microchip PIC series of controllers is excellent because the people at
General Instrument a few years ago were trying to produce a dirt-cheap micro
as simply as possible and as it happened the simplicity of their micro's
design resulted in a micro which (in modern forms) is both very fast and
generally straightforward to program.
The PIC is essentially the only micro in its price range which can easily run
5,000,000 "normal" instructions per second; even slightly-higher-end micros
such as the Dallas Semiconductor 80C520 IMHO don't quite (though with the
80C520 it depends what you define as a "normal" instruction). For applica-
tions where execution speed is critical, the PIC is a winner.
The PIC also has a tendency to be available. Surprisingly, while Microchip is
nowhere near as large as Motorola Semiconductor and all of Microchip's CPU's
are single-sourced, it seems that Microchip parts almost never go on alloca-
tion and they are easy to get. Digi-key is sometimes out of certain PICs, but
it doesn't take long for them to get more. By contrast, HC05's can sometimes
be on allocation for months.
The PIC's primary limitations currently fall in two areas as I see it:
[1] Addressing modes: while the IRP/RP0/RP1 arrangement of the 16Cxx is about
as good as a 14-bit instruction format could allow, it does divide the RAM
of the PIC into rather discrete pieces. Also, the existence of only a
single index register makes operations such as memory-to-memory copying
difficult.
[2] Development systems: while PIC compilers are definitely improving, as yet
none has achieved anything near the quality and stability of some compil-
ers for the 8x51 which /just plain work/. Hopefully this situation will
improve.
In message <spam_OUT01BC3401.94068C40TakeThisOuTdialup40.eramp.net> .....PICLISTKILLspam@spam@MITVMA.MIT.EDU
writes:
> ------ =_NextPart_000_01BC3401.94746940
> Content-Type: text/plain; charset="us-ascii"
> Content-Transfer-Encoding: quoted-printable
>
> Hi all,
> My question pertains to the use of other microcontrollers.
> Why is the MicroChip PIC controller so much better than other =
> controllers like ATMEL or ZILOG? Is there an application that would be =
> better suited to one of the other manufacturers? I am kind of new to the =
> microcontroller world and I see that there are quite a few =
> manufacturers. On what grounds do these companies compete? I really just =
> want verification that I have gotten lucky and chosen the best =
> controller out there.
Troy,
There is always the new Atmel AVR microcontroller. The AT90S1200 is
supposed to be available now, but I have yet to get hold of one.
Being EEPROM based, it seems to be aimed directly in competition
with the 16C84. It has several features that make it more attractive
than an 16C84 and other PICs in general.
o a richer instruction set, 87 instructions including an add
with carry.
o 32 w registers. The end of the w reg bottle neck. And you can
access 2 registers in one instruction. eg add r1, r2.
o Single clock cycle instruction execution for most instructions.
The PIC divides its clock by for for each instruction. On
this basis, for a given clock frequency, the AVR is roughly 4
times faster than a PIC.
o 24MHz max clock speed. Compared to 10MHz for a C84. This is
nearly two and a half times quicker and when combined with
the single cycle instruction execution and the richer instruction
set makes for something in excess of 10 times the speed.
o Analogue comparator.
o 20 pins - 2 extra i/o per package.
o Direct reads of the port pins rather than a register aimed at
overcoming the read-before-write problem on PICs.
o Different interrupt vectors for different interrupts.
Future 20 pin AVRs will have more counters, PWM and UART. 40 Pin
versions are on the cards.
Things I've found from the data sheets which aren't as good as the
PIC are:
o The watchdog can be switched off by your application. This seems
crazy to me.
o There is no way to differentiate between a POR reset and a watchdog
reset.
o The I/O pins can only sink reasonable currents.
o There is no RC oscillator option.
I understand that Atmel isn't the only company bringing out chips
like this, and wonder if Microchip have something up their sleeves
which would wipe the floor with an AVR.
I checked the prices, about 1.50 UKP for 100 off. Less than I pay
for 16C84, more than the 15C56.
Any comments from the Microchip guys on this list?
At 08:02 AM 19/3/97 -0800, you wrote:
>I've heard that Motorola has something called PIC killers,
>or something similar. Anyone have info on this?
they have MC68HC805K3 like K1 but EEPROM (~1K)
I would not call that a killer. dont know if they are available
or not at this time. Had bad luck with K1 so have decided to avoid
Motorola if possible
In message <.....332FFB4D.5B2DKILLspam.....cyberstop.net> Peter Baines writes:
> Mayes uk wrote:
[snips]
> >
> > Any comments from the Microchip guys on this list?
> >
> > Regards,
> >
> > Mike Watson
>
>
> Mike,
> Can you point us a web resorce where we can look at these little
> beasties in mor detail PLS..
> --
>
Peter,
In message <EraseME01BC3401.94068C40spam_OUTTakeThisOuTdialup40.eramp.net>, Troy Powledge
<tpowspam_OUTERAMP.NET> writes
>Hi all,
>My question pertains to the use of other microcontrollers.
>Why is the MicroChip PIC controller so much better than other controllers like
>ATMEL or ZILOG? Is there an application that would be better suited to one of
>the other manufacturers? I am kind of new to the microcontroller world and I
see
>that there are quite a few manufacturers. On what grounds do these companies
>compete? I really just want verification that I have gotten lucky and chosen
the
>best controller out there.
>Thanks in advance,
I don't think that PICs are so much better. They have a grotty
architecture compared to the Z8, which is *much* nicer. On the other
hand, PICs are much easier to get hold of in small quantities,
development software and hardware are available for next to nothing, and
the documentation can be obtained very cheaply, or free.
>I don't think that PICs are so much better. They have a grotty
>architecture compared to the Z8, which is *much* nicer. On the other
>hand, PICs are much easier to get hold of in small quantities,
>development software and hardware are available for next to nothing, and
>the documentation can be obtained very cheaply, or free.
The thing that bothers me about PICs (and I think its the most important for
use in control systems) is the inability to read internal ROM to perform a
checksum or equivalent integrity check. So for low end stuff that has any type
of real world control - I just don't use them.
For low end stuff I use the 89C2051 by Atmel or 68HC705C8 by Motorola.
The high end PIC stuff is about on par with HC11 type devices.
Rgds
Mike
Some say there is no magic but, all things begin with thought then it becomes
academic, then some poor slob works out a practical way to implement all that
theory, this is called Engineering - for most people another form of magic.
Massen
> Why is the MicroChip PIC controller so much better than other
> controllers like ATMEL or ZILOG? Is there an application that would be
> better suited to one of the other manufacturers?
An intrinsic short-coming of most of the PIC range derives from
their Harvard architecture.
There is no way for a running program to read the code space of
the device, so a program can't do a run-time checksum on itself.
This makes the PIC unsuitable for some so-called 'high reliability'
applications.
(The top-end PIC's, the 17Cxx series, _can_ read their
program memory and thus do this checksumming. Indeed,
these PIC's can write to, and thus program, their
program memory.)
>The PIC's primary limitations currently fall in two areas as I see it:
>
>[1] Addressing modes: while the IRP/RP0/RP1 arrangement of the 16Cxx is about
> as good as a 14-bit instruction format could allow, it does divide the
RAM
> of the PIC into rather discrete pieces. Also, the existence of only a
> single index register makes operations such as memory-to-memory copying
> difficult.
Actually, I think this demonstrates one of the advantages of choosing
the PIC range. There's a very healthy spread of performance/features
from which to select, ranging from the 12C508 to the 17C756. And this
is without the mind-numbing plethora of chips that Phillips, for example
,
have in their 8051 range.
The 14-bit core is middle of the range and has only one index register.
But the 16-bit core (17Cxx) has two index registers (but doesn't come
in anything smaller than a 40-pin dip).
If the 0.5k pages of the 12-bit 16C56 are a problem, then use the
2k pages of the 14-bit 16C556. If page swapping is _still_ a nuisance
then use the 8k pages of the 17C42.
Select almost any PIC and its possible to easily step-up to another
PIC that has: more memory; or more I/O; or some A/D; or a UART; or
a h/w multiply; etc.
What's more, these steps are usually associated with a price increment
of about a quarter of a dollar. Go from 0.5k eprom to 1k eprom: add
25c. Go from no data eeprom to 64 bytes of data eeprom: add 25c...
This means that device selection is low risk. If you find you're
running out of grunt you don't have to do a complete re-design.
Conversely, at the beginning of the project you can simply select
the 'largest' device in the package size you're using and later on,
with the code finished, change down to the nearest fitting chip.
Antti Lukats wrote:
>
> At 08:02 AM 19/3/97 -0800, you wrote:
> >I've heard that Motorola has something called PIC killers,
> >or something similar. Anyone have info on this?
>
Tjaart van der Walt KILLspamtjaartKILLspamwasp.co.za
_____________________________________________________________
| Another sun-deprived R&D Engineer slaving away in a dungeon |
| WASP International http://wasp.co.za |
| GSM and GPS value-added applications |
| Voice : +27-(0)11-622-8686 | Fax : +27-(0)11-622-8686 |
|_____________________________________________________________|
> My question pertains to the use of other microcontrollers.
> Why is the MicroChip PIC controller so much better than other =
> controllers like ATMEL or ZILOG? Is there an application that would be
> better suited to one of the other manufacturers? I am kind of new to
> the microcontroller world and I see that there are quite a few =
> manufacturers. On what grounds do these companies compete? I really
> just want verification that I have gotten lucky and chosen the best
> controller out there. Thanks in advance, Troy Powledge
Troy
I do not neccessary think that the PIC microcontroller is
neccesarily the best microcontroller in general, but I like them
because you get such a wide variety all with different flavours
which makes them ideal for a large number of uses. Also, as far as
cost is concerned they are fast, reliable, cheap, easy to use and
programming tools and compilers are readily available. I use them
whenever the job is a reasonably small and easy to implement, or
whenever I really need the speed that a PIC can offer.
But for more complicated jobs I still prefer the 8051 or Atmel
microcontrollers. The main reason is that I like to program in high
level languages likes C and the compilers you get for the 8051 type
of microcontrollers are miles ahead of the ones you get for the PIC.
To put this to a test, try finding a PIC C compilers that can do
floating point arithmetic.
Anyway, PIC micronontrollers are a good point to start, and depending
on you application it might just yet turn out the best choice for
you! : )
I have used the 68HC11. Good points:
The assemblers for it and several of the HC11's relatives are free and run
on any MSDOS machine. GCC can compile code for it if you set it up right.
The addressing space is linear with 64 K possible. It reminds me a lot
of the 6502 without nearly as much trouble addressing things.
Bad points:
Trying to find them can be a real pain at times. The HC11 comes
in a 52-pin PLCC package that makes prototyping somewhat more of a headache
if one wants to wire-wrap. The performance is good for a 8-bit micro, but
many of the PIC's appear to do certain things much faster due to their
architecture and availability in higher clock speeds.
If one wants a 68HC11 without the A/D converters, I think the
68HC705 in a 40-pin package is available.
As with many things, it all depends upon what you need to do and
how much you can afford to do with available resources.
Werner Terreblanche wrote:
>
> To put this to a test, try finding a PIC C compilers that can do
> floating point arithmetic.
This is an unusual test for a C compiler. I have seen very few
applications that would use a Microchip PIC class of processor
where floating point support is a requirement.
There is a tech tip on floating point for the current MPC compiler
and future releases of the MPC compiler supports a float data type.
> Floating point arithmetic is a necessity when using the PIC14000
> processor. The A/D converter calibration is difficult at best if you
> do not use floating point math (to correct for the calibration
> constants).
> Joe Dowlen wrote:
>
> > Floating point arithmetic is a necessity when using the PIC14000
> > processor. The A/D converter calibration is difficult at best if you
> > do not use floating point math (to correct for the calibration
> > constants).
>
> Good point.
Is there any reason why the floating point maths should be done in the PIC
rather than in the PC that programs them? One of the great things about PICs
after all is their ISP'ability and the ease of writing C to interface with
their programming logic. I would think a program to read out the calibration
constants, scale them into whatever format the PIC software "really" needs,
and then write them back [elsewhere] would be the most sensible way of handl-
ing PIC14000 calibration.
Mike wrote:
>
> >I don't think that PICs are so much better. They have a grotty
> >architecture compared to the Z8, which is *much* nicer. On the other
> >hand, PICs are much easier to get hold of in small quantities,
> >development software and hardware are available for next to nothing, and
> >the documentation can be obtained very cheaply, or free.
>
> The thing that bothers me about PICs (and I think its the most important for
> use in control systems) is the inability to read internal ROM to perform a
> checksum or equivalent integrity check. So for low end stuff that has any type
> of real world control - I just don't use them.
>
> For low end stuff I use the 89C2051 by Atmel or 68HC705C8 by Motorola.
>
> The high end PIC stuff is about on par with HC11 type devices.
>
> Rgds
>
> Mike
Here in Italy is very easy to find and cheap and easy to program (like
pic),the SGS Thompson ST62xx family.
If you need more inf. you can see the SGS THOMPSON site and if you need
a cheap to bild programmer I can send you the scheme and software.
I am Vinay. I am working as freelance designer for micro controllers. I
have worked on Z86E30 and MC68HC705P9P. Recently I have staretd working
on ST62T10 also.
Please send me the details of programmer mentioned in your mail.
Please also let me know which is the least expensive and easily
available ST micro.
Do you know of any mailing list that talks about ST6 micros.
Thanks and regards,
Vinay Chaddha
luca.brentel wrote:
>
> Here in Italy is very easy to find and cheap and easy to program (like
> pic),the SGS Thompson ST62xx family.
> If you need more inf. you can see the SGS THOMPSON site and if you need
> a cheap to bild programmer I can send you the scheme and software.
>
> Luca
lb> pic),the SGS Thompson ST62xx family.
lb> If you need more inf. you can see the SGS THOMPSON site and if you
lb> need a cheap to bild programmer I can send you the scheme and
lb> software.
i have tried the 6265. Fine chip but had some trouble to get more chips :-)
what type of programmer and soft do you use?
cu Dieter
... Mama, 's Joggingbrot is' weggelaufen!