Skip to content

YaoFei509/mon_erc32

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mon_erc32

适用于基于TSC695F处理器的计算机通用加载器。 本软件是应用软件的引导软件,具备应用软件串口加载、加载多种存储载体中的应用软件运行的能力。 软件运行后先完成应用软件运行硬件环境的初始化,然后根据应用软件填写的不同签名状态完成PROM加载、EEPROM加载和串口加载应用程序运行。

设计约束

软件被固化在PROM中,计算机上电或复位后首先运行本软件。在地面测试和开发过程中,本软件也可以作应用软件串口加载器使用。

计算机硬件配置

  1. CPU: TSC695F,主频16MHz
  2. PROM: 32K字节
  3. SRAM: 2M字节
  4. EEPROM:2M字节

软件开发环境包括:

  1. 高级语言开发环境:ERC32-Ada-1.8.4
  2. 操作系统: Linux

主要功能:

软件通过串口接收应用程序镜像文件和控制命令,并输出监控信息。 串口数据通过查询方式读取,不产生中断激励。该接口使用TSC695F的串口1,采取异步RS422串口通信形式,串口数据码速率为38400bps。

  1. 上电初始化计算机
  2. 支持串口加载Intel HEX格式目标代码到SRAM运行
  3. 支持EEPROM操作
  • 将地面通过串口加载的代码写入EEPROM
  • 从EEPROM加载目标代码
  • 初始化覆写全部EEPROM
  • 加载时使用三取二方式保护数据完整性,对EEPROM中错误页面回写
  • 当然,写EEPROM的代码你去补充

主要指标

  1. 串口速率 38400bps 8N1
  2. 可加载目标码体积:512KB
  3. EEPROM: 2MB

详细介绍

硬件初始化

硬件的初始化的功能,主要包括下面几个部分:

  1. 关看门狗
  2. RAM区的EDAC初始化
  3. 其他硬件接口芯片的初始化

启动运行

软件在完成初始化之后,从PROM内自举到SRAM运行,通过串口输出提示信息。 等待5s内如果接收到通过串口接口输入的用户回车,则等待经串口接口输入的程序,并将其加载到对应的存储空间; 如果没有收到,则对EEPROM和PROM中存储的程序进行识别,将有效的程序加载至对应的SRAM空间。 加载完毕后,软件将控制权交给应用软件,释放自身占用的存储空间。

程序加载

程序加载功能实现串口程序加载、EEPROM程序加载和PROM应急程序加载,并在加载过程中完成EEPROM程序三取二校验和纠错和在线固化。

串口加载

当软件启动后,串口5s内有输入信息时,本软件做如下处理:

  1. 接收串口应用程序镜像文件,提取目标码并按地址存入SRAM对应位置,调用目标程序运行;
  2. 在串口加载时如果收到在线固化控制命令,则将串口加载的应用程序目标码保存到EEPROM中,其中应用软件代码区A、B、C各保存一份,并清空EEPROM中原有的参数包。

EEPROM加载

当本软件启动后,串口5s内无输入信息时,本软件做如下处理:

  1. 将EEPROM中存储的应用程序目标码拷贝至SRAM中运行。
  2. 拷贝前对A、B、C三份代码作三取二比对,如果其中一份错误,则用正确的代码覆盖错误代码;
  3. 如果三份代码均不一致,则检查PROM中有无应急软件,有则拷贝应急代码运行,否则运行代码A。

在线固化

地面测试期间,可以将通过串口上载的程序代码写入EEPROM,并清空EEPROM中原有的参数包。

About

适用于ERC32 TSC695F计算机的通用加载器

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published