Exact match. Not showing close matches.
PICList
Thread
'[PIC] Bootloading 18F4610?'
2005\03\29@173930
by
Harold Hallikainen
After messing with bootloaders for a couple days, I note the following in
the datasheet for the 18F4610:
Note 1: Although it cannot be used in
PIC18F2X1X/4X1X devices in normal
operation, the TBLWT instruction is still
implemented in the instruction set.
Executing the instruction takes two
instruction cycles, but effectively results
in a NOP.
2: The TBLWT instruction is available only in
programming modes and is used during
In-Circuit Serial Programming™ (ICSP™).
Does this mean you can't do a bootloader for the 18F4610? What are the
"programming modes" that ICSP (and perhaps ICD-2) use? MPLAB shows table
write protect bits for the chip. Any ideas? I'd really like to get a
loader working for this chip!
THANKS!
Harold
-- FCC Rules Updated Daily at http://www.hallikainen.com
2005\03\30@034821
by
Jan-Erik Soderholm
Harold Hallikainen wrote :
> Does this mean you can't do a bootloader for the 18F4610?
After browsing the data sheet, yes, it looks like program
writes to the Flash isn't available on those chips...
Jan-Erik.
2005\03\30@043150
by
Mike Harrison
On Wed, 30 Mar 2005 10:48:20 +0200 (MEST), you wrote:
>Harold Hallikainen wrote :
>
>> Does this mean you can't do a bootloader for the 18F4610?
>
>After browsing the data sheet, yes, it looks like program
>writes to the Flash isn't available on those chips...
>
>Jan-Erik.
Microchip do not make it very clear in their selction tables, but you need to look for "Enhanced
flash" rather than "Standard Flash" - Enhanced means it can do self programming and LVP.
This is further confused by some errors in the tables - e.g. 18Fx52 is incorrectly listed as
standard flash.
2005\03\30@081034
by
Bob Ammerman
> Microchip do not make it very clear in their selction tables, but you need
> to look for "Enhanced
> flash" rather than "Standard Flash" - Enhanced means it can do self
> programming and LVP.
> This is further confused by some errors in the tables - e.g. 18Fx52 is
> incorrectly listed as
> standard flash.
Sorry, this is _not_ the distinction between standard and enhanced flash.
IIRC the enhanced flash has better endurance numbers (10x better?), and a
few other improvements.
Self-programmability is orthogonal to the standard/advanced flash issue.
Perhaps the 18F4610 deliberately does not have program writability for some
regulatory reason (like UL??) to ensure that the code can't get roached in a
running system.
Bob Ammerman
RAm Systems
2005\03\30@093220
by
Jan-Erik Soderholm
Bob Ammerman wrote :
> > Enhanced means it can do self programming and LVP.
> > This is further confused by some errors in the tables -
> > e.g. 18Fx52 is incorrectly listed as standard flash.
>
> Sorry, this is _not_ the distinction between standard and
> enhanced flash.
Right.
There is no way to tell, as far as I can see, if a particular PIC
has "Self-Programming" apart from reading the data
sheet or (sometimes) reading the device specific web page.
It would have been nice if that had been a parameter
in the "Parametric Search"...
Jan-Erik.
2005\03\30@102655
by
Mike Harrison
|
On Wed, 30 Mar 2005 08:07:05 -0500, you wrote:
>> Microchip do not make it very clear in their selction tables, but you need
>> to look for "Enhanced
>> flash" rather than "Standard Flash" - Enhanced means it can do self
>> programming and LVP.
>> This is further confused by some errors in the tables - e.g. 18Fx52 is
>> incorrectly listed as
>> standard flash.
>
>Sorry, this is _not_ the distinction between standard and enhanced flash.
>IIRC the enhanced flash has better endurance numbers (10x better?), and a
>few other improvements.
>
>Self-programmability is orthogonal to the standard/advanced flash issue.
It seems to correspond on all the devices I've looked at the datasheets for, as does the
correspondance between having LVP and self-programming - this makes sense, implying that the
difference is down to whether or not the chip has a charge-pump. If the latter is the always the
case then looking for a PGM pin in the pinout is a quick way to identify self-programmable parts.
There are errors in this column of the parametric tables on the Microhip website, where it differs
from what the datasheet says, and there are datasheets which do not mention self-programming on the
front page but do describe the Table Write procedure in the relevant section of the DS.
I'm not saying you are wrong but can you give an example of a device where standard/enhanced (in the
datasheet, not the tables) does not correspond to able/unable to do self-programming ?
2005\03\30@104758
by
Bob Ammerman
|
>>> Microchip do not make it very clear in their selction tables, but you
need
{Quote hidden}>>> to look for "Enhanced
>>> flash" rather than "Standard Flash" - Enhanced means it can do self
>>> programming and LVP.
>>> This is further confused by some errors in the tables - e.g. 18Fx52 is
>>> incorrectly listed as
>>> standard flash.
>>
>>Sorry, this is _not_ the distinction between standard and enhanced flash.
>>IIRC the enhanced flash has better endurance numbers (10x better?), and a
>>few other improvements.
>>
>>Self-programmability is orthogonal to the standard/advanced flash issue.
>
> It seems to correspond on all the devices I've looked at the datasheets
> for, as does the
> correspondance between having LVP and self-programming - this makes sense,
> implying that the
> difference is down to whether or not the chip has a charge-pump. If the
> latter is the always the
> case then looking for a PGM pin in the pinout is a quick way to identify
> self-programmable parts.
>
> There are errors in this column of the parametric tables on the Microhip
> website, where it differs
> from what the datasheet says, and there are datasheets which do not
> mention self-programming on the
> front page but do describe the Table Write procedure in the relevant
> section of the DS.
>
> I'm not saying you are wrong but can you give an example of a device where
> standard/enhanced (in the
> datasheet, not the tables) does not correspond to able/unable to do
> self-programming ?
The PIC16F87X (not A) is not enhanced flash, but it can self program.
Bob Ammerman
RAm Systems
2005\03\30@115356
by
Mike Harrison
|
On Wed, 30 Mar 2005 10:47:16 -0500, you wrote:
{Quote hidden}> >>> Microchip do not make it very clear in their selction tables, but you
>need
>>>> to look for "Enhanced
>>>> flash" rather than "Standard Flash" - Enhanced means it can do self
>>>> programming and LVP.
>>>> This is further confused by some errors in the tables - e.g. 18Fx52 is
>>>> incorrectly listed as
>>>> standard flash.
>>>
>>>Sorry, this is _not_ the distinction between standard and enhanced flash.
>>>IIRC the enhanced flash has better endurance numbers (10x better?), and a
>>>few other improvements.
>>>
>>>Self-programmability is orthogonal to the standard/advanced flash issue.
>>
>> It seems to correspond on all the devices I've looked at the datasheets
>> for, as does the
>> correspondance between having LVP and self-programming - this makes sense,
>> implying that the
>> difference is down to whether or not the chip has a charge-pump. If the
>> latter is the always the
>> case then looking for a PGM pin in the pinout is a quick way to identify
>> self-programmable parts.
>>
>> There are errors in this column of the parametric tables on the Microhip
>> website, where it differs
>> from what the datasheet says, and there are datasheets which do not
>> mention self-programming on the
>> front page but do describe the Table Write procedure in the relevant
>> section of the DS.
>>
>> I'm not saying you are wrong but can you give an example of a device where
>> standard/enhanced (in the
>> datasheet, not the tables) does not correspond to able/unable to do
>> self-programming ?
>
>The PIC16F87X (not A) is not enhanced flash, but it can self program.
These parts are shown as enhanced in the parametric table on the website.
As that was the first ever flash PIC, and would predate any naming convention, they probably just
never updated the datasheet
Any others ?
2005\03\30@123528
by
Wouter van Ooijen
> >The PIC16F87X (not A) is not enhanced flash, but it can self program.
>
> (snip)
>
> As that was the first ever flash PIC
Beg your pardon? The 16F877 the first ever flash PIC???? IIRC the
sequence was
16C84 (they called it EEPROM, but who cares), 16F84, 16F84, 16F877.
Wouter van Ooijen
-- -------------------------------------------
Van Ooijen Technische Informatica: http://www.voti.nl
consultancy, development, PICmicro products
docent Hogeschool van Utrecht: http://www.voti.nl/hvu
2005\03\30@132222
by
Mike Harrison
On Wed, 30 Mar 2005 19:33:23 +0200, you wrote:
>> >The PIC16F87X (not A) is not enhanced flash, but it can self program.
>>
>> (snip)
>>
>> As that was the first ever flash PIC
>
>Beg your pardon? The 16F877 the first ever flash PIC???? IIRC the
>sequence was
>
>16C84 (they called it EEPROM, but who cares), 16F84, 16F84, 16F877.
OK, if you want to get pedantic, "First ever flash pic with LV/self programming", which is what we
were talking about.
So if we assume that the 16F87x datasheet just never got updated (as the parametric table is
"correct"), can anyone come up with a meaningful counter-example to my original assertion that
"Enhanced Flash" does mean "self-programmable..." and "Standard Flash" means "Not
self-programmable"?
2005\03\30@134114
by
James Newton, Host
2005\03\30@141139
by
Bob Axtell
2005\03\30@141927
by
piclist
> There is no way to tell, as far as I can see, if a particular
> PIC has "Self-Programming" apart from reading the data sheet
> or (sometimes) reading the device specific web page.
In the PIC18 family, any PIC that has internal EEPROM is
self-programmable. Any PIC that does not have internal EEPROM is not
self-programmable.
--
John W. Temples, III
2005\03\30@142246
by
William Chops Westfield
On Mar 30, 2005, at 10:41 AM, James Newton, Host wrote:
>> There is no way to tell, as far as I can see, if a particular
>> PIC has "Self-Programming" apart from reading the data sheet
>> or (sometimes) reading the device specific web page.
>>
I thought that corresponded to the "ICD" capability in the
parametric table?
BillW
2005\03\30@153839
by
Harold Hallikainen
Thanks! So, I guess Enhanced really does have a meaning. I'm also
theorizing that a chip may have to have eeprom to be able to program its
own flash since programming flash uses the eeprom control registers.
That's how I first noticed problems with the 18F4610. I could not find
those registers!
A couple people on the Microchip Forums suggested the 18F2620. Looks like
I can just drop that chip in and get it to bootload.
THANKS!
Harold
> Microchip do not make it very clear in their selction tables, but you need
> to look for "Enhanced
> flash" rather than "Standard Flash" - Enhanced means it can do self
> programming and LVP.
> This is further confused by some errors in the tables - e.g. 18Fx52 is
> incorrectly listed as
> standard flash.
>
--
FCC Rules Updated Daily at http://www.hallikainen.com
2005\03\30@154753
by
Harold Hallikainen
I'm running the ICD-2 on the 18f4610, yet it appears the 18f4610 is unable
to do a bootload. The ICD-2, of course, uses Vpp and probably ICSP instead
of having the debug code actually program the flash.
Harold
{Quote hidden}>
> On Mar 30, 2005, at 10:41 AM, James Newton, Host wrote:
>
>>> There is no way to tell, as far as I can see, if a particular
>>> PIC has "Self-Programming" apart from reading the data sheet
>>> or (sometimes) reading the device specific web page.
>>>
> I thought that corresponded to the "ICD" capability in the
> parametric table?
>
> BillW
--
FCC Rules Updated Daily at http://www.hallikainen.com
2005\03\30@181153
by
Mike Harrison
On Wed, 30 Mar 2005 11:22:44 -0800, you wrote:
>
>On Mar 30, 2005, at 10:41 AM, James Newton, Host wrote:
>
>>> There is no way to tell, as far as I can see, if a particular
>>> PIC has "Self-Programming" apart from reading the data sheet
>>> or (sometimes) reading the device specific web page.
>>>
>I thought that corresponded to the "ICD" capability in the
>parametric table?
No - ICD refers to the extra debug hardware to support ICD. ICD uses HV programming so is
independent of the low-voltage programming capability.
2005\03\30@181641
by
Mike Harrison
On Wed, 30 Mar 2005 11:19:26 -0800 (PST), you wrote:
>> There is no way to tell, as far as I can see, if a particular
>> PIC has "Self-Programming" apart from reading the data sheet
>> or (sometimes) reading the device specific web page.
>
>In the PIC18 family, any PIC that has internal EEPROM is
>self-programmable. Any PIC that does not have internal EEPROM is not
>self-programmable.
This appears to be the case, which again suggests that the difference is the presence of the
charge-pump.
The 16F family is less consistent, but "enhanced flash" = "Self programmable" does still appear to
hold true
2005\03\30@190321
by
Chen Xiao Fan
I hear that for the 18F parts, all those produced by Microchip are
now based on their own 0.5um /0.4um technology and thus has EEPROM and
are self-programmable. All those without EEPROM are outsourced and
based on 0.35 technology and thus do not have EEPROM and are not
self-programmable. I think they are trying to create cheap parts
after facing strong competition from Atmel and others. I even hear
that they are going to reduce the price of 18F parts significantly
late this year.
I hear that they still have their OTP part using 0.7um technology.
They also have in-house 0.35 technology but now only for analog part.
Please note that all the above is not confirmed.
> {Original Message removed}
2005\03\30@190750
by
Chen Xiao Fan
I just get the latest 2005 selection guide and it lists
PIC16F87x as enhanced Flah.
> -----Original Message-----
> From: Bob Ammerman [.....rammermanKILLspam
.....verizon.net]
> Sent: Wednesday, March 30, 2005 11:47 PM
> To: Microcontroller discussion list - Public.
> Subject: Re: [PIC] Bootloading 18F4610?
>
>
> The PIC16F87X (not A) is not enhanced flash, but it can self program.
>
> Bob Ammerman
> RAm Systems
>
>
> --
2005\03\30@191147
by
Chen Xiao Fan
By the way, I hear that all those parts which have 8MHz INTOSC
are based on 0.4um technology so most of the 18F parts are based
on 0.4um technology except those without EEPROM (0.35um).
2005\03\31@072622
by
olin_piclist
Chen Xiao Fan wrote:
> I just get the latest 2005 selection guide and it lists
> PIC16F87x as enhanced Flah.
Really? Where? I'm looking at "2005 Product Selector Guide"
"January-March", and I can't find the 16F877 listed at all. I only see the
16F877A near the bottom of page 9. It is listed as enhanced, but of course
that is expected.
The 16F877 can write to its own program memory, but I'm quite sure is not
"enhanced" flash.
*****************************************************************
Embed Inc, embedded system specialists in Littleton Massachusetts
(978) 742-9014, http://www.embedinc.com
2005\03\31@190015
by
Chen Xiao Fan
On page 9, you will find that 16F870/871/872 and 16F873A/874A/876A/877A
as enhanced Flash. That is why I say it lists PIC16F87x as enhanced
Flash. They list 16F873/874/876/877 as matured products in page 20
and do not mention they are enhanced Flash or not. However I would
guess that they are similar to 16F870/871/872 and are indeed
"enhanced Flash".
The other 16F parts listed as Enhanced Flash are 16F818/819/87/88.
In page 82, all the future 16F parts are listed as standard Flash
as well as the newly announced 16F parts are standard Flash (16F785
and 16F913/914/916/917 LCD MCU.
For the 18F parts, only 18Fxx10 (cheaper alternative to xx20)
and 18Fxx90 (LCD parts) are listed as standard Flash. Please
take note that 18F242/248/252/258/442/448/etc (see page 20-21)
are listed as mature product.
Xiaofan
> {Original Message removed}
'[PIC] Bootloading 18F4610?'
2005\04\01@013030
by
Peter
On Wed, 30 Mar 2005, Wouter van Ooijen wrote:
{Quote hidden}>>> The PIC16F87X (not A) is not enhanced flash, but it can self program.
>>
>> (snip)
>>
>> As that was the first ever flash PIC
>
> Beg your pardon? The 16F877 the first ever flash PIC???? IIRC the
> sequence was
>
> 16C84 (they called it EEPROM, but who cares), 16F84, 16F84, 16F877.
The 16C64 really had EEPROM, the first flash pic was 16F84 afaik. The
difference between EEPROM and FLASH is that EEPROM uses avalanche
breakdown of an insulator to (dis)charge the floating gates, and flash
uses the tunnel effect for the same purpose. This results in a 10^2
difference in cycles till failure in favor of flash. (the tunneling
process is less destructuve than avalanche)
Peter
2005\04\01@025425
by
William Chops Westfield
On Mar 31, 2005, at 11:22 AM, Peter wrote:
> The difference between EEPROM and FLASH ...
I thought that as far as Microchip was concerned, the difference between
flash and EEPROM was strictly which buzzword marketing wanted to apply
that year, and that all PICs were (technically) EEPROM ?
BillW
2005\04\01@115036
by
Harold Hallikainen
I've never dug into the physics of memory too much (not much more than it
had something to do with charge on floating gates). Looking at the first
page of the datasheet for the 18F2620, we see the flash rated at 100,000
cycles, and the eeprom rated at 1,000,000 cycles. This appears to conflict
with below. Also, I'd expect to generally need more data cycles than
program cycles.
A few differences from my "outside the chip" view are that eeprom (at
least on chip eeprom) can be written to on a byte by byte basis while
flash is done in blocks (64 bytes or whatever). External SPI and I2C
eeprom often also do block writes. Block writes speed write time since the
5 to 15 ms write time results in the whole block of many bytes being
written in the period required to write just one byte in non-block writes.
It makes the software a bit more complicated since we generally have to
keep track of block boundaries, may have to do a read-modify-write of the
entire block, and need to flush buffers to the memory when we're done so
the last partial block's data actually gets written.
My first eeprom was the Xicor X2816, which was great. I just dropped it in
where I had a 2kbyte static RAM. I changed my code a bit to allow for the
write time, and it worked! I later changed to the Mostek, now CSF
Thompson, I think, MK48T02 TimeKeeper RAM, which is nonvolatile RAM with a
real time clock in the top 8 locations or so. A lithium battery is
included in the package. Kinda neat, 'til the battery dies...
Harold
> The 16C64 really had EEPROM, the first flash pic was 16F84 afaik. The
> difference between EEPROM and FLASH is that EEPROM uses avalanche
> breakdown of an insulator to (dis)charge the floating gates, and flash
> uses the tunnel effect for the same purpose. This results in a 10^2
> difference in cycles till failure in favor of flash. (the tunneling
> process is less destructuve than avalanche)
>
--
FCC Rules Updated Daily at http://www.hallikainen.com
2005\04\02@053002
by
Peter
|
On Thu, 31 Mar 2005, William Chops Westfield wrote:
> On Mar 31, 2005, at 11:22 AM, Peter wrote:
>
>> The difference between EEPROM and FLASH ...
>
> I thought that as far as Microchip was concerned, the difference between
> flash and EEPROM was strictly which buzzword marketing wanted to apply
> that year, and that all PICs were (technically) EEPROM ?
>
> BillW
I think that the difference is between EPROM and EEPROM, these two being
very close to each other, with the exception that EEPROM can remove
charge from the floating gates by applying a voltage of the opposite
direction than EPROM to something (probably to the whole substrate of
the memory cell area). Flash is very different in that the flash cell
has some part of the structure where there is an extremely thin
insulator area towards the floating gate. Tunneling occurs across this.
There are some texts on this which are worth reading. A semiconductor
process book from a university library should have this. I am no expert
on this.
Peter
More... (looser matching)
- Last day of these posts
- In 2005
, 2006 only
- Today
- New search...