|
发表于 2012-4-22 22:55:21
|
显示全部楼层
USBDM V4.9
Main Page
USBDM (combined TBDML/OSBDM/TBLCF/DSC code) for JB16/JS16/JM32/60
Introduction
USBDM is a debugger hardware interface for a range of Freescale microcontrollers. It is designed to work with Freescale's Codewarrior software under Windows and Linux. More recently basic support for Coldfire with Codesourcery Tool chain has been added (WIN only). A set of stand-alone programmers are also provided.
The attached files provide a port of a combined TBDML/OSBDM/TBLCF code to various processors. The primary motivation for doing this was to produce a single BDM that could be used with the following processors
RS08
HCS08,
HC12,
Coldfire V1-4 microcontrollers
MC56F800xx Digital Signal Controllers (very limited range).
Kinetis ARM-cortex
Other features have also been added compared to the original TBDML/OSBDM designs.
This site contains links to Version 4 of the following:
A set of software drivers for MS windows and Linux that work with various version of the Freescale Codewarrior IDE, including the latest Eclipse version.
Standard-alone programmers for some of the targets supported
A description of, and design files for, several versions of suitable BDM hardware
The firmware required for the above BDM hardware.
Quick Links
Design files and software for the various BDMs are available for download on Sourceforge .
Detailed Documentation
JS16 design for HCS08/HCS12/Coldfire V1.
JS16 design for Coldfire V2,3,4/Kinetis.
JMxx design for RS08/HCS08/HCS12/Coldfire V1.
JMxx design for RS08/HCS08/HCS12/Coldfire V1,2,3,4/Kinetis.
JB16 design for RS08/HCS08/HCS12/Coldfire V1 (includes designs for original TBDML/OSBDM hardware).
Utilities
Various stand-alone programmers are provided to support the above hardware.
Previous version 3.2 may be found here.
JS16 based versions (Current designs)
The following two designs use the MC9S08JS16CWJ (20 pin SOIC).
This chip is USB2 Full speed and supports initial programming over USB without needing a BDM.
Minimal design - Supports HCS12, HCS08, Coldfire V1
This is a very minimal design using a MC9S08JS16CWJ (20 pin SOIC).
It is easier to construct than the JMxx versions
It may be programmed over the USB connection and doesn't require a BDM for initial programming.
It replaces the Minimal JB16 designs and is recommended (by me) for newbies!
A PCB design is supplied but is should be possible to roll-your-own on a prototyping board.
Documentation is available here.
(An alternative, larger design is provided that supports Serial over USB (CDC interface) that may be useful.)
Minimal design - Supports Coldfire V2,3,4, Kinetis and DSC (M56F80xx only)
This is a very minimal design using a MC9S08JS16CWJ (20 pin SOIC).
It is easier to construct than the JMxx versions
It may be programmed over the USB connection and doesn't require a BDM for initial programming.
It is approximately equivalent to the earlier JB16 based TBLCF design in functionality.
A PCB design is supplied but is should be possible to roll-your-own on a prototyping board.
Documentation is available here.
(An alternative, larger design is provided that supports Serial over USB (CDC interface) that may be useful.)
JMxx based versions (Current designs)
The two following two designs use the MC9S08JM60CLD (44 pin LQFP).
This chip is USB2 Full speed and requires a HCS08 BDM for programming the device.
USBDM - Supports HCS12, HCS08, RS08 & Coldfire V1
This is a complete fully-featured design using a MC9S08JM60CLD (44 pin LQFP).
It has target power and various other options.
It REQUIRES a BDM for initial programming.
Later firmware updates may be done over the USB
Documentation is available here. .
USBDM-CF - Supports HCS12, HCS08, RS08 & Coldfire V1, V2, V3 & V4, Kinetis and MC56F800xx
This is a complete fully-featured design using a MC9S08JM60CLD (44 pin LQFP).
It has target power and various other options.
It REQUIRES a BDM for initial programming.
Later firmware updates may be done over the USB
Documentation is available here. .
JB16 based versions (These design are longer recommended)
These versions were mainly produced to be compatible with the previous hardware versions of TBDML or OSBDM which were based on the MC908JB16. This is a USB low speed device. The provided firmware versions allow (some) of these devices to be updated to a combined TBDML/OSBDM. It also allows these to be used with the new Eclipse-based Codewarror which does not support the original osbdm or tbdml.
There are several hardware designs supplied :
Complete USBDM - Supports HCS12, HCS08, RS08 & Coldfire V1
This is a complete fully-featured design using MC68HC908JB16DW (28 pin SOIC)
Minimal TBDML 20pin SOIC - Supports HCS12, HCS08, Coldfire V1
This is a very minimal design using MC68HC908JB16DW (28 pin SOIC)
Minimal TBDML 28pin SOIC - Supports HCS12, HCS08, Coldfire V1
This is a very minimal design using MC908JB16JDWE (20 pin SOIC)
BDM firmware versions are also supplied to support several existing hardware designs by other people:
WTBDM08/12
A commercial design available from Witztronics.
OSBDM
A previous design posted on Freescale OSBDM board
HCS08-OSBDM+E
A previous design posted on Freescale OSBDM board
Documentation is available here. .
Provided Utilities
Various stand-alone programmers are provided to support the above hardware. Documentation is available here. .
Notes
Please note that these design are different from the Freescale OSBDM-JM60 design which was proceeding independently while I was doing the above designs.
Credits
The bulk of the 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.
The hardware interface is based on TBDML, Freescale USBSPYDER08 and my own invention.
References
Altium Designer (PCB Design) - http://www.altium.com/products/altium-designer/
Axiom MC56F8006 Demo board - http://www.freescale.com/webapp/ ... ?code=MC56F8006DEMO
Codesourcery - http://www.codesourcery.com/
Coldfire Flasher - http://www.freescale.com/files/s ... mmers/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/s ... i2c/pdf/an97055.pdf
or http://www.nxp.com/acrobat_downl ... notes/AN10441_1.pdf (Phillips part of NXP now?)
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/free ... 8&thread.id=212
Tasking GDI Spec - http://www.tasking.com/resources ... uggers/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/free ... DML&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
Windows Installer XML (WiX) toolset http://wix.sourceforge.net/
Queries
Any queries please post on the Freescale OSBDM Discussion Board.
Some Commercial versions of USBDM BDMs
I am aware of several companies producing commercial versions of USBDMs of various kinds:
Flashgenie.net
Technological Arts
Witztronics
Wytec's Motorola/Freescale software development tools
The software may be used to "upgrade" the Axiom MC56F8006 Demo board to enable the on-board BDM.
Axiom MC56F8006 Demo 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-12 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 |
|