0% found this document useful (0 votes)
91 views6 pages

ST10 Flasher User Manual V2.0

The ST10 Flasher User Manual provides instructions for using a Visual Basic application designed for programming STMicroelectronics embedded flash microcontrollers from a PC. It includes installation steps, program functions, and detailed usage guidelines for operations such as erasing, programming, and dumping flash memory. The software is intended for laboratory use by engineers and is not supported for production environments.

Uploaded by

eliel luduvico
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
91 views6 pages

ST10 Flasher User Manual V2.0

The ST10 Flasher User Manual provides instructions for using a Visual Basic application designed for programming STMicroelectronics embedded flash microcontrollers from a PC. It includes installation steps, program functions, and detailed usage guidelines for operations such as erasing, programming, and dumping flash memory. The software is intended for laboratory use by engineers and is not supported for production environments.

Uploaded by

eliel luduvico
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd

ST10 embedded flash memory programming software manual, Version V2.0 – Nov.

2000

ST10 Flasher User Manual

Version: V2.0
Visual Basic 5.0 application for Win95/98/NT.

Remark
This program is made for laboratory environments and usage by engineers knowing
the device they are working with. This is a free tool which must be taken as it
is, no support being ensured.

The target of this flasher is simple: A engineer develops code for one of
STMicroelectronics nice embedded flash microcontrollers (like the ST10F168 and
others) and wants to program it (fast and easy) from his desktop PC into the
chip. If that is what you are looking for, then this program is for you.

This software was not created for use in production environments.

For production programming the user is responsible to generate their own tested
and qualified programming facility.

Install

1. Close all running programs on your PC.


2. If it exists, remove a previous version of the tool in the control panel
("add/remove program").
3. Install ST10Utility with [Link].

Important note
Setup errors may occur if an application is using [Link], [Link] or
[Link].
In that case, choose "ignore": there will be any bad effect on the application.

Program functions:

Device auto-detection
K-line auto-detection and management
FCpu (CPU frequency) auto-detection
Single chip operation using the bootstrap loader mode
Operates on PC standard COM port 1..4
Reload command handler (= monitor)
Read status
Erase flash memory by banks / by blocks
Load a hex file
Program HEX files
Compare embedded flash memory content versus file on disk
Find highest possible baud rate
Dump Flash Memory to a HEX file or to screen
Set or clear ST10 port
Blank check
Test COM
Initialize COM port
Close COM port

Short documentation:

16/02/25 Page 1 / 6
ST10 embedded flash memory programming software manual, Version V2.0 – Nov. 2000

There is no other document than this one available since the program is seen as
self-explaining.

Usage

1. Before first use, check that the file "[Link]" (in the selected
application directory) corresponds to the application parameters, especially for
the parameters COMPORT, BAUDRATE.

Default delivery settings are :


[COMPORT] = COM1 ;
[BAUDRATE] = 9600,N,8,1 ;

2. Reset you application before starting [Link] to enter the Bootstrap


Loader Mode.

If the microcontroller is NOT in bootstrap loader mode, then the message

"BSL receive acknowledge failed appears. Reset your application and reload the
monitor" will appear.

In this case, then :

- Issue a hardware reset to latch port 0 pin 4 at low level during startup.

- Make sure you have selected the correct serial communication port and that no
other program occupies it (close it if so).

- Click the button "RELOAD" starts the bootstrap loader based command handler
download again, which then should be successful complete by printing the
"Monitor OK" in the message window.

3. Select COM port for communication by menu item "CONNECT". The command button
"initialize port" evaluates if the selected COM port and baud rate are OK (green
LED) or not (red LED).

4. A message indicate the monitor status (OK/BAD), this information is also


visible on the Monitor status LED.

If the ST10 cannot be contacted in bootstrap loader mode, the message "Reset
your board to bootstrap loader mode and press RELOAD" appears.

5. Click "Get Status" to get the flash tool status. If an error occurred, it
returns the last error message.

6. When loading the monitor, the tool performs an auto-device detection. The
device is then displayed in the interface indicating that you are connected to
e.g. ST10F168.

If the monitor loading was not successful, the following message will appear in
the flash type window : "ChipAutoDetection".

The flasher can also detect if the communication is a K-line port or not. If
it's the case, it is displayed in window Com port status.

16/02/25 Page 2 / 6
ST10 embedded flash memory programming software manual, Version V2.0 – Nov. 2000

GETTING possible baudrates

Press "Get maximum baud rate" in menu "CONNECT" to get the highest possible baud
rate for the communcation channel in use. Then the flasher will propose you to
set the speed at the maximum baud rate or at the previous baud rate.

The following table indicates the possible baud rates for each CPU frequency.

Some baud rates cannot be set for some CPU frequencies because of the RS232
deviation between the baud rate register loaded in the Flash and the target baud
rate.

