在OURAVR混了几个月,终于忍不住发点帖子了:)
本科开始一直在做和freescale有关的事情,做智能车,卖核心板BDM,贩芯片,,,
这里公布一个S12系列16位单片机的BDM开发工具制作方法,基于Freescale官方论坛开源TBDML项目,自己没有写代码就是画了图做了板子。
都说freescale是有钱人玩的东东,其实这个开源BDM方案成本极低,适合自制,比起进口的P&E在调试和开发上完全不相上下!
国内现在也有这类BDM销售,比如清华大学MOTO中心 and 我 and so on,不过还没有一篇中文的制作资料。
Freescale S12单片机开发工具
TBDML(BDM)制作说明
刘大川(jjldc) 2008.7
本BDM是根据飞思卡尔官方论坛TBDML制作资料为基础,参考清华大学S12BDM实物而设计制作的开源BDM工具。价格低廉、制作方便、方案成熟,是飞思卡尔S12系列16位单片机性价比最高的开发工具。
原先本产品在淘宝网销售,取得了不错的销售业绩,深受广大用户的喜爱。鉴于成本和时间的原因,制作和销售BDM基本已无利可图,因此决定将其电路原理图、制作方法全部开放,同时销售PCB及配套元件的套件,焊接和调试工作由用户完成,让用户可以更加了解其工作原理。
TBDML硬件安装
TBDML制作套件包括PCB、主控制器68HC908JB8单片机、74hc125、电阻电容及接插件、外壳。元件清单见附录1。
套件全家福 (原文件名:套件.jpg)
跟据元件清单说明,将所有元件安装至PCB上,注意两颗钽电容和LED的极性。
组装完成后的PCB如下图:
成品 (原文件名:成品1.jpg)
到此,PCB安装告一段落。
另外我们可以为BDM制作一个外壳。
盒子 (原文件名:盒子.jpg)
BDM跳线说明:
PCB左侧设置3组跳线。
J4:BDM接口定义
跳线J4用来选择BDM电缆的信号定义。
Freescale对S12BDM的定义如下:
1 BKGD 2 GND 3 NC 4 RST 5 NC 6 VCC
这种定义方式,将通讯口BKGD设置在第一脚,VDD在第六脚,若BDM插反,VDD将直接与BKGD短接,很可能引起芯片BDM模块故障,无法进行写入。
下图是一种改进的BDM电缆定义方式,
1 NC 2 GND 3 BKGD 4 RST 5 NC 6 VCC
该方式将BKGD设置到第三脚,即使BDM头插反,也不会引起任何严重的后果。
本BDM电路为兼容这两种定义方式,设置了J4跳线供用户选择。
J4位置 BDM接口定义
12短路(跳至右侧) BKGD在1脚,Freescale方式
23短路(跳至左侧) BKGD在3脚,改进的方式
J5、J6:目标板供电方式设置
设置类型 跳线J5 跳线J6 目标板工作电压 目标板供电方式
1(默认) 闭合 断开 +5V 自供电
2 闭合 闭合 +5V BDM对目标板供电
3 断开 闭合 +3.3V 自供电
4 断开 断开 无效 无效
举例:如果目标板供电为5V,则短接J5。目标板若要由BDM供电,则短接J6,否则断开J6。
TBDML固件程序的写入
单片机68HC908的程序如何写入?这里有一种简单实用的方法。即“Direct serial to target with MON08 serial circuitry”
可以按照下图制作简易串行编程器,对HC08单片机进行高压串行编程。BDM的PCB上已经预留了相应的编程接口,即J1插座。用户只需自行焊接一片MAX232的编程器,将其用排线与J1连接,使用prog08sz就能对单片机进行程序写入了。
编程器原理图ourdev_340423.gif(文件大小:593K,只有300K以内的图片才能直接显示) (原文件名:编程器原理图.gif)
自制编程器 (原文件名:编程器.jpg)
工具制作完成后,即可进行程序的烧写。
1. 将编程器与TBDML板J1通过排线连接,编程器串口与PC连接。
2. TBDML板插入USB线上电(此时单片机自动进入高压编程模式)。
3. 运行PROG08SZ,设置相应串口,波特率9600,选择编程模式为Class3 (“Direct serial to target with MON08 serial circuitry”)。选中复选框Ignore security failure。
4. 点击Contact target with these settings,与目标板连接。
5. 当出现以下提示时,须将MCU掉电后再上电即插拔一次USB线,然后点击OK即可。
6. 连接成功后,载入编程算法文件908_jb8_highspeed.08P,在prog08sz的algorithms目录下。
7. 擦除芯片
8. File –> Specify S-record file 指定bdm_light.sx文件(此时跳出的文件选择对话框可能无法找到.sx文件,需要先输入*.*回车后再进行选择)。
9. Program module
10. 等待写入完成,拔掉编程线,程序烧录即完成。
此时,插入USB线,BDM电源和通讯灯亮,系统自动识别出BDM。
如果系统还未安装TBDML驱动,则会弹出驱动安装向导,根据向导进行驱动安装即可(Codewarrior for S12 4.5以上版本已包括相应驱动)。
调试中 (原文件名:调试中.jpg)
到此,TBDML的制作完成。
秀一下许多BDM:)
许多元件 (原文件名:20只套件.jpg)
资料转载于 他站、仅供同学学习使用
|