         Programming algorithm for M28W320FCT flash memories used on LPC4350-Seriz II boards from Silica
         ===============================================================================================


Date:    March 2012
Author:  NXP




LPC types:     LPC4350 Rev. A
==========



Board types:   LPC435050-Seriz II
============



Flash types:   M28W320FCT: 4 Mbyte 16-bit flash, Top boot
============
   
                       

Debugger types: ULINK2, ULINK Pro, JLINK 
===============



Installation:  1) Copy the file M28W320FCT_SerizII.FLM into the folder .\KEIL\ARM\Flash.
=============     The source folder "M28W320FCT_LPC4350_SerizII" can be copied as well, but that is optional.
               
               2) Copy the INI script "LPC18xx_43xx_ExtFlash16Prog.ini" in the scripts folder to a convenient place on 
                  your computer, where you can find it easily.

               3) In uVision go to Flash -> Configure Flash Tools...
                  - Utilities: Provide the path to "LPC18xx_43xx_ExtFlash16Prog.ini" in the box for the Init File
                  - Utilities: Select your JTAG hardware debugger and then click on Settings. 
                       - Click on Add and select the right algorithm for your chip/board. It will apeear with 
                         the string "M28W320FCT @ SerizII"
                       - Set the RAM area for the algorithm to 0x10000000 / 0x2000
                       - Choose the Download Functions you want to be executed when clicking
                         on the respective icon in the uVision icon bar (Erase Chip, etc)



               
Known Problems:  No problems are known with respect to the erase/program algorithm. 
===============  However, the various possible combinations of eval board, JTAG box, boot mode, 
                 current processor state etc can lead to a problem with the debugger connection.
                 E.g. "No JTAG devices found", "JTAG communication problem", "SWD communication failure", "Flash Timeout"

                 It could be that a software which is already inside the flash was running when you connected with
                 the debugger, putting the chip into a state where it does not longer work on the JTAG as it should.
                 Then it helps to boot the chip in a different bootmode and then try to connect with the debugger



Recompilation:  Place the source folder into .\KEIL\ARM\Flash and then open the µVision project file.
==============

