USBDM Kinetis Debugger and Programmer
Introduction
The FRM-xxxx boards from Freescale includes a minimal SWD based debugging interface for ARM Kinetis targets.
The interface hardware is simple but flexible enough to be used with a wide range of Kinetis devices.
The board includes provision for the connector necessary to allow programming of external devices as well as the target device on the board.
Unfortunately the existing debugger firmware available with the FRDM-xxxx boards
is specifically tied to the target chip on the board (e.g. MKL25Z128M4).
In fact, it is tied to the individual serial number of the chip on the board
and cannot even be used to program other otherwise identical devices.
Changing the chip on the board renders the debugging interface useless.
This manual describes a version of the USBDM firmware that can be loaded into
the KL20 based debugging interface on any of the FRDM boards.
This allows its use as a general purpose programmer and debugger for Kinetis devices
(including the on board target chip e.g. KL25 on the board).
This provides a very inexpensive debugging tool.
While the USBDM firmware may be used with any of the FRDM-xxxx boards
it is recommended to use a FRDM-KL25Z or FRDM-K20D50M board
as some of the early versions of the other boards have various hardware errors
that make connection to an external device difficult.
Another attractive choice is the FRDM-K64F.
The advantage of this board is that it contains a controlled power supply and already has the required 10-pin connector present.
Quick Links
- Release versions of the software for the various BDMs are available on Sourceforge.
- Various stand-alone programmers are provided to support the USBDM hardware.
- Source code is available on GitHub
- Post queries on OSBDM and TBDML Discussion Board
Features
This version of the USBDM code combined with the FRDM-xxxx board provides the following features:
- A SWD interface for programming and debugging of Kinetis ARM-Cortex microcontrollers.
- Both the on-board target device (e.g. MKL25Z128M4) and external devices may be programmed.
- Installation of the USBDM software does not require any tools other than the FRDM-KL25Z board.
- Compatible IDEs
- Codewarrior V10.x (Eclipse version). The following features are provided:
- Kinetis - Integration of USBDM debug interface in wizards and debug functions.
- Eclipse (including Freescale Kinetis Design Studio). The following features are provided:
- Kinetis New Project Wizard
- Kinetis USBDM debug target
- Integration of GCC tools (GNU tools for ARM or KDS tools)
- Peripheral Register view tailored for Kinetis devices.
- Codewarrior V10.x (Eclipse version). The following features are provided:
- Stand-alone Kinetis programmer utility.
- Linux compatible
- Windows compatible
- The Firmware in the BDM may be updated using the usual FRDM-KL25 Bootloader function.
- The original board software may be restored if USBDM is not found suitable.
The capabilities and features of the USBDM interface varies
between the different versions of hardware.
Not all of the functionality described in the following pages may apply to this version.
Credits
- The original base code is taken from the
TBDML, OSBDM and TBLCF projects
and I very much appreciate the effort involved in producing the original code.
I hope this extension will be useful.
References
- Altium Designer (PCB Design) - http://www.altium.com/products/altium-designer/
- Axiom MC56F8006 Demo board - http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MC56F8006DEMO
- Codesourcery - http://www.codesourcery.com/
- Coldfire Flasher - http://www.freescale.com/files/soft_dev_tools/software/programmers/CFFLASHER.zip
- Doxygen Documentation tool - http://www.stack.nl/~dimitri/doxygen/index.html
- I2C voltage level conversion - Phillips application note http://www.standardics.nxp.com/support/documents/i2c/pdf/an97055.pdf
- LIBUSB-WIN32 - http://libusb-win32.sourceforge.net/
- MAX662 Data sheet - http://www.maxim-ic.com
- OSBDM - http://forums.freescale.com/freescale/board?board.id=OSBDM08
- OSBDM hardware - http://forums.freescale.com/freescale/board/message?board.id=OSBDM08&thread.id=212
- Tasking GDI Spec - http://www.tasking.com/resources/technologies/debuggers/gdikdi.shtml
- Tcl/Tk - http://www.tcl.tk/software/tcltk/8.5.html
- TBDML - http://forums.freescale.com/freescale/board?board.id=TBDML
- TBDML hardware - http://forums.freescale.com/freescale/board/message?board.id=TBDML&thread.id=2
- USBSPYDER08 - USB mini board for Freescale's Low-End 8-bit Microcontrollers - http://www.freescale.com/
- Ultimate Packer for eXecutables (UPX) has been used to pack DLLs and EXEs - http://upx.sourceforge.net/
- WTBDMS08/12 (Witztronics) Hardware - http://www.witztronics.com/
- WxWidgets Cross Platform Library has been used for the GUI - http://www.wxwidgets.org/
- Xerces XML parser - http://xerces.apache.org/xerces-c
Queries
Any queries please post on the Freescale OSBDM and TBDML Discussion Board.
License
Portions of this software is based on TBLCF software
Portions of this software is based on OSBDM software
Portions of this software is based on TBDML software USBDM
Copyright (C) 2007-13 Peter O'Donoghue Opensource BDM (OSBDM)
Copyright (C) ? Turbo BDM Light (TBDML)
Copyright (C) 2005 Daniel Malik Turbo BDM Light ColdFire (TBLCF)
Copyright (C) 2005 Daniel Malik This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version. This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
USBDM Kinetis Debugger and Programmer的更多相关文章
- USBDM Coldfire V2,3,4/DSC/Kinetis Debugger and Programmer -- MC9S08JS16
Introduction The attached files provide a port of a combined TBLCF/DSC code to a MC9S08JS16 processo ...
- USBDM RS08/HCS08/HCS12/Coldfire V1,2,3,4/DSC/Kinetis Debugger and Programmer -- MC9S08JM16/32/60
Introduction The attached files provide a port of a combined TBDML/OSBDM/TBLCF code to a MC9S08JM16/ ...
- USBDM RS08/HCS08/HCS12/Coldfire V1,2,3,4/DSC/Kinetis Debugger and Programmer -- Software Install
Installation of USBDM for Windows Under Windows, installation is done with a standard Windows MSI fi ...
- USBDM RS08/HCS08/HCS12/Coldfire V1,2,3,4/DSC/Kinetis Debugger and Programmer -- MC9S08JS16
Introduction The attached files provide a port of a combined TBDML/OSBDM code to a MC9S08JS16 proces ...
- USBDM RS08/HCS08/HCS12/Coldfire V1,2,3,4/DSC/Kinetis Debugger and Programmer -- BDM Construction and Firmware
Construction. Build the hardware using the information provided in the PCB download. The following a ...
- USBDM RS08/HCS08/HCS12/Coldfire V1,2,3,4/DSC/Kinetis Debugger and Programmer -- Driver Install
Installation of USBDM USB drivers for Windows There are four installers provided: USBDM_Drivers_x_x_ ...
- 设备管理 USB ID
发现个USB ID站点,对于做设备管理识别的小伙伴特别实用 http://www.linux-usb.org/usb.ids 附录: # # List of USB ID's # # Maintain ...
- 各种版本的ST-LINK仿真器
1.ST官方正式出版了两种仿真器:ST-LINK.ST-LINK/V2,其他型号(ST-LINK II,ST-LINK III,…)要么是国内公司生产,要么是开发板自带的:2.在ST官网ST-LINK ...
- The STM32F746G-DISCO discovery board -- MBED
https://developer.mbed.org/platforms/ST-Discovery-F746NG/ Microcontroller features STM32F46NGH6 in T ...
随机推荐
- Crypto 模块安装
crypto模块的目的是为了提供通用的加密和哈希算法. AES是一种常用的对称加密算法,加解密都用同一个密钥.crypto模块提供了AES支持,但是需要自己封装好函数,便于使用 方法一: 1,到 ht ...
- scala笔记之惰性赋值(lazy)
一.lazy关键字简介 lazy是scala中用来实现惰性赋值的关键字,被lazy修饰的变量初始化的时机是在第一次使用此变量的时候才会赋值,并且仅在第一次调用时计算值,即值只会被计算一次,赋值一次,再 ...
- thymeleaf : EL1050E The arguments (...) for the constructor call are missing
<a href="list.html" th:href="${#strings.replace(new.href,'{page}',1)}" >MO ...
- java采用zip方式实现String的压缩和解压缩CompressStringUtil类
CompressStringUtil类:不多说,直接贴代码: /** * 压缩 * * @param paramString * @return */ public static final byte ...
- laravel队列,事件简单使用方法
A.队列的使用 1.队列配置文件存储在 config/queue.php 根据自己的情况进行配置 2..env文件 QUEUE_DRIVER=database(根据个人情况配置,redis等) 3.创 ...
- vs2010下sort比较函数链接错误问题
环境:win7 + vs2010 + C++ 实现vector的sort算法,在类的头文件中写入比较函数时会出现链接错误: error LNK2005: "bool __cdecl comp ...
- C语言:逻辑推理
1A.B.C.D.E五名学生有可能参加计算机竞赛,根据下列条件判断哪些(10分) 题目内容: A.B.C.D.E五名学生有可能参加计算机竞赛,根据下列条件判断哪些 人参加了竞赛: (1)A参加时, ...
- WebApi 文档Swagger
NET WebApi 文档Swagger中度优化 本文版权归博客园和作者吴双本人共同所有,转载和爬虫请注明原文地址:www.cnblogs.com/tdws 写在前面 在后台接口开发中,接口文 ...
- HBase0.99.2集群的搭建步骤(在hadoop2.6.4集群和zookeeper3.4.5集群上)
HBase介绍(NoSql,不是关系型数据库) HBase是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBASE技术可在廉价PC Server上搭建起大规模结构化存储集群. HBase ...
- form的智能表单
1.智能表单的介绍 其中,(1)中的使用格式使得form不会太臃肿. 2.使用规范 3.新属性 4.举例 二.程序 1.关于邮件的问题 <!DOCTYPE html> <head&g ...