全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 接口/总线/驱动 >

基于USB总线的MC68HC908JB8 Flash在线编程

时间:2011-05-09 10:05

人气:

作者:admin

标签: USB总线  Flash  MC68HC908JB8  在线 

导读:基于USB总线的MC68HC908JB8 Flash在线编程-本文采用USB接口的ICP方法,烧写速度快,无需专用的电平转换芯片,硬件通过微处理器JB8的USB接口与计算机USB口连接即可。...

 

  ICP是一种在实际的目标电路板上烧写和擦除芯片的方法,无需从目标板上将芯片卸下来再编程实现用户程序的修改。这种方法适用于产品开发和代码升级。目前市面上很多芯片(如Philips公司的P89C51、P89V51和LPC932A1,STC89C51和STC89L516RD+,以及AVR公司的ATmega8系列等)都支持串口ICP方式。本文采用USB接口的ICP方法,烧写速度快,无需专用的电平转换芯片,硬件通过微处理器JB8的USB接口与计算机USB口连接即可。

  1 底层软件实现方法

  1.1 Flash配置

  为使用ICP通信连接的USB接口,必须修改JB8中的用户代码以识别预先为ICP定义的USB命令。因此在出厂前,必须将ICP代码烧入JB8中。JB8的Flash配置如图1所示。

  

JB8的Flash配置

 

  图1中,用户Flash区范围为$DC00~$FBFF,用户Flash向量区是从$FFFO到$FFFF。ICP的配置中:ICP的代码是从$F800到 $FBFF。用户Flash向量区在ICP操作中是不能再编程的,这两个区是JB8事先写入的,ICP操作可以对$DCOO~$F7FF的Flash区(图1中阴影区)进行擦除和烧写。

  1.2 向量重定位

  因为ICP的操作只能对用户代码进行编程和烧写,不能擦除用户Flash向量,且用户F1ash向量是固定的,因此在用户代码中的中断服务子程序地址必须重新定位到合适的地址。这种重新定位是通过“假”向量来实现的,3字节的假向量包括JMP指令和在用户代码中的中断服务子程序的绝对地址。图2中指出了假向量是如何重定位的。只有复位向量没有重新定位,总是指向$F800(ICP代码的入口地址)。

  

假向量的重定位

 

  表1列出了中断向量地址和重定位“假”向量地址。

  

中断向量地址和重定位

 

 

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信