首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
TMS320F2812程序的远程升级方法
来源:本站整理  作者:佚名  2009-11-19 08:51:20




2.2 Flash在线写入
    F2812的Flash数据写入通常包括擦除、烧写和校验3个步骤:
    ①擦除就是将Flash内的数据0位都变成1,经过正确的擦除步骤后,Flash内所有16位数据都变为0xFFFF。
    ②烧写程序数据的过程就是将待写入的数据中对应为0位写入,使得Flash中的相对应位变为0,1对应的位保持不变。
    ③校验过程在烧写结束后,是将烧写入的数据读出,并与原来的数据进行比较。全部正确,则数据写入Flash完成;若校验不正确,则必须重新擦除和写入,5次校验未能通过,数据烧写失败。
    F2812的Flash烧写与较早的C2000系列如F2407有所不同,程序的擦除、烧写和校验主要通过调用Flash_Erase()、Flash_Program()、Flash_Verify()这3个函数来完成。这3个Flash的操作函数已封装在TI公司开发的库文件Flash2812_API_V210.lib内,使用时只需在编译时将该库文件加入即可,非常方便使用者调用,具体的使用方法可参阅相关的参考资料。
    需要注意的是,对Flash的所有操作函数都必须首先载入到具有0等待周期的RAM内才能执行,否则Flash的烧写过程将会出错。执行在线写入前,需要先调用函数Flash_MemCopy(),将Flash_Erase()、Flash_Program()、Flash_Verify()这3个函数的执行代码调入F2812的RAM空间内。Flash_MemCopy()也是封装在Flash2812_API_V210.lib库文件内的函数。


3 程序远程升级
    程序的远程升级功能就是通过升级应用程序模块的数内容来实现的,其主要步骤如下:
    首先,程序数据的提取。监控程序原文件经过CCS编译后,生成*.OUT的公共目标格式COFF文件。通常用仿真器烧写程序时,公共目标格式文件,即*.out文件,由CCS的Flash烧写插件对其进行解读,并将数据输出到F2812内进行烧写。本文用C++Builder开发了一个专用工具软件,根据公共目标格式文件的结构,对*.OUT文件进行解读,并提取出应用程序模块段(.MyPrg)内的程序数据,并将数据通过GPRS通信模块进行远程传送。其次,程序数据的分割。GPRS通信平台要求每个数据包小于或等于256字节,因此,需要将提取到的程序数据进行分割,由专用工具软件将应用程序模块分割为若干个196字节大小的数据包,根据通信协议与F2812监控系统进行远程通信。
    最后,程序数据的写入。程序数据经GPRS远程通信接收完毕后,可向F2812监控装置发程序升级指令。根据预先分段设定,即调用Flash操作函数Flash_Erase()、Flash_Program()、Flash_Vetify(),将数据写入用户自定段.Myprg所在的地址区域,完成程序的远程升级。


结 语
    本文从工程的实际需要出发,分析和阐述了C2000系列的TMS320F2812程序远程升级的步骤和方法,有效解决在线远程运行系统的程序升级的难题,对其他类似系统的程序升级也具有借签意义。

上一页  [1] [2] [3]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:134,570.30000 毫秒