USBDM full version instructions

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 81

USBDM 仿真器

说明书

2013-11
目录
1 简介 .................................................................... 3
2 集成开发环境 Codewarrior 安装及 BDM 软件安装 .............................. 8
3 安装驱动 ............................................................... 13
4 拷贝 GDI 文件,为 CW 软件配置环境 ........................................ 17
5 用 USBDM 调试 HCS08、HCS12、CodefireV1 的方法 ............................ 19

6 用 codewarrior10.5 调试 HCS08 ........................................... 30


7 用 codewarrior10.5 调试 Kinetis_K60 ..................................... 42
8 USBDM 用作编程器的方法.................................................. 68
9 USBDM 用来校准内部时钟.................................................. 74
10 常见故障 ............................................................... 76
1 简介
1.1 USBDM 简介:

USBDM 是一种针对飞思卡尔单片机的仿真器与编程器的组合体,可以仿真和烧写飞思卡尔的很多型号

的芯片。此版本 USBDM 支持如下系列:

◦HCS12 (including those without SYNC feature (e.g. 9S12DP256B)

◦HCS08

◦RS08

◦Coldfire V1 microcontrollers

◦Coldfire V2, V3 & V4 microcontrollers

◦Kinetis ARM-Cortex microcontrollers

◦MC56F80xx Digital Signal Controllers

1.2 装箱单:
USBDM仿真器………1台

USB线………1条
HCS08, HCS12/CodefireV1 6针2.54间距排线---1条

 MC56F80xx 系列DSP 14针2.54间距排线---1条

Coldfire V2, V3 & V4 26针2.54间距排线---1条

ARM-JTAG 20针2.54间距排线---1条

1.3 状态指示灯:
USB---BDM的供电指示,查到USB接口上,灯亮,则表示BDM设备从USB接口获取供电正常

COM--- BDM的USB接口通信指示灯,PC上装好BDM驱动后,BDM查到USB接口上,PC

识别BDM后,则该LED指示灯会亮起。反之则驱动没有装好,或者未装驱动。

PWR---BDM的连接目标板供电指示,当目标板供电正常的时候,BDM的这个灯会亮起。

1.4 接口:

(1)、支持 HCS08 /HCS12/CodefireV1 6 针 BDM(2.54mm 间距)、

本 BDM—6P 头线序
如果不确认线序,在使用时尝试,插头可以旋转 180 度,防止插反插头线序,翻转后不会烧坏板子;

BDM 排线上红色边不一定全是 1 脚,也有可能是 VDD 脚,不过只要上面线序就可以 180°翻转后使

用。
(2)、支持 MC56F80xx 系列 DSP -----14 针接口(2.54mm 间距)、

跳线 BR2 默认短接到 TA*上,PST3 为以后预留其他功能

(3)、支持 Coldfire V2, V3 & V4-----2 6 针针接口(2.54mm 间距)

(4)、支持 ARM 的标准 JTAG-----20 针针接口(2.54mm 间距)


(5)、mini-ARM 的 JTAG-----10 针针接口(1.27mm 间距)

(6)、mini-ARM 的 JTAG-----20 针针接口(1.27mm 间距)


(7)、XilinxJTAG 的----14 针针接口(2.0mm 间距)

1.5 支持的 codewarrior 版本


Codewarrior Development Studio for HCS12(X)V5.1
CW for Microcontrollers V6.3 (RS08 is not supported)

CW for Coldfire V7.1


CodeWarrior for DSC56800E v8.3
CW10.5 以下版本
如果是 win7 以上操作系统,请选择 CW10.5,因为低版本会存在与操作系统不兼容问题,
此不兼容问题与仿真器驱动无关系,属于纯软件兼容性问题。
飞思卡尔不断升级 CW 软件,最新软件不一定支持,请客户按照需要选择 CW 软件版本,最新的不一

定是最好的,稳定可靠的才是好版本。

1.6 支持的系统
Xp win7(出现过 win7 系统无法使用的情况出现,建议使用 xp 系统)win8 操作系统等最新系统不

建议做开发使用,可以采用 VM 的虚拟机来虚拟 XP 进行开发。

XP 下可以使用任何版本的 CW 软件,但是 CW6.3 不能用在 win7 以上版本,其他软件兼容性不确

定,请客户注意,开发软件是飞思卡尔公司的,兼容性问题不是 BDM 问题可以解决的。

计算机接口为 USB3.0 的接口会存在兼容性问题,如果不能使用,请检查是否 USB 接口为 USB3.0

的。一般计算机都有 USB2.0 的预留,请将插 USB 的接口使用 USB2.0

1.7 支持的芯片系列
◦HCS12 (including those without SYNC feature (e.g. 9S12DP256B)

◦HCS08

◦RS08

◦Coldfire V1 microcontrollers

◦Coldfire V2, V3 & V4 microcontrollers

◦Kinetis ARM-Cortex microcontrollers

◦MC56F80xx Digital Signal Controllers

2 集成开发环境 Codewarrior 安装及 BDM 软件安装

安装步骤:
1、先安装CW开发软件,CW开发软件要按照默认目录安装,这个而是必

须的。一般客户机器上都带CW软件,这样就相当于先装了CW软件。

2、再安装BDM软件,USBDM软件会自动配置开发环境。

一定要按照上面顺序安装软件,否则USBDM的软件无法初始化配置CW开

发环境。

2.1、 安装Codewarrior

根据你的需要,安装 USBDM 支持的 codewarrior 版本(见 1.4)


。在

这里,我安装 codewarrior10.5。具体的安装步骤就不再列出。

重点注意:安装 CW 开发软件一定要安装到默认目录下(默认 C 盘)

否则开发环境无法识别 USBDM。

注意:要先安装 codewarrior,再进行以下安装步骤。若只把 USBDM

当作编程器使用,可以不用安装 codewarrior.

2.2、 安装USBDM软件

由于软件的更新,该软件的版本号会有变化,其支持的 codewarrior

版本,见 ReadMe. 我这里以 USBDM_4_10_6_80_Win .msi 为例说明。

双击光盘下的 USBDM_4_10_6_80_Win .msi。


启动安装

单击―Next”,
单击―Next”,

单击―Next”,

单击―Next”,
安装进行中。
。。。

经过短暂等待后,出现安装完成对话框。

单击―finish”,安装完成。
此时,在―程序‖菜单中,出现 USBDM 4.10.6.80

3 安装驱动
驱动安装文件在 USBDM 驱动目录下

USBDM 驱动有四种驱动:
1、USBDM_Drivers_1_2_0_Win_x32 对应 win7 的 32 位版本的系统

2、USBDM_Drivers_1_2_0_Win_x64 对应 win7 的 64 位版本的系统

3、USBDM_Drivers_1_2_0_WinXP_x32 对应 XP 的 32 位版本的系统

4、USBDM_Drivers_1_2_0_WinXP_x64 对应 XP 的 64 位版本的系统

举例说明:我们使用 XP 系统 32 位:

双击 USBDM_Drivers_1_2_0_WinXP_x32

选择接受,然后点 Install,进行自动安装
安装驱动成功。

插上 USBDM 到计算机的 USB2.0 接口:

选择自动安装,就完成 USBDM 驱动的安装

安装完驱动,计算机的设备管理器就有 USBDM 的设备:


打开设备管理器检查一下:

若看到 USBDM BDM interface,表明驱动安装成功。

接下来,验证 USBDM 是否可用: 打开 “开始/程序/ USBDM

4.10.6.80/ HCS12 Programmer”,


如果看到 Select BDM 一栏下面,出现

如果没有出现设备,可以尝试点“Detect”,还不出现,要检查是否使用 USB3.0 接口,因为 USB3.0 可

能存在于USBDM驱动不兼容现象。

说明驱动已经安装成功。

4 拷贝 GDI 文件,为 CW 软件配置环境


如果出现安装 BDM 软件后,进入仿真时,无法弹出电压配置菜单(下图配置菜单)
针对 CW5.1 和 CW6.3 版本,检查 CW 软件是否安装在 C 盘默认目录下,如果安装位置没

有问题,可以将 BDM 提供文件包中的 GDI 文件拷贝到对应的位置:


其他较低的CW软件,也可以考虑GDI文件,解决版本低无法使用BDM软件自动配置
问题。
拷贝 GDI 文件,S12 系列的拷贝到这里 C:\Program Files\Freescale\CWS12v5.1\Prog\gdi
HCS08 系列的飞思卡尔单片机要拷贝到这里 C:\Program Files\Freescale\CodeWarrior

for Microcontrollers V6.3\prog\gdi


开发 58 系列 DSP 的朋友,没有电压弹出菜单,请 GDI 文件夹下的 USBDM 文件夹全部拷
贝到这个安装目录中 C:\Program Files\Freescale\CodeWarrior for DSC56800E v8.3\bin\Plugins\Support
5 用 USBDM 调试 HCS08、HCS12、CodefireV1 的方法

5.1 在工程里选择仿真器:
新建工程时按下表选择仿真器

5.2 步骤:
下面以 HCS08 为例,描述一下具体操作步骤。

1、打开 CW6.3 建立一个新工程,出现下面对话框:


2、左边选择您所用的芯片型号,右边选择―HCS08 Open Source BDM‖。

单击―下一步‖,出现
3、为工程起个名字,选择你希望的路径,单击―完成‖即可(如果你想

对后续步骤做特殊设置,此处单击―下一步‖,进行希望的设置后,单击―完

成‖)

这一步没有可以要改的,点“下一步”
到这里,我一般点中间的,启动飞思卡尔的处理器专家,为了方便生

成一些初始化代码。

这一步也不用改什么,这些就是说编译模式的大小端,不用研究的。

也要改变什么。
这里也不用改变,点完成就建立了一个新的 CW6.3 的项目。
请确认这里是否选择的是我们的 USBDM 仿真器,如果不是,在下拉

菜单里选择。

4、点下图所示按钮,对项目进行编译:

5、点下图所示按钮,对项目进行开始调试:
会自动弹出如下电源配置菜单,

1、 选择对应的目标板的电源电压,AW60 是 5V,我们选择了 5V

2、 这里都不要选择,选择会出现以外的情况。
下面对常用选项卡做简要说明:

BDM 选择:如果电脑上同时连接多个 BDM,可以在这里选择使用的 BDM。

连接控制选项,一般默认即可

3、 点 OK,启动程序下载,进入下载程序步骤,

程序下载完成后,就进入了程序调试界面:就可以进行“单步”、“设断

点”等调试操作。
5.3 HCS12 和 CodefireV1 的对话框
HCS12 和 CodefireV1 的操作步骤基本上和 AW60 的调试方法一样。
只是使用的开发环境不一样 HCS12 使用的 CW5.1
6 用 codewarrior10.5 调试 HCS08

6.1,打开 codewarrior10.5

1:选择项目工作空间放置位置:我们默认了

点 OK,启动开发环境:
2,单击新建一个项目:如下图所示

输入工程的名字,这里我输入”AW60”,然后单击“Next”
选择对应的 CPU

选择芯片”MC9S08AW60”,点击”Next”
这里要选择上”USBDM”,点击 Next,
这里是语言的选择,选择 c,点击 Next,
这里可以选择是否使用 PE,我不使用,点击 Next,
这个对话框中,有一项需要特别注意的是浮点数选择,如果你的程序

中使用浮点数,就需要选择 float,这里我没有使用,默认即可。然后,点击

“finish”.
右键工程,build project
在 console,可以看到编译的信息

查看仿真器设置是否正确:点

进入调试工具设置界面:
点 Edit,进入仿真工具功能设置界面,

选择 BDM 输出电压 5V 给目标板,也可以选择 3.3V,依据目标板参

数确定选择的电压。确认仿真器选择要选择是 USBDM。
点 OK,确认后
点 Debug, 启动程序下载,并进入调试界面:
进入调试界面后,就可以进行程序调试了,上面的调试按钮是单步,

全速,等基本的操作按钮。

7 用 codewarrior10.5 调试 Kinetis_K60
这里以 K60 作为说明,其他飞思卡尔的 ARM 操作类似不再进行说明。

配置说明:

开发环境:codewarrior10.5

操作系统:win7 64 位

USB 接口: 2.0(如果是 USB3.0 可能会存在驱动兼容问题,请尽


量使用 USB2.0)

1:选择项目工作空间放置位置:我们默认了

点 OK,启动开发环境:

启动过程

选择这里新建一个 K60 的项目:


自己设置一个项目名称和存放的位置(存放位置默认)

下一步,选择对应的芯片:
然后,下一步

图中 2 表示已经连接到计算机的 USBDM。如果 USBDM 没有插到计

算机上,则不会显示这个。

然后点 3,进行下一步:这一步没有什么可以改动
下一步,这里选择是否使用飞思卡尔的处理器专家软件,我们也不选

择,处理器专家是一个很好的生成初始化代码的软件,有兴趣的话,可以

找相关的资料研究一下:
下一步就完成了一个项目的引导创建过程。

这样就新建完成了一个 K60 的项目:


对着项目文件点右键,选择 build project 对项目进行一下编译:生成

可执行文件。

这里可以看到编译过程信息:

编译完成后,进行调试环境配置,只有配置好调试环境,才能对代码

进行下载到单片机内逐行调试:选择这个菜单进入配置界面:
进入后,出现菜单:

注意当前 1 设置的是调试 K60 的那种方式,当前是 ARM 方式,然后

点击 2 进入设置:

注意下图设置界面:
1, 查看是否是 USBDM 仿真器

2, 选择和目标板对应的 USBDM 匹配电压,无论是否使用 USBDM

给目标板供电,都要选择该处对应的电压。

3, 第三步最重要,一定要选择”Mass erase device”,否则会出现下

载不进去的情况,这里一定要注意,采用 FLASH 调试和 RAM 调

试都是要选择这里”Mass erase device”

4, 然后点 OK 确认设置,点 OK 后,可以在下一步直接进入调试:


进入调试界面后:

1、 显示当前调试停止在 main 函数入口处,

2、 可以通过 2 的调试控制按钮进行“单步”
“全速”等多种调试方式。

进行到这里,就完成一个项目的新建和调试的学习
下面说一下 CW10.5 也可以载入一个现有的例程来进行调试,

CW10.5 软件带了很多的例程,我们可以通过下面的方法找到例程:在主

界面中找到下面的选项:
选择后,进入一个欢迎的页面,选择”Kinetis Example Projects”

在这里选择一个例程,移动上下进度条,选择一个合适的例程(例如:
K60 的 PWM)
,并拷贝到当前的项目工作空间,请一定拷贝代码到项目工

作空间,否则,修改后的代码无法保存。

开发环境的项目列表中就出现了我们原来的 K60 新建的例程,


完成后:

和后来我们加入的 PWM 例程:


加入项目后,对项目进行编译,保证编译通过的项目才能进行调试:

CW10.5 自带的这个“PWM”例程有些问题,编译通不过,编译问题是有

几个串口定义的函数重复定义了,可以尝试删掉后,保证编译通演示的,

其他例程操作可以参照此演示,例程可以自行选择。
编译过以后,显示的问题是:
翻译一下就是,这个几个函数重复定义了,我们这里不去找重复定义

在哪里,因为可能是在 pirint 的一个函数库里重复了,所以,我们暂且将

重复定义的部门先注释掉,保证演示 USBDM 方法的进行。

可以先使用搜索的功能,找到这个几个函数的头文件,
将头文件加入到其他文件中的位置搜索出来,逐一的先注释掉。
将找到的全部注释掉,只需要注释加入头文件的代码就可以了。然后

编译项目:

然后将“CsIO1.h”和”CsIO1.c”两个文件从项目中移除:
请注意:删除前一定要备份项目,否则,删除的代码无法恢复(做开

发备份最重要)

然后清除一下上次编译的文件,再进行一次新的编译:
编译通过后,编译的结果会在下面菜单显示:

上面显示生成一个可以执行的文件。

然后,选择进入调试调试工具配置界面:
这里出现了很多不同仿真器的配置调试选项:

可以对着项目点右键,删除一些我们认为不用或者用不到的项目:
我们选择留下其中的两项:

然后进入到调试器的属性设置界面,点 2 进入:在这里选择调试器为

USBDM
选择调试器后:注意如下三项内容的选择,和新建的项目类似了

然后点“OK”就设置完成,下一步直接点“Debug”启动调试。
然后就完成了下载,进入到了调试界面:

1、依然停在 main 函数,

2、操作不同的调试按钮,进行单步和全速调试。
至此,完成了 CW10.5 调试 K60 的操作,如果有代码编译问题,请查

看 CW10.5 问题框提示进行解决。

8 USBDM 用作编程器的方法

USBDM 不仅能用作仿真器,也可以用作独立的编程器。以后烧程序不

用再点―DEBUG‖进行复杂的操作。 USBDM 自带多种芯片编程器,不同的

编程器烧写不同的芯片,如下面的表格所示。

编程器 支持的具体型号

ColdFire V1 Programmer ColdFire V1系列

HCS08 Programmer HCS08系列

HCS12 Programmer HCS12系列

现在,以 AW60 芯片为例,描述烧写过程:

1、打开―程序 -> USBDM 4.10.6.80 –> HCS08 Programmer‖


―USBDM‖选项卡,选项默认即可。―USBDM‖选项卡,选项默认即可。

选择和目标板对应的电压,AW60 为 5V
点“Target ”选项卡,出现:
1、点“Flash Image Buffer”里的“Load Hex Files”按钮,出现:
选择要烧写的文件,单击“打开”,文件名出现在“Flash Image Buffer”

底部:

此处特别要注意,载入的.S19 文件的路径一定要是全英文的,否则,

软件无法载入 S19 文件。特别要注意。如果载入文件放置到中文路径的文

件夹下,则提示错误:
.S19 文件请一定要放置到英文路径的英文文件夹下,否则无法烧写。

2 的 Detect chip,来识别一下芯片,选择对应的芯片。

AW60 识别出来为 6008 的 ID

3 点编程,即可烧写芯片程序。

在“Security”选项卡里选加密类型,可以选“加密”、“不加密”、“保留

Image 里的加密设置”。

要选择 EraseMass

上述设置完毕,单击“Device Opetions”里的“Program Flash”按钮

就可以进行芯片烧写,出现:

烧完之后出现:
如果继续烧写芯片,则需换上芯片,点“是(Y)”。 否则点“否(N)”即

可。

9 USBDM 用来校准内部时钟
该功能仅限 8 位单片机使用,32 位单片机暂时不适用。

下面以 MC9S08AW60 为例说明: 打开 HCS08 programmer

选择对应的电压:
选择 Target 选项卡,

点击 load hex files,选择我们要下载的文件。我的文件是 ABC.s19

在 Device selection 部分,选择我们的芯片,

这里我选择 MC9S08AW60

在 clock type and parameters 部分,选中 Trim Frequency,

Security 部分,由于我不对芯片加密进行设置,所以我选择 image.

Erase Options 部分,选择 EraseMass.


最后,点击―Program Flash‖ 。

10 常见故障

Q:若过程中出现下面对话框,
A:点―确定‖擦除一下芯片。

Q:若过程中出现下面对话框,

A: 是 JTAG 排线接触不良,检查排线或必要时更换一条排线。

Q:出现
A:选的固件(firmware)与硬件(hardware)不一致。

Q:

A:路径中有中文,USBDM 不支持中文路径。

Q:

A:挖除选项选的不对,选成 了,应该选

Q:
A:仿真器与目标板没连好,或目标板没电。如果确认连好且有电,点

―Retry‖。如果目标板没有供电,可以点―Change Settings‖选择让仿真器给目

标板供电。

Q:

A:当与目标板连接时,你可能看到―cycle the target power‖的提示。断电

再重新上电,点―Yes‖重试连接。此操作过程中―BKGD‖引脚保持低电平,

该操作对 HCS08 系列单片机在某种模式下不响应软件复位很有用。比如有

可能空的芯片有看门狗复位,或处理器时钟停止,还有可能是 BKGD 引脚

被程序用作 GPIO。
Q:

A:当一开始连接时,可能提示给目标板供电,意思是说仿真器检测到

目标板没有电源。

Q:
A:该警告是说用仿真器给目标板供电时,负载太重,超出仿真器供电

能力,也可能是负载瞬间短路所致。仿真器检测到该情况会停止对目标板

供电直到重新进调试模式。

You might also like