• Introduction

The attached files provide a port of a combined TBDML/OSBDM code to a MC9S08JS16 processor. 
The primary motivation for this was to produce a single BDM that could be used with a range of Freescale microcontrollers. Additional software features have also been added.
This implementation has minimal features to simplify construction and does not require a BDM for initial programming.
An alternative version is provided that adds an ARM SWD interface that supports Freescale Kinetis devices.


Quick Links


Features

This version of the code & extended hardware provides the following features:

  • A single BDM interface for programming and debugging of the following targets:

    • HCS12 (including those without SYNC feature (e.g. 9S12DP256B)
    • HCS08
    • Coldfire V1
    • Kinetis (via SWD interface on selected versions)
  • No re-flashing of the BDM is required when changing between targets
  • Compatible IDEs
    • Codewarrior V10.1/2 (Eclipse version)

      • Tested on Windows-XP-32bit, Windows-7-32bit, Windows-7-64bit
      • Tested on Ubuntu-32-bit
    • Codewarrior Legacy versions
    • Codewarrior Development Studio for HCS12(X) V5.1 & 
      CW for Microcontrollers V6.3 (RS08 is not supported)
      • Tested on Windows-XP-32bit, Windows-Vista-32bit
    • Initial support for CodeSourcery Lite for Coldfire
      • Tested on Windows-XP-32bit
  • Trimming of target internal clock (Eclipse version or standalone programming tools only).
  • Higher USB communication speed cf. JB16 version BDMs (USB full speed cf. USB low speed)
  • Vista compatible
  • Linux compatible
  • Initial Firmware programming may be done without a BDM using the JS16 USB bootloader ROM.
  • The Firmware in the BDM may be automatically updated using an in-circuit-programming (ICP) feature.
  • Hardware is physically small
  • HCS12, HCS08, Coldfire V1 specific features:
  • Target reset detection & control (required for HC12 processors). This allows HC12 processors to be reset into BDM mode as required for debugging.
    • A higher BDM interface speed than the existing JB16 OSBDMs. Up to 56MHz. (BDM clock 28MHz).
    • Automatic re-connection. The software has an option to continuously update the interface speed to prevent loss of communication if the target BDM interface speed changes (as may occur with clock changes on some targets).
    • Control of BDM clock selection in HC12/HCS08/Coldfire microcontrollers. Most of these targets provide an alternative BDM clock selection. This can have advantages when connecting to high speed targets as the alternative clock may operate at a lower speed.
    • Trial-and-error determination of communication speed for earlier HC12 targets.
    • User prompting for target supply cycling with BKGD low as may be needed for HCS08 targets

Pictures (USBDM_JS16_SWD - HCS08/HCS12/CFV1/ARM-SWD)

USBDM Minimal HCS08/HCS12/CFV1 & SWD interfaces

USBDM HCS08/HCS12/CFV1, SWD & Serial interfaces with manual target power.

Hardware Design

Please refer to the following PDF documents for Schematics, Assembly Overlays & Bill of Materials:

Differences to JB16 TBDML/OSBDM

  • The PCB artwork provided is for a double-sided plated-through-hole board using surface mount components. This seems a reasonable decision since the processor is only available in a SMT package in any case. It is quite possible to prototype the the first and third designs using a non-PTH board as the required vias have not been located beneath components and may be replaced with feed through wires. 
    The above images are for a milled board that was hand assembled.

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.
  • The hardware interface is based on TBDML, Freescale USBSPYDER08 and my own invention.

References

Minimal HCS08/HCS12/CFV1 interface

http://usbdm.sourceforge.net/USBDM_V4.12/USBDM_JS16/html/USBDM_JS16CWJ.pdf

Minimal HCS08/HCS12/CFV1 & SWD interfaces

http://usbdm.sourceforge.net/USBDM_V4.12/USBDM_JS16/html/USBDM_SWD_JS16CWJ.pdf

HCS08/HCS12/CFV1, SWD & Serial interfaces with manual target power.

http://usbdm.sourceforge.net/USBDM_V4.12/USBDM_JS16/html/USBDM_SWD_SER_JS16CWJ.pdf

USBDM RS08/HCS08/HCS12/Coldfire V1,2,3,4/DSC/Kinetis Debugger and Programmer -- MC9S08JS16的更多相关文章

  1. 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 ...

  2. 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/ ...

  3. 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 ...

  4. 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_ ...

  5. 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 ...

  6. USBDM Debugger interface for Freescale RS08,HCS08,HCS12,Coldfire and ARM-Kinetis Devices.

    Introduction USBDM is a debugger hardware interface for a range of Freescale microcontrollers. It is ...

  7. USBDM Kinetis Debugger and Programmer

    Introduction The FRM-xxxx boards from Freescale includes a minimal SWD based debugging interface for ...

  8. Freescale OSBDM JM60仿真器

    OSBDM-JM60 - 9S08JM60 Based OSBDM — It includes interfaces and firmware applied to all the targets s ...

  9. Freescale OSBDM JM60仿真器 BGND Interface

    The BGND interface provides the standard 6 pin connection for the single wire BGND signal type devel ...

随机推荐

  1. iOS设置tableViewCell之间的间距(去掉UItableview headerview黏性)

    经常在项目中遇到自定义cell的情况,而且要求cell之间有间距,但是系统没有提供改变cell间距的方法,怎么办? 方法1:自定义cell的时候加一个背景View,使其距离contentView的上下 ...

  2. oracle用户密码过期!the password has expired

    Oracle提示错误消息ORA-28001: the password has expired,是由于Oracle11G的新特性所致, Oracle11G创建用户时缺省密码过期限制是180天(即6个月 ...

  3. 按esc键 关闭模态框

    <!-- help start --> <div class="modal fade" id="myModal" tabindex=" ...

  4. [BZOJ 2257][JSOI2009]瓶子和燃料 题解(GCD)

    [BZOJ 2257][JSOI2009]瓶子和燃料 Description jyy就一直想着尽快回地球,可惜他飞船的燃料不够了. 有一天他又去向火星人要燃料,这次火星人答应了,要jyy用飞船上的瓶子 ...

  5. ZYNQ. DMA基本用法

    DMA环路测试 vivadoblock zynq7 + dma +fifo sdk 中可以导入 demo demo 中 默认都是 一个字节8bit数据 的测试程序. 如果是其他长度的数据,不仅要修改数 ...

  6. java中final、finally、finalized使用方法

    首先需要明白  final和finally是关键字,finalize是一个方法. 1. final关键字 final可以修饰类.方法.变量, 修饰类表示类不可以被继承 修饰方法表示此方法不可以被重写( ...

  7. Nagios介绍

    Nagios介绍 Nagios是一款功能强大.优秀的开源监控系统,它能够让你发现和解决IT架构中存在的问题,避免这些问题影响到关键业务流程. Nagios最早于1999年发布,它在开源社区的影响力是相 ...

  8. 为何gpio_to_irq不能静态使用?【转】

    之前在调试传感器模块的时候发现,在结构体声明的时候irq成员使用gpio_to_irq会报错,而动态使用的话就没有问题.就对gpio_to_irq为什么不能静态使用产生了疑问.恰巧最近又有朋友遇到了同 ...

  9. Project Euler Problem3

    Largest prime factor Problem 3 The prime factors of 13195 are 5, 7, 13 and 29. What is the largest p ...

  10. MySQL一问一答

    一.问:如果有一张表,里面有个字段为id的自增主键,当已经向表里面插入了10条数据之后,删除了id为8,9,10的数据,再把mysql重启,之后再插入一条数据,那么这条数据的id值应该是多少,是8,还 ...