The Enhanced BDM Programmer provides a fast, efficient, low-cost method of programming the on-chip Flash and EEPROM memory of our 68HC12 and HCS12 Families utilizing the BDM interface. The programmer can be used standalone with a simple pushbutton and LED interface. Direct replacement for the SCBDMPGMR12 BDM programmer. Built-In FLASH Programmer In-System Programming and Debugging through a BDM-Compatible Interface Metrowerks CodeWarrior IDE, with Editor, Assembler, C Compiler and Debugger USB Connection to the Host PC Overview inDART-HCS08/D is a powerful entry-level tool for Freescale HCS08-based systems. This application note outlines background debug mode (BDM) on Freescale Semiconductor’s 8-bit microcontrollers, primarily the S08 and RS08 cores. The beginning of this application note focuses on defining BDM, its functions, and opera tion.
The following suite of programs are intended to be used with USBDM BDM interfaces.
They provide the ability to program the internal Flash memory of the following Freescale microcontrollers:
They provide the ability to program the internal Flash memory of the following Freescale microcontrollers:
- RS08, HCS08, HCS12, S12Z, Coldfire V1, Coldfire V2, Kinetis and a limited range of MC56F800x microcontrollers.
- GUI usage is available for interactive use.
- Command line usage is available for batch files.
- Supports most chips - see list below.
- Trimming of internal target clock to specified frequency (RS08, HCS08 & CFV1).
- Programming of security options to leave the chip unsecured or secured after programming.
- May be used to unsecure chips (by mass erase).
- The code has been written in a modular fashion. It should be straightforward to re-use the flash programming code to create other custom programming utilities.
Usage:
FlashProgrammer <options> <BinaryFilename>
If neither of the -program or -verify options are given then all options apart from -target are ignored and a GUI interface is opened.
You may rename the executable to e.g. ARMProgrammer to automatically select ARM target.
If neither of the -program or -verify options are given then all options apart from -target are ignored and a GUI interface is opened.
You may rename the executable to e.g. ARMProgrammer to automatically select ARM target.
- BinaryFilename
The name of the S19 or ELF binary file to program. - Options (order is not significant).
- -bdm=bdm_name
Serial number of preferred BDM to use. - -requiredBDM=bdm_name
Serial number of required BDM to use. - -device=device_name
Target device e.g. MC9S08AW16A, MCF51CN128. - -erase=erase_option
Selects erase method used (Mass, All, Selective, None). - -execute
Leave target power on & reset to normal mode at completion. - -flexNVM=eeprom,partition
FlexNVM parameters (eeprom,partition hex values) - -masserase
Equivalent to erase=Mass. - -noerase
Equivalent to erase=None. - -nvloc=address
Trim non-volatile memory location address (hex). - -power=dur,rec
Power off duration & recovery times (ms). - -program
Program and verify flash contents. - -reset=dur,rel,rec
Reset duration, release & recovery times (ms). - -security=value
Security value (unsecured, image, smart). - -securityValue=value
Explicit security value to use (as hex string) - -speed
Communication speed on some targets (kHz). - -trim=trim_frequency
Trim internal clock to frequency (in kHz) e.g. 32.7. - -target=target
Type of target e.g. RS08,HCS08,HCS12,S12Z,CFV1,CFVX,ARM,MC56F - -useReset
Use reset signal. - -unsecure
Leave device unsecured after programming. - -vdd=vdd_value
Supply Vdd to target (3V3 or 5V). - -verify
Verify flash contents.
The program sets the error code to 0 on success, non-zero otherwise.
The program will use the first BDM located. There is no option to select a BDM.
- -bdm=bdm_name
Examples of usage:
- Programming an image with clock trimming: This will program a MC9S08AW16A with the contents of the file Image.s19 and trim the internal clock to 243kHz. Target Vdd will be 3.3 Volts (if this option applies to the BDM used). The Flash image will be modified so that the device will be secure after programming. After programming the device will be left powered and will be reset into normal mode i.e. will be left running the loaded program.
- Programming the clock trim in an already programmed chip: This will trim the internal clock of MC9S08QG8 to 35.25kHz without erasing the present flash contents. Target Vdd will be 3.3 Volts (if this option applies to the BDM used). It is necessary that the clock trim locations in flash are still unprogrammed (0xFF) when using the -trim option. The target cannot be secured after trimming.
- Programming image with custom security value: This will program the device with Image.elf and explicitly set the security area to '123456789ABCDEF0FFFFFFFFFEFFFFFF'.
If the program is started without the -program or -verify options then an interactive dialogue is opened to allow the user to configure the programmer. The other options are ignored.
The dialogue has three tabs.
The dialogue has three tabs.
- The first tab is concerned primarily with USBDM interface selection, communication options and general features.
- The second tab is specific to a particular target device.
- The third tab contains other BDM options that are more advanced or less likely to need modification.
Note that the programmer uses a buffer to store the image to be programmed to the device. Some of the following options will persistently modify this buffer. This means that, for example, if you choose the secure option, program the device and then select the image option then further programming will also result in secured devices.
Tab 1 - USBDM
Select BDM - Allows selection between BDMs when multiple are connected
|
Tab 2 - Target
![Freescale serial bdm programmer download Freescale serial bdm programmer download](https://images.51microshop.com/1754/product/20170918/Super_BDM_Programmer_BVA_KEY_Programmer_For_BMW_CAS_4_and_VW_5th_Generation_1505719943515_1.jpg)
| |
| |
|
Tab 3 - Advanced
BDM Parameters
| |
Note: The programmer supports programming of the region of FlexNVM used as conventional Flash. It cannot program the emulated EEPROM. Note: The programmer can only program this setting if the associated Flash IFR region is blank (unprogrammed). The only mechanism for erasing the IFR is a device mass-erase. Unless you know the device is unprogrammed, it is usual to use this setting with the mass-erase option. | |
Custom Security Parameters This section allows the security area of the target to be programmed to a custom value.
|
HomeAdvanced Materials ResearchAdvanced Materials Research Vol. 981The Key Technology of Designing the Universal...
Abstract:
For implementing on-line programming of Freescale HCS12 series MCU, designing a common downloading programmer which functions include chip selection, erase and write operations. Designing a database where Freescale HCS12 MCU Flash difference parameter values placed, so achieving HCS12 MCU family online programming versatility. Erase and write machine codes are provided in the RAM area of Flash memory, these codes will be run at high voltage, these codes are relocated from Flash to RAM area for improving flash operation stability during the high voltage. According to BDM communication theory, we have developed a separate BDM serial communication program, the target device only receives the user code from the programmer, programmer does not need send opcode and the address information, not waiting for a command, so, increasing the erase and write speed. the programmer has the versatility and easily using.
BDM, Erase, Freescale HCS12, High-Speed Downloading, Programmer, Write
[1] Freescale. Technical Data-MC68HC908JB8,. (2005).
[3] Daniel Malík. Turbo BDM Light interface, (2005).
TinyBDM - EVBplus
[4] CAO Jin-hua, LIU Xiao-sheng and WANG Yi-huai, Design of An Integrated Development Environment For MCUs of Freescale HC08, Microcomputer Information, vol 9, 2009, pp.77-79.
[5] Yingzhen Jiang, The Design of Universal Programmer and Software for M68HC08 MCUs, Soochow University, October. (2004).
[6] LIU Xiao-sheng, CAO Jing-hua and SHEN An-dong, Universal Design of Programmer & Debugger Based on HC08 Family MCU,. Computer Engineering, Dec 2008, pp.253-255.
EVBplus USBDM OSBDM
[7] WANG Yan-chun and WANG Yi-huai, Design and Implementation of Universal Programmer for M68HC08 MCU, Automation & Instrumentation., September. 2008, pp.58-60.