File: lpcprog.1

package info (click to toggle)
lpctools 1.07-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster, sid
  • size: 240 kB
  • sloc: ansic: 2,075; makefile: 41
file content (131 lines) | stat: -rw-r--r-- 5,609 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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
.TH LPCPROG "1" "July 2014" "LPC Tools 1.07" "User development Tools"
.SH NAME
lpcprog \- NXP's LPC micro-controllers flasher
.SH SYNOPSIS
.B lpcprog
\fI\-d serial_device\fR \fI\-c command\fR [\fIOPTIONS\fR] ... [\fIFILE\fR]
.SH DESCRIPTION
.\" Add any additional description here
.PP
Use ISP protocol to flash LPC micro-controllers over serial line.
.PP
For all commands the target micro-controller must be in ISP mode and waiting for
synchronisation ISP command (default state when entering ISP mode). See ISP MODE
AND CODE READ PROTECTION section for more details.
.PP
A FILE argument \fBmust\fR be given for dump and flash commands. For flash command
this file is the data (program) to be written to LPC internal Flash memory. For dump
command, it will store the actual content of the LPC internal flash memory.
.PP
Mandatory arguments to long options are mandatory for short options too.
.TP
\fB\-p\fR, \fB\-\-parts\fR==\fIPARTS\fR
Use PARTS as parts desription file instead of the default ones. See PARTS DESCRIPTION
FILES section for more information on default parts desription files and order of
precedence.
.TP
\fB\-d\fR, \fB\-\-device\fR=\fIDEV\fR
Use DEV as host serial line to program the target. Full path must be provided.
Device node files are usually located in /dev/ directory.
.TP
\fB\-c\fR, \fB\-\-command\fR=\fICOMMAND\fR
Command to execute. COMMAND must be one of \fBid\fR, \fBdump\fR, \fBflash\fR,
\fBblank\fR or \fBgo\fR.
See COMMANDS section for commands description.
.TP
\fB\-b\fR, \fB\-\-baudrate\fR=\fIBAUD\fR
Use BAUD as the baudrate for communication with the target device. Defaults to
115200.
.TP
\fB\-t\fR, \fB\-\-trace\fR
Turn on trace output of serial communication with target device
.TP
\fB\-f\fR, \fB\-\-freq\fR=\fIFREQ\fR
Use FREQ (KHz) as the oscilator frequency of target device. Defaults to 10000 KHz
.TP
\fB\-n\fR, \fB\-\-no\-user\-code\fR
Do not compute a valid user code for exception vector 7. See USER CODE section.
.TP
\fB\-h\fR, \fB\-\-help\fR
Display help information and exit
.TP
\fB\-v\fR, \fB\-\-version\fR
Display version information and exit
.SH COMMANDS
.PP
The command must be one of \fBid\fR, \fBdump\fR, \fBflash\fR, \fBblank\fR or \fBgo\fR.
.TP
\fBid\fR
The \fBid\fR command displays the LPC part identification ID, the uid (unique ID),
and the bootloader version of the connected target device.
.TP
\fBdump\fR
Dump the whole connected target's flash memory content to the given file. This command
requires a file argument.
.TP
\fBflash\fR
Flash the content of the file given as argument to the beginning of the connected
target's flash memory. Automatic computation of the User Code is made and User Code is
stored in the 7th exception vector. Use \fB\-n\fR option to prevent User Code
modification. If you need to write your file to a different flash section, use the
\fBlpcisp\fR tool.
.TP
\fBblank\fR
Erase the whole flash.
.TP
\fBgo\fR
Unsupported Yet. Reset the target using hardware reset button or power cycle the
device to start the program.
.SH "PARTS DESCRIPTION FILES"
Default parts description files are /etc/lpctools_parts.def or ./lpctools_parts.def
The parts description file is parsed for LPC device description for dump, blank, and
flash commands. If none of the defaults exist and no existing file is supplied
using \fB\-p\fR option, these command cannot execute. If the part description is not
found in the first found file, the command will not execute either.
If no \fB\-p\fR option is provided, the program looks for lpctools_parts.def in the
current directory first, and then in the /etc/ directory.
.PP
The content of parts description files is a list of LPC parts description.
Each line holds one part description. Lines starting by # are comments.
Refer to the default file found in the /etc/ directory for more information on the
line format.
.SH "USER CODE"
A valid User Code is requiered by the LPC bootloader to start the internal user
program. User Code is considered valid if the reserved exception vector location 7
(offset 0x 0000 001C in the vector table) contains the 2’s complement of the
check-sum of table entries 0 through 6. This causes the checksum of the first 8
table entries to be 0.
.PP
If the signature is not valid the LPC enters ISP mode.
.PP
The default behavior of \fBlpcprog\fR is to compute a valid code for the 7th
exception vector and modify the programed binary data to include this valid code.
You can prevent this by using \fB\-n\fR option.
.SH "ISP MODE AND CODE READ PROTECTION"
Code Read Protection is a mechanism that allows "the user" to enable different
levels of "security" in the system so that access to the on-chip flash and use of
the ISP can be restricted. When needed, CRP is invoked by programing a specific
pattern in flash location at 0x0000 02FC. IAP commands are not affected by the
code read protection.
.PP
If your device Does not enter ISP state, or if some commands do not succeed, it may
be because the CRP mechanism is in use on your device.
.PP
Code Read Protection will not be implemented as it goes against the license of this
tool and against the free software philosophy.
.SH AUTHOR
Written by Nathael Pajani.
.SH "REPORTING BUGS"
Report bugs to bug@techno-innov.fr
.br
Techno-Innov home page: <http://www.techno-innov.fr/>
.br
Software Git Repository: <http://git.techno-innov.fr/>
.SH COPYRIGHT
Copyright \(co 2013 Techno-Innov
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
.br
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
.SH "SEE ALSO"
lpcisp(1)