简介
ADuC703x 系列器件的一个主要特性是能够将代码在线下
载至片内 Flash/EE 存储器,这种在线代码下载通过 LIN 通
信总线执行。
本应用笔记描述 ADuC703x 器件使用协议 6 实现的下载协
议,以便用户能够开发自己的 LIN 编程工具来进行串行生
产编程或应用更新。
在本应用笔记中,主机指的是用来下载数据至 ADuC703x
的主机(微控制器、DSP 或其他机器) ,加载程序特指
ADuC703x中固化的串行下载固件。
注意,本应用笔记仅描述协议 6。协议 6 遵从 UDS(ISO/
DIS 14229-1.2,道路车辆统一诊断服务)规定的一般程序。
然而, 由于可用代码空间有限, 仅限于实际最低需求的服务。
应用笔记 AN-881( “通过 LIN—协议 4 进行 Flash/EE 存储
器编程” )描述协议 4,详情请访问
www.analog.com/zh。
器件标识的第 3 行显示所用协议。A60 表示协议 6 的发行
版本,A40 则表示协议4。
表1. 标识实例
行 LFCSP
行1 ADuC7033
行2 BCPZ 8L
行3 A60 # 日期代码
行4 组装批次号
编程序列可以通过诊断测试仪启动和控制,诊断测试仪一
般通过控制器区域网络 (CAN) 连接到 LIN 主机。LIN 主机
充当一个网关,将诊断消息从 CAN 总线路由到 LIN 总线。
为了方便诊断消息从 CAN 路由到 LIN,模块编程所用的
LIN 命令应符合“LIN 诊断和配置规范” (2.0 版,2003 年 9
月23日) 。
运行 ADuC703x 加载程序
为了实现 LIN 下载,只有当 NTRST 在复位期间为低电平,
并且 Flash/EE 存储器地址 0x80014 的内容不是 0x27011970
及页 0 校验和时,ADuC703x 才会进入加载程序模式,如
图1所示。
一般情况下,NTRST 保持低电平,进入下载模式与否由
Flash 地址 0x80014 的内容决定。通常而言,Flash 地址
0x80014 的值不是 0xFFFFFFFF,因此,用户代码必须具有
一个内置机制来毁坏位置 0x80014 或擦除页 0(Flash 地址
0x0 至 Flash 地址 0x200) ,并且复位器件。这种机制支持进
入下载模式,以便对器件重新编程。理想情况下,Flash 地
址 0x80014 的值应最后编程,以便在电源发生故障时,或
者在对程序主体进行编程期间发生错误时,能够重新进入
下载模式。
页 0 的校验和指页 0 中的所有半字之和,不包括地址
0x80014 的两个半字。该校验和必须存储在地址0x80014
AN-951:使用SigmaDSP内置GPIO引脚进行硬件控制.pdf