The baud rate is considered OK when deviation < 2 %.

In practice, note that these values may change with the user environment (length
of the serial line, quality of cable and connectors, noise, PC buffer size,
number of active tasks, ...). In these cases the max. transmission speed cannot
be obtained!

Fcpu (MHz) Possible baud rates (kbauds)


7.5 57.6 / 38.4 / 19.2 / 14.4 / 9.6
8 19.2 / 14.4 / 9.6
10 38.4 / 19.2 / 14.4 / 9.6
12.5 56 / 38.4 / 19.2 / 14.4 / 9.6
15 115.2 / 57.6 / 38.4 / 19.2 / 14.4 / 9.6
16 56 / 38.4 / 19.2 / 14.4 / 9.6
20 57.6 / 56 / 38.4 / 19.2 / 14.4 / 9.6
24 57.6 / 56 / 38.4 / 19.2 / 14.4 / 9.6
25 57.6 / 56 / 38.4 / 19.2 / 14.4 / 9.6
30 115.2 / 57.6 / 56 / 38.4 / 19.2 / 14.4 / 9.6

Note: Refer to the device datasheet, check and respect the minimum baudrate
allowing flash operations to operate within the specifications!
Violating the specification may result in limited flash reliability!

TEST COM
This function is used to the to test the serial communication.
It only sends a byte “0x0” and checks the response of the ST10.

16/02/25 Page 3 / 6
ST10 embedded flash memory programming software manual, Version V2.0 – Nov. 2000

ERASING and PROGRAMMING the on-chip flash memory

Erase operation

1. Click ERASE button command.

2. A window will be displayed. Mark the flash memory areas (among 4 banks for
ST10F168) to erase by checking them.

3. Click OK to start the erase operation.

Note: The marks are automatically reset after erase.

4. Status messages of the erase operation are written to the text window, act
accordingly.
5. You can check if a bank (or a block) is blank with the button "BlankCheck".

Note : You can select automatic erase option (checked by default) before
programming to erase the flash areas concerned by the hex file to program. In
this case, prior to a programming operation the ENTIRE flash memory space will
be erased automatically.
Note: This slows down the programming time also.

Program operations: Load, Program and Verify

1. Click SELECT HEXFILE and select one Hexfile to program into the on-chip flash
memory.

2. Clicking OK or double clicking the selected hexfile automatically loads the


hex file. The name of the current loaded file is displayed. A text box indicates
also the last loaded files (history function for convenience).

3. The text window returns the result of the loading operation.

4. Click on the "Program - Verify" button triggers programming operation – Now


the loaded hex file is transferred to the ST10 and programmed into the embedded
flash memory. The programming is verified thanks to the checksum returned by the
ST10.

Compare operation

User can then check that the content of the Flash is identical to the hex file
loaded by clicking on the "Compare" command.

The HEX FILE on your PC IS THE REFERENCE against the flash content. The area
indicated by the hex file is automatically checked against the embedded flash
memory content.

Important Note : Compare issue

On some environments, the “Compare” command may take a long time.


It's not useful to do "compare" at each programming, because the checksum
included in the programming step assume that the operation was OK.

16/02/25 Page 4 / 6
ST10 embedded flash memory programming software manual, Version V2.0 – Nov. 2000

DUMPING the flash memory

With this function the user may read out the embedded flash memory content for
control and debugging purposes. The content can be stored in a file or displayed
on screen.

Dump to file allows to read the content of the flash memory in a HEX file. This
dump file is by default created at the application directory (where the flasher
software is stored).
Additional the user can choose a dump file name by selecting the browse button.
To start choose "Dump To File" in the dump window. Then you can select to read
by an address or by a defined Block. Block addresses can be found in the device
datasheet.

Dump to file by address

1. Write the Start address in C-style (0x...). Take care to dump physical
addresses, otherwise the "out of physical memory" will appear.

2. Write either the Size of bytes to be dumped or the End address.

3. Open the dump file to see the result.

Dump to file by block

1. Select banks (for F168) or blocks (for the enhanced derivates)

2. Click on "OK" to start dumping.

3. Open the dump file to see the result.

Choose "Dump to screen" in the dump window when you want to display the Flash
memory on the screen. In "Dump to screen", the dump size is limited to 4096
bytes. In parallel the dump result is also saved in a file "[Link]" at the
application path on your computers disk.

Dump to screen by address

1. Write the Start address in C-language style (0x...). Take care to dump
physical addresses, otherwise the message "out of physical memory" will appear.

2. Write either the Size of bytes to be dumped (<= 4kb) or the End address.

3. Select the format : per byte, per word or per long word. The size must be
even when the word format is selected and that size/2 must be even when the long
word format is selected.

4. The software displays the dump result.

Dump to screen by block

1. Select a bank (for F168) or a block (for enhanced devices)

2. Select the format: per byte, per word or per long word.

3. Select the offset to add to the beginning of block (or bank).

16/02/25 Page 5 / 6
ST10 embedded flash memory programming software manual, Version V2.0 – Nov. 2000

4. Click on "OK" to start "dumping".

5. The application displays the 4-kb block (or bank) area from the block start
address + offset.

ENABLE ST10 Port

This function allows setting or clearing a ST10 port pin. Enabled ports keep the
value at startup and after reloading of the monitor.

The user may want to use this command to activate a external charge pump
generating Vpp for ST10F168 or other purposes.

To disable a port, click on "disable" on the "Port" menu.

Note under Windows 95/98: Programming speed issue


Under windows 95/98, it is strongly recommended to set the FIFO option in the
advanced COM port settings (Start Menu > settings > control panel > System > COM
PORT). Otherwise, flasher operations may take a long time.

Known issues

- Install issues (see note in Install section).


- Verify operation may take a long time (> 2 minutes), due to COM issues
under some systems.
- Programming bank 0 of the F168 may trigger error at 115200 bauds.

Feedback and Problem reporting

If you have discovered a serious bug and/or want to give some feedback please
send a written comment to the source who gave you the program. The
STMicroelectronics contact person will send us your feedback, which is always
welcome. For debugging a hex file showing the behavior is always needed!

STMicroelectronics, TPA DMD tools group, November 2000

16/02/25 Page 6 / 6

Common questions

Powered by AI

When setting baud rates using the ST10Utility flasher, it is important to ensure the baud rate deviation is less than 2% to avoid communication errors. This requirement is crucial as deviations can lead to reliability issues in flash operations. Additionally, factors like environmental noise, cable quality, and PC buffer sizes may influence achievable baud rates, so verifying the stability of the selected rate is key .

The flasher software performs an auto-device detection during the monitor loading process. If the K-line port is the communication method being used, it identifies this and displays the information in the Com port status window .

To dump flash memory content to a HEX file with ST10Utility, select 'Dump To File' in the dump window. You can specify dump content by address or by block: 1) For address-based dumps, input the start address using C-style notation (0x...), and specify either the size or end address of the dump. Physical addresses must be used to avoid errors. 2) For block-based dumps, mark the banks or blocks to dump, confirmed by clicking 'OK.' The results are stored in a file created in the application directory or a selected directory using the 'browse' function .

To ensure a successful monitor loading with the ST10Utility flasher software, follow these steps: 1) Reset your application to enter Bootstrap Loader Mode. If the microcontroller isn't in this mode, you will receive the message "BSL receive acknowledge failed." 2) Issue a hardware reset to latch port 0 pin 4 at a low level during startup. 3) Confirm the correct serial communication port is selected and that it's unoccupied by other programs. 4) Click the "RELOAD" button to download the bootstrap loader-based command handler, until "Monitor OK" appears in the message window .

The "Compare" command is crucial after programming a HEX file because it verifies that the content of the on-chip flash memory exactly matches the HEX file loaded on the PC, ensuring data integrity. However, the operation may take a long time due to system-specific issues, and since the programming step already includes a checksum verification, frequent use of the "Compare" command might be redundant unless discrepancies are suspected .

The 'Set or Clear ST10 Port' function allows users to manipulate ST10 port pins directly, providing a way to control hardware behavior. For example, an external charge pump generating Vpp can be activated by enabling the corresponding ST10 port pin. This enhances the flasher's utility for hardware-dependent tasks .

To prevent programming speed issues on Windows 95/98, it is recommended to enable the FIFO option in the COM port's advanced settings. This measure is necessary because without FIFO, the flasher's operations may become significantly slower, possibly due to inefficient handling of serial data by the PC's hardware buffer .

Users may encounter installation errors if specific DLLs like msvcp60.dll or kernel32.dll are in use by other applications; users are advised to choose 'ignore' with no adverse effects expected. Additionally, verify operations can be slow on certain systems and programming bank 0 of the F168 may trigger errors at high baud rates. No specific solutions are provided for these, but feedback is encouraged for resolutions .

If 'Monitor OK' does not appear after attempting to reload, first reset the application to ensure it is in Bootstrap Loader Mode. Next, verify the hardware reset configuration on port 0 pin 4. Finally, make sure the correct COM port is selected and is not occupied by another program. Attempt the reload process again .

In ST10Utility, the 'Erase' function involves selecting which flash memory banks to erase and initiating the operation by pressing 'OK'. Status messages are displayed during the process. Selecting the automatic erase option erases all memory areas relevant to the HEX file before programming, which ensures no old code remains but also increases programming time .

You might also like