Searching \ for '[PIC]: 16F84 vs. 16F877' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: techref.massmind.org/techref/microchip/devices.htm?key=16F
Search entire site for: '16F84 vs. 16F877'.

Exact match. Not showing close matches.
PICList Thread
'[PIC]: 16F84 vs. 16F877'
2001\05\15@135423 by joan

flavicon
face
Appreciated PicListers,

After some months working with 16F84s I have decided to go
one step ahead and start with 16F877s (I need more I/O lines !).
Before burning my first 16F877 I would like to know whether
there is anything that I should take into account about 16F877s
(some particularity, oddity, brain breaking caprice of the IC
designer, etc...). If I take a 16F84 program and burn it into
a 16F877, will it work ? (that is, init sequences of the several
I/O devices not in 16F84 are mandatory to make a 16F877 behave
as a basic 16F84 ?)

Thankx !

--------------------------------------------------------------
    Joan Ilari                 e-mail : spam_OUTjoanTakeThisOuTspamilari.org
    Barcelona                   www   : http://www.ilari.org
    Spain                      Voice  : +34 93 431 96 39

"I've seen things you people wouldn't believe. Attack ships on
fire off the shoulder of Orion. I watched C-beams glitter in
the dark near the Tannhauser gate. All those moments will be
lost in time, like tears in rain. Time to die..."
                                              -Blade Runner-
---------------------------------------------------------------

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email .....listservKILLspamspam@spam@mitvma.mit.edu with SET PICList DIGEST in the body


2001\05\15@140528 by rchock, Steve

flavicon
face
Joan,

Just waych out for the A/D converter. Make sure you have the appropriate
bits
set for tha ADCON0 and ADCON1 registers. On power-up they are set for analog
so
it might give you some problems. Many of us here on the PICList have gotten
bit
by this.

Good luck!!
Steve


Steven Kosmerchock
Radio Frequency Systems
Phoenix,  Arizona  USA
(WORK) http://www.rfsamericas.com

http://www.geocities.com/researchtriangle/lab/6584

"Great spirits have always encountered violent
oppposition from mediocre minds."--A.Einstein





{Original Message removed}

2001\05\15@145158 by Drew Vassallo

picon face
>designer, etc...). If I take a 16F84 program and burn it into
>a 16F877, will it work ? (that is, init sequences of the several
>I/O devices not in 16F84 are mandatory to make a 16F877 behave
>as a basic 16F84 ?)

No, this won't work.  One reason is that the RAM occupies different
addresses on either chip.  So you have to start your "CBLOCK" at a different
address.  Also, the RAM addresses that are shared across banks are in
different locations.  Plus, there are some registers and configuration bits
that probably should be set that are not present on the '84.  Finally, some
of the interrupt and A/D converter bits are relocated into the PIE and PIR
registers.  Of course, if you're using an '84 you don't have to worry about
the A/D :)

My suggestion is to run through the 877 datasheet and make sure that
everything is covered.  It should only take a short while to go through and
make sure that you are initializing everything properly.  As far as your
code itself, yes, it is directly portable.  The banks for the port pins and
such should be the same, with the addition of PORTC in Bank0.

--Andrew
_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email listservspamKILLspammitvma.mit.edu with SET PICList DIGEST in the body


2001\05\15@171126 by Olin Lathrop

face picon face
> After some months working with 16F84s I have decided to go
> one step ahead and start with 16F877s (I need more I/O lines !).
> Before burning my first 16F877 I would like to know whether
> there is anything that I should take into account about 16F877s
> (some particularity, oddity, brain breaking caprice of the IC
> designer, etc...). If I take a 16F84 program and burn it into
> a 16F877, will it work ? (that is, init sequences of the several
> I/O devices not in 16F84 are mandatory to make a 16F877 behave
> as a basic 16F84 ?)

You should be fine, mostly...

The 16F84A has the RAM in bank 1 mapped to bank 0.  This allows you to
ignore the current page when accessing variables.  That won't work on a 877,
although the 877 has the last 16 bytes of each bank mapped to the same
memory.

The 84 only has 1K code space so you can ignore code page issues.  The 877
has four 2K code pages.

As with most PICs that have A/D, the 877 wakes up with some of the
pins configured as analog inputs.  Yes, I think this is stupid too.
Otherwise, the additional peripherals wake up so that you can pretty much
ignore them if you don't want to use them.


********************************************************************
Olin Lathrop, embedded systems consultant in Littleton Massachusetts
(978) 742-9014, .....olinKILLspamspam.....embedinc.com, http://www.embedinc.com

--
http://www.piclist.com#nomail Going offline? Don't AutoReply us!
email EraseMElistservspam_OUTspamTakeThisOuTmitvma.mit.edu with SET PICList DIGEST in the body


More... (looser matching)
- Last day of these posts
- In 2001 , 2002 only
- Today
- New search...