herunterladen
1996 Microchip Technology Inc. DS30154F-page 1
OVERVIEW
Serialization is a method of programming PIC16/17
microcontrollers whereby each chip is programmed
with a slightly different code. Typically, all locations are
programmed with the same basic code except for a few
contiguous bytes which are programmed with a differ-
ent number (referred to as ‘key’ or ‘ID number’ or ‘serial
number’) in each member. Typical applications of such
programming are remote transmitters for car alarms or
garage door openers where each unit must have a dif-
ferent access code.
Microchip offers a flexible SQTP program, whereby a
customer can simply specify the nature of serialization.
The ‘serial number’ generation and programming will
be taken care of by the factory.
1.0 SERIALIZATION SCHEME
SUPPORTED
1.1 Locations:
The serial number must reside in contiguous locations
with up to sixteen locations used. Furthermore these
locations must be coded as RETLW NN, where NN=
8-bit random code, in the finished product. For details
on how the
RETLW
instruction is typically used for seri-
alization purposes, please see Appendix A. The cus-
tomer code must be supplied without the serial code in
these locations. These locations must be blank or the
assembled value of a
RETLW H’FF’
instruction. in the
customer code provided to Microchip. Microchip will
insert the serial code at these locations during pro-
gramming. Hex files must be in Intel hex 8-bit merged
format. See Appendix B for details.
1.2 Numbering Sc
hemes:
Random: Truly random numbers are generated. How-
ever, there is no guarantee that the numbers will be
non-repeating although the probability of such an
occurrence will be infinitesimally small for a reasonably
large field.
Pseudo-Random: Pseudo-random sequences of
requested length (e.g. 32-bit long if four locations are
used) starting with a 'seed value' selected by the fac-
tory. The customer may optionally specify the starting
value. Pseudo-random sequences, by definition are
non-repeating until all possible values are used.
Sequential: Sequential numbers are generated. User
specifies the “starting number” and an increment value.
In sequential numbering, the least significant digit is in
the lowest memory location. The increment value must
be between 1 and 255.
Numbers are always in hex and not in BCD or any other
format.
SQTP
SM
Specification
for PIC16/17
Serialized Quick Turn Programming Specification for PIC16/17
This document was created with FrameMaker404