NXP flash programming tool for microcontrollers,
with scripting, command line and DLL. Implement production line programming
and support all Philips 8-bit, 16-bit and 32-bit flash microcontrollers with
your custom application. Create end-user product update utilities, and more!
The Flash Magic Production System provides a license
to use Flash Magic on production lines and the necessary information and
files to allow custom applications to be built on the Flash Magic platform.
Do you want to use Flash Magic on a production line
in your company? The free version isn’t licensed for production line use. By
purchasing the Flash Magic Production System you will be able to use Flash
Magic on an unlimited number of production lines inside your company.
Custom PC Applications
Do you want to build your own PC applications that
can program NXP microcontrollers? The ISP functionality of Flash Magic is
provided by a DLL. This DLL is rather like a library and can be called by
any application that knows how to use it. All copies of Flash Magic include
this DLL. By building upon this DLL an application immediately gains access
to the knowledge and abilities of Flash Magic that have been built up over
several years of effort. The DLL represents literally thousands of hours of
investment, and it is a tried and tested platform that is currently used by
thousands of users worldwide.
About Flash Magic
Flash Magic is a feature-rich Windows based tool for
the downloading of code into NXP flash microcontrollers. It utilises a
feature of the microcontrollers called ISP, which allows the transfer of
data serially between a PC and the device.
Flash Magic can erase devices, program them, read
data and read and set various configuration information. Rather than
providing the basic features of ISP, Flash Magic adds additional features
and intelligence, allowing complex operations to be performed. For example,
erasing can be any collection of pages pages, blocks, the hex file to be
programmed or the entire device. Some devices store the ISP bootloader in
flash memory, so Flash magic implements methods to protect this code from
Additional advanced features of Flash Magic include
the automatic programming of checksums, entering ISP mode via a serial
command, execution of Just In Time modules allowing endless flexibility in
the data programmed, control over RS232 signals to place devices into ISP
mode, and control over the timing of such signals.
Flash Magic has been available for free for over six
years and supports all current 8-bit (8051), 16-bit (XA) and 32-bit (ARM)
flash microcontrollers from NXP.
Some ideas for applications built on the Flash Magic
- Custom ISP tool for in-house use, for example
production line programming where it is essential the user interface is
simplified as much as possible
- End user ISP tool for updating the firmware of
products. You can build the hex file into the application or allow it to
be fetched over the internet. Adverts for new products could be displayed
to the user. Use one tool for all your products involving potentially
multiple NXP microcontrollers.
- Gang programming tool. Invoke multiple instances
of the Flash Magic DLL in seperate threads, each using a different COM
port to allow parallel ISP programming
- Future-proofing products. Rather than write your
own ISP tool and have to keep updating it for new NXP devices, updates to
the DLL will automatically add new devices
The following is a list of features in the Flash
Magic DLL. The list is not exhaustive by any means, but does give a good
overview. Note that not all features are available with all devices.
Features available depend on the functionality of the device being accessed.
- Reads the device signature
- Erases part or all of the flash memory
- Programs a hex file into the device
- Verifies a hex file was programmed into the
- Reads the security bits
- Programs the security bits
- Checks a section or all of the flash memory is
- Reads data from the flash memory
- Reads the boot vector and status byte
- Erases the boot vector and status byte
- Programs the boot vector
- Programs the status byte
- Reads data from the flash memory into a buffer
- Resets the device
- Selects a debug mode for the DLL
- Places the device into ISP mode
- Reads the clocks bit
- Programs the clocks bit
- Reads the device configuration
- Programs the device configuration
- Erases flash memory in pages
- Reads CRCs from the device
- Cancels the autobauding
- Sets a password in the device
- Resets a password in the device
- Verifies a password in the device
- Selects one of the timeout lengths
- Selects the default timeouts
- Places the device in SoftICE mode
- Python scripting system - write your own
automated tests or production line procedures!
The following is a list of files that are included
in the Production System.
- GUI and Command Line versions of Flash Magic,
licensed for production lines
- The Flash Magic 8051/XA DLL, implementing flash
- The Flash Magic ARM DLL, implementing flash
- C header files
- Library/import files for Microsoft Visual C++ and
Borland C++ Builder
- Example applications for Microsoft Visual C++
demonstrating both DLLs
- A manual on how to use the Flash Magic DLLs
The Flash Magic Production System can run on Windows
2000/XP/Vista. For building applications a PC application development system
is needed. Library and/or import files are provided for Microsoft Visual C++
and Borland C++ Builder. For other development systems you will need to
generate your own library or import files from the header file or DLL.
General support is provided when using any PC
development system. This consists of general questions on the DLL
functionality. Specific help can only be given when using Microsoft Visual
C++ or Borland C++ Builder.