File: README.TXT

package info (click to toggle)
picp 0.4d-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 272 kB
  • ctags: 444
  • sloc: ansic: 4,614; makefile: 63
file content (111 lines) | stat: -rw-r--r-- 4,892 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
picp README -- version 0.4d (20 February, 2001)

for installation instructions, please read INSTALL.TXT.

for help and a list of supported devices type "picp" without any other
arguments.  more complete documentation may be viewed at
http://www.cosmodog.com/pic/picpdoc.html.

your PICSTART Plus programmer must have version 2.01.00 firmware or
later; go to http://www.microchip.com to download the latest. You can
check the version number of your firmware by typing
	picp /dev/ttyS0 12c508 -v
where /dev/ttyS0 is the serial device the PICSTART is attached to and
12c508 is any supported PIC device.

either Motorola S records or Intel Hex records may be used for loading
code to the PICSTART Plus (the format is auto-identified).  only Intel
Hex records are currently supported for reading code from the PICSTART
Plus.

picp is free software; please read the included file LICENSE.TXT.
comments, suggestions, installation problems, successes, etc. should
be directed to apines@cosmodog.com.

the PICSTART Plus was reverse engineered without the benefit of any
documentation or help from Microchip.  if you have any insights or
useful information into the meaning of the remaining processor
definition codes please pass them along (see picdev.h for the current
state of knowledge).  at some point MPLAB was modified to send yet
more part-specific data at start up using a previously unused command
(0x82).  picp 0.4c supports this new data but I have no idea what it
does or why it wasn't needed before.  anyone with a beter understanding
of the PICSTART Plus protocol is encouraged to come forward.

-----------------------------------------------------------------------------
REMAINING DEFICIENCIES:

picp does not program or read the data space of devices which have it
(e.g., PIC16F83, PIC16F84, etc.).

writing ID locations is not supported yet.

picp cannot write to the oscillator calibration space of devices with
more than one calibration word (specifically the PIC14000) via the
command line flag '-wo'.  Since the calibration space is actually in
program space you should be able to write to this region with '-wp',
but it is untested.  '-ro' should work but is untested on the PIC14000.

the code protect masks in the part definitions are incomplete for most
devices.  this will not affect the ability to program parts but it does
prevent picp from detecting if a device is code protected and
generating the appropriate warning.

-----------------------------------------------------------------------------
IN CASE OF DIFFICULTY:

every effort was taken to define all devices correctly, but the possibility
of errors still exists.  if you have difficulty with a particular device,
type "picp <device>" to dump what picp believes are the characteristics of
the device.  Please forward any errors or bugs to apines@cosmodog.com.

-----------------------------------------------------------------------------

 revison history

	0.2  (10 Sept. 1999) -- first real release

	0.2a (11 Sept. 1999)
		removed timebits.h from includes.h (wasn't actually used anywhere)

	0.3  (12 Sept. 1999)
		cleaned up a couple of mistakes in the usage text
		added support for many more parts (everything supported by MPLAB)

	0.4  (1 Oct. 1999)
		cleaned up some argument handling (better, more generalized)
		broke picstart.c up into smaller modules
		added support for -wo flag (only works on single-word calibration spaces)
		added oscillator calibration space size checking
		added dump of device info if invoked without any flags

	0.4a (28 Oct. 1999)
		improved hex record parsing
		added timeout to InitDevice() to allow the PICSTART to respond to DTR

	0.4b (14 July, 2000)
		added support for several additional parts (culled from MPLAB 5.00.00):
			PIC16HV540, PIC16C55A, PIC16C57C, PIC16C712, PIC16C716, PIC16C773,
			PIC16C774, PIC16F872, PIC16F873, PIC16F874, PIC16F876, PIC18C242,
			PIC18C252
		deleted parts which MPLAB no longer supports:
			PIC16C554A, PIC16C556, PIC16C556A, PIC16C558A
		added extended device profile (or something) to initialization -- newer
			versions of MPLAB send more stuff at device init; these are now sent
			by picp as well

	0.4c (14 July, 2000)
		added support for PIC18C442 and PIC18C452

	0.4d (20 February, 2001)
		changed CMD_REQUEST_ACK to CMD_REQUEST_MODEL (actually asking for programmer
			model, not just an acknowledge)
		dropped baud rates over 115200 from serial.c, they aren't useful here and
			were limiting cross compatibility
		added bool as a typedef so picp can be compiled under straight c instead of c++
		changed Makefile so picp compiles using gcc instead of c++
		modified OpenDevice() and CloseDevice() to save the previous serial port
			settings and restore them on exit
		made some improvements to ConfigureDevice() courtesy Brian Chamberlain

-----------------------------------------------------------------------------