• 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. 按esc键 关闭模态框

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

  2. vsftp服务器部署

    环境:CentOS 6.6 目标:个人虚机部署vsftp服务器,供测试使用. 说明:步骤已改写为脚本,直接添加用户与对应的密码列表,调用函数名即可 ########################## ...

  3. sql server查询某年某月有多少天

    sql语句如下: ),) date from (),,)+'-01' day) t1, ( ) t2 ),) ),,)+'%' 查询结果如下: 2017年2月共有28天,查询出28条记录.

  4. C型USB能阻止危险充电器通过USB传播恶意软件

    C型USB能阻止危险充电器通过USB传播恶意软件 C型USB设备(USB Type-C)的新型身份验证协议可以保护用户免受潜在的充电器损坏的风险,这种新型的USB还能减少被恶意软件的风险.基于密码的认 ...

  5. TrID文件类型识别linux版

    读取文件头根据特征码进行文件类型匹配. 官方:http://mark0.net/soft-trid-e.html windows版本小工具:FileAnalysis 以下是linux版本 wget h ...

  6. imperva 更改agent的注册密码

    imperva agent 在注册到网关的时候显示账号密码错误 如下图 这是一个数据库审计的设备由于当初最开始实施的时候并不是我安装的,所以账号密码我也不清楚,客户留的账号密码也不确定.因此导致账号密 ...

  7. 深入了解mitmproxy(二)

    主题    修改request或者response内容 介绍   mitmdump无交互界面的命令,与python脚本对接,来源于mitmproxy支持inline script,这里的script指 ...

  8. java Socket和ServerSocket多线程编程

    这是在一本java教材上看到的,做了点修改.具体本教材记不清楚了,Sorry.放在这里,只是让自己需要的时候能够容易找到. 程序分两部分,服务端和客户端.先把服务端运行起来,在运行客户端.整个过程就是 ...

  9. P4186 【[USACO18JAN]Cow at Large G】

    思路是覆盖子树,我们发现,农民想截住牛的最优策略是不断向上来尽可能地覆盖更大的子树 我们想要尽早地覆盖一个子树,一个显然的贪心是在这个子树中选取深度最小的一个放农民 如果我们在一个点放置了农民,那么其 ...

  10. Oracle学习笔记:with as子查询用法

    With as短语,也叫做子查询部分(subquery factoring),可以定义一个SQL片断,该SQL片断会被整个SQL语句用到.该语句会在真正的查询之前预先构造一个临时表,之后可以多次使用做 ...