xenial (1) lpcprog.1.gz

Provided by: lpctools_1.06-1_amd64 bug

NAME

       lpcprog - NXP's LPC micro-controllers flasher

SYNOPSIS

       lpcprog -d serial_device -c command [OPTIONS] ... [FILE]

DESCRIPTION

       Use ISP protocol to flash LPC micro-controllers over serial line.

       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.

       A  FILE  argument  must  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.

       Mandatory arguments to long options are mandatory for short options too.

       -p, --parts==PARTS
              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.

       -d, --device=DEV
              Use DEV as host serial line to program the target. Full path must be provided.  Device node  files
              are usually located in /dev/ directory.

       -c, --command=COMMAND
              Command to execute. COMMAND must be one of id, dump, flash, blank or go.  See COMMANDS section for
              commands description.

       -b, --baudrate=BAUD
              Use BAUD as the baudrate for communication with the target device. Defaults to 115200.

       -t, --trace
              Turn on trace output of serial communication with target device

       -f, --freq=FREQ
              Use FREQ (KHz) as the oscilator frequency of target device. Defaults to 10000 KHz

       -n, --no-user-code
              Do not compute a valid user code for exception vector 7. See USER CODE section.

       -h, --help
              Display help information and exit

       -v, --version
              Display version information and exit

COMMANDS

       The command must be one of id, dump, flash, blank or go.

       id     The id command displays the LPC part identification ID, the uid (unique ID),  and  the  bootloader
              version of the connected target device.

       dump   Dump  the whole connected target's flash memory content to the given file. This command requires a
              file argument.

       flash  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 -n option to prevent User Code modification. If you need to write your  file
              to a different flash section, use the lpcisp tool.

       blank  Erase the whole flash.

       go     Unsupported  Yet.  Reset the target using hardware reset button or power cycle the device to start
              the program.

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 -p  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 -p option
       is provided, the program looks for lpctools_parts.def in the current directory first,  and  then  in  the
       /etc/ directory.

       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.

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.

       If the signature is not valid the LPC enters ISP mode.

       The default behavior of lpcprog 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 -n option.

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.

       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.

       Code  Read Protection will not be implemented as it goes against the license of this tool and against the
       free software philosophy.

AUTHOR

       Written by Nathael Pajani.

REPORTING BUGS

       Report bugs to bug@techno-innov.fr
       Techno-Innov home page: <http://www.techno-innov.fr/>
       Software Git Repository: <http://git.techno-innov.fr/>

       Copyright    ©    2013    Techno-Innov    License    GPLv3+:    GNU    GPL    version    3    or    later
       <http://gnu.org/licenses/gpl.html>.
       This  is  free software: you are free to change and redistribute it.  There is NO WARRANTY, to the extent
       permitted by law.

SEE ALSO

       lpcisp(1)