ERTEC200P

编程入门 行业动态 更新时间:2024-10-28 15:34:41

ERTEC200P

ERTEC200P

10. 固化程序

固件在SPI Flash的结构

由于绝大多数的设计都是使用SPI Flash,因此这里只介绍SPI Flash的烧写。ERTEC200P-2的固件在SPI Flash中的Layout如下图所示:

其中ROM Header:格式如下图所示: 

Firmware Binary: 协议栈固件的二进制程序

Trace Data:当协议栈出现致命错误时,会将Trace数据写入到这个区域,但是目前没有开放工具支持读取和分析这些数据

NV Data: 非易失性参数(例如:MAC地址,IP地址,设备名称)

这里需要注意的是,目前协议栈默认Trace Data起始地址为0x00570000(注意与原始协议栈不同),NV Data的起始地址为0x005F0000 (注意与原始协议栈不同),如果二进制程序的比较大,越过这些数据(e.g. Trace Data)的起始地址,就会被这些数据覆盖,导致协议栈无法启动。解决的办法是修改协议栈的宏SPI_FLASH_TRACE_START和SPI_NV_ADDRESS

10.1 标准的烧写方法

注意:烧写时一定要断开网线与PLC的连接。在TIA博图软件中更新在线设备,在“在线和诊断” “分配IP地址” 将设备的IP地址改为 “192.168.1.10”。

编译生成的二进制文件ecos.bin位于\pn_ioddevkits\src\projects\pnio_proj\ertec\EB200P_Debug_EcosNative,将bin文件拷贝到\tools\TcpFwLoader文件中。用记事本打开TcpFwLoader_EB200P.bat文件,修改IP地址,使IP地址与目标板一致。同时修改.bat文件中的.bin文件名,使其与BootableBinary文件中的.bin文件名一致。例如:

tcpFwLoader ecos.bin 192.168.1.10 999

在putty串口终端键入“f”后,双击TcpFwLoader_EB200P.bat运行下载程序

 选择SPI FLASH,键入“2”,完成后,关闭Eclipse和GDB Server,重启开发板就可以看到新的固件运行了。

10.2 Python 烧写工具

笔者开发了一个基于Python的小工具。基本运行步骤是:

  1. 通过JLink的GDB Server初始化SDRAM
  2. 将一个可执行程序(flash_spi.elf)加载到SDRAM的起始地址
  3. 将固件的二进制文件加载SDRAM到指定区域
  4. 将MAC地址等参数加载到SDRAM
  5. 启动可执行程序(flash_spi.elf),可执行程序会完成烧写固件,烧写NV Data,校验等操作

运行界面如下:

运行前的准备

  1. 安装pyhthon3
  2. 安装依赖库,在windows命令行中输入: 

pip3 install ConfigParser

pip3 install wxPython

pip3 install pygdbmi

如果提示找不到pip3,需要在系统路径中添加pyhton39/scripts/

开始烧写

连接JLink到目标板,打开JLink GDB Server,确认JLink GDB Server处于运行状态;运行flash_gui.py;指定gdb的可执行程序和需要烧写的二进制代码。修改相关参数,例如MAC地址(注意:每个PN设备需要占用3个MAC地址,例如当前设备的MAC地址是80_20_CB_30_00_50,那么当前设备就占用了80_20_CB_30_00_50,80_20_CB_30_00_51,80_20_CB_30_00_52三个MAC地址,下一个设备就只能从80_20_CB_30_00_53开始。此外MAC地址不能自行随意定义,需要从相关机构购买。)和SPI的偏移量(注意:一定要与固件中的宏SPI_NV_ADDRESS保持一致)。依次运行“Start GDB”和“Flash”完成烧写,烧写完成后会自动弹出对话框提示烧写完成;在烧写过程中,ERTEC200P-2调试串口会打印出状态信息:

 如果需要修改默认值,可以直接编辑config.ini文件

 附录

1. 其他的评估板的适配

如果要适配NINICARD和NANO评估板,打开项目中的Makefile

如果是MINICARD,去掉#DEFD += -DMINI_BOARD_V1=1 的注释标识#

如果是NANO,去掉#DEFD += -DNANO_BOARD_V1=1 的注释标识#

2. 致谢

感谢大家选择西门子ERTEC200P芯片进行PN设备的开发!您对PN技术的支持,给我们增添了在技术的道路上勇往直前的信心和勇气。

祝开发顺利 !

                                                                                                                 芥末博士

                                                                                                                 2023-4-24

 

更多推荐

ERTEC200P

本文发布于:2024-02-12 23:41:35,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1689868.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:ERTEC200P

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!