ATMEGA128单片机的软件远程升级

时间:2020-10-06 14:03:38 理工毕业论文 我要投稿

ATMEGA128单片机的软件远程升级

摘要:介绍了ATMEGA128单片机应用中的在线编程方法。给出了软件IAP升级设计中应注意的一些关键技术,结合某市地铁调度系统对IAP升级的可靠性和保密性等问题进行了简单的论述。

闪速程序存储器的编程方法常见的有以下几种:

(1)传统的并行编程方法;

(2)通过串行口进行在线编程ISP?In System Programmability?:对器件或电路甚至整个系统进行现场升级或功能重构;

(3)在运行中,应用程序控制下的应用在线编程IAP?In Application Programming?;IAP模式简单地说就是在某一个section中运行程序,同时对另一个section进行擦除、读取、写入等操作。

ISP方式相对于传统方式有了极大的进步,它不需要将芯片从电路板上卸下就可对芯片进行编程,减少了开发时间,简化了产品制造流程,并大大降低了现场升级的困难。而IAP方式是对芯片的编程处于应用程序控制之下,对芯片的编程融入在通信系统当中,通过INTERNET网络来升级指定目标芯片的软件。

图1 某城市地铁调度指挥系统的网络结构

随着芯片技术的高速发展,各厂家相继推出了自己的支持ISP/IAP编程模式的芯片,如美国ATMEL公司的ATMEGA128、ATMEGA169,Silicon Storage Technology公司的SST89C54/58j等。其中美国ATMEL公司推出的ATMEGA128是基于AVR RISC的低功耗8位单片机,最高工作频率可达16MHz,具有128KB FLASH内部存储应用器、4KB EEPROM和SRAM数据存储空间,最大可达4096字节的独立加密位的可选bootloader程序代码区,以及相应的专门用来支持(IAP)操作的操作控制寄存器SPMCR。近年来该型单片机以其优良而稳定的性能广泛应用于各种电子产品中。

1 利用ATMEGA128构成的.远程升级系统

1.1系统组成

图1给出了某城市地铁调度指挥系统的网络结构。该系统的网络通信采用轮询方式。

该系统主要设备包括若干个基台站、主控单元、基站控制中心、语音交换单元。

各设备的主要功能为:基站台用来接收车载台的数字信令和语音信号;主控单元协调各子节点动作并监视各子节点状态;基站控制中心既是主控单元的子节点又是各基站台的主节点,辅助主控单元完成对各基站台的控制,协调各基站台动作,搜集各基站台传来的消息和监视各基站台状态;PCM交换单元在主控单元控制下完成语音交换功能。

1.2 系统软件IAP升级

在不影响整个系统正常运行情况下,为实现对系统某个节点的软件升级,可将要升级的程序代码通过写码软件转换为系统信令,以透明传输的方式传输?下载?到目标节点。本系统的信令格式采用表1所示的代码帧格式。其中帧传输控制字节为5字节,操作控制字节为4字节,代码数据为32字节。

表1 代码帧格式

目的地址源地址字节长度Y下载目标地址控制字RAMPZZHZL代码数据

为保证代码传输的准确性,本系统采用反馈比对的方式,以监控终端向基台站的代码传输为例,代码由监控终端传输到基台站,基台站收到代码后,再反馈回监控终端。监控终端将收到的代码与发送的代码作比较,比较结果一致时传输下一代码帧,不一致时重复传输上一代码帧。

系统根据代码帧的下载目标地址,自动寻址将代码帧通过各级网络节点下载到目标节点。写入代码的位置原则上可在系统中的任何一点进行,但考虑到实际情况,本系统中只有两个写入点?显示终端和监控终端?,写入代码时不影响系统的正常运行。收到软件升级消息的节点通过判断代码帧的控制字完成相应的读、写、擦除等操作,并且可根据不同的需求配置不同的控制字实现远程终端对目标节点的各种资源的监控。