This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/AM3359:EtherCAT 程序在闪存后不运行。

Guru**** 2540720 points
Other Parts Discussed in Thread: AM3359, AM3357, AMIC110, SEGGER

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/796515/ccs-am3359-ethercat-program-not-running-after-flash

器件型号:AM3359
主题中讨论的其他器件: AM3357AMIC110SEGGER

工具/软件:Code Composer Studio

你(们)好 在这里。


我有 AM3359ICE 和 J-Link 调试器。

我正在处理 ehtercat_slave_full_AM335x_arm 项目。

我有几个问题。

我做了以下工作。

01.环境

 未插入 MMC/SD 卡。
 AM3359ICE2电路板设置- J5上的引脚2和3短接
 应用从站堆栈代码5.12。


2.运行 CCS

03.制作 ehtercat_slave_full_am335x_arm 项目。

 projectCreate.bat AM335x ARM EtherCAT_SLAVE_FULL

 

04.构建 ehtercat_slave_full_am335x_arm 项目。

05.将 ethercat_slave_full_AM335x_arm.bin 转换为 ethercat_slave_full_AM335x_arm_ti.bin

  tiimage.exe 0x8000000 ethercat_slave_full_AM335x_arm.bin ethercat_slave_full_AM335x_arm_ti.bin

06.擦除引导加载程序和应用程序

07.闪存引导加载程序
  加载 C:\ti\pdk_am335x_1_0_13\packages/ti\starterware\tools\flash_writer\spi_flash_writer_am335X.out
   [CortxA8] AM335X 器件被检测到。
   SF:得到代码 ef 40 17
   检查是否可以使用 Winbond 闪存写入器..
   SF:检测到 W25Q64、页面大小为256、总共为8388608字节
   闪存页大小:256字节
   闪存扇区大小:4096字节
   启动 SPIWriter。

   选择操作:
   输入1--->以刷写映像
   输入2 -->擦除闪存
   输入3 -->退出
   1
   输入文件名
   C:\ti\pdk_am335x_1_0_12\packages/ti\starterware\binary\bootloader\bin\am335x-evm\gcc\bootloader_boot_mcspi_a8host_release_ti.bin
   输入以字节(十六进制)为单位的偏移量
   0x0
   擦除字节偏移处的闪存:0、字节长度:36864
   SE:CMD ={0x20 0x000000}
   SE:CMD ={0x20 0x001000}
   (笑声)
   SE:CMD ={0x20 0x007000}
   SE:CMD ={0x20 0x008000}
   SF:已成功擦除36864字节@ 0x9000
   在页偏移处写入闪存:0、页数:134

   正在刷新...
   正在验证... 成功。

08. UART 启动日志
   StarterWare 引导加载程序
   BOARDInit 状态[0x0]
   SoC:[AM335X]
   磁芯:[A8]
   检测到电路板:[ICE Ver2]
   基板版本:[未知]
   子卡版本:[未知]
   GPIO 实例编号:0
   引脚编号:18
   MCSPI 实例编号:0
   通道/芯片选择编号:0
   实例地址为48030000
   偏移= 0x20000、大小= 0x8、dst = 0x402f9bc8

   正在复制图像的标题
   将映像从闪存复制到 DDR
   偏移= 0x20008、大小= 0xffffffff、dst= 0xffffffff

09.闪存 ethercat_slave_full_AM335x_arm_ti.bin
   [CortxA8] AM335X 器件被检测到。
   SF:得到代码 ef 40 17
   检查是否可以使用 Winbond 闪存写入器..
   SF:检测到 W25Q64、页面大小为256、总共为8388608字节
   闪存页大小:256字节
   闪存扇区大小:4096字节
   启动 SPIWriter。

   选择操作:
   输入1--->以刷写映像
   输入2 -->擦除闪存
   输入3 -->退出
   1
   输入文件名
   C:\ti\pdk_am335x_1_0_12\packages/ti\starterware\tools\ti_image\ethercat_slave_full_AM335x_arm_ti.bin
   输入以字节(十六进制)为单位的偏移量
   0x20000
   擦除字节偏移处的闪存:131072、字节长度:397312
   SE:CMD ={0x20 0x020000}
   SE:CMD ={0x20 0x021000}
   (笑声)
   SE:CMD ={0x20 0x07f000}
   SE:CMD ={0x20 0x080000}
   SF:已成功擦除397312字节@ 0x81000
   在页偏移处写入闪存:512、页数:1541

   正在刷新...
   正在验证... 成功。

 10. UART 引导日志
   StarterWare 引导加载程序
   BOARDInit 状态[0x0]
   SoC:[AM335X]
   磁芯:[A8]
   检测到电路板:[ICE Ver2]
   基板版本:[未知]
   子卡版本:[未知]
   GPIO 实例编号:0
   引脚编号:18
   MCSPI 实例编号:0
   通道/芯片选择编号:0
   实例地址为48030000
   偏移= 0x20000、大小= 0x8、dst = 0x402f9bc8

   正在复制图像的标题
   将映像从闪存复制到 DDR
   偏移= 0x20008、大小= 0x60448、dst = 0x8000000
   跳转到 StarterWare 应用程序...

11.应用程序未运行。

   问题1. 我是不是犯了个错误?

   问题2. 使用 bootloader_boot_mcspi_a8host_release_ti.bin 进行 EtherCAT 是否正确?

12. EtherCAT_SLAVE_FULL_AM335x_armProject 在 CCS 调试模式下运行
   版本- EtherCAT 从站01.00.07.02
   板名称:A335_ICE
   主板版本:2.1a
   EtherCAT 器件
   SYS/BIOS EtherCAT 内部应用3.3.0

13.如果 GPIO_LedBlink_icev2AM335x_armTestProject 被编译和刷新、它将正常工作。
   StarterWare 引导加载程序
   BOARDInit 状态[0x0]
   SoC:[AM335X]
   磁芯:[A8]
   检测到电路板:[ICE Ver2]
   基板版本:[未知]
   子卡版本:[未知]
   GPIO 实例编号:0
   引脚编号:18
   MCSPI 实例编号:0
   通道/芯片选择编号:0
   实例地址为48030000
   偏移= 0x20000、大小= 0x8、dst = 0x402f9bc8

   正在复制图像的标题
   将映像从闪存复制到 DDR
   偏移= 0x20008、大小= 0x18008、dst = 0x8000000
   跳转到 StarterWare 应用程序...


   GPIO LED 闪烁应用  <=应用程序日志

   所有测试均已通过 <=应用程序日志

提前感谢您。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Simon、

    您应该直接使用从 EtherCAT 项目构建的'app'(protocol\EtherCAT_SLAVE\projects\EtherCAT_SLAVE_FULL_AM335x_ARM\AM335x_release)而不是 ethercat_slave_full_AM335x_arm_ti.bin 来刷写、即、即、不需要执行第05步。

    您已将上述 PDK_AM335x_1_0_13和 PDK_AM335x_1_0_12混合在一起。 确保应用程序和 MLO 具有相同的 PDK 版本。

    此致、
    Garrett
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Garrett


    1.我的应用程序和 MLO 使用相同的 PDK 版本(PDK_AM335x_1_0_12)。

     

    2.刷写 应用程序的工作方式与以前不同。
     2.1控制台日志

      [CortxA8] AM335X 器件被检测到。
      SF:得到代码 ef 40 17
      检查是否可以使用 Winbond 闪存写入器..
      SF:检测到 W25Q64、页面大小为256、总共为8388608字节
      闪存页大小:256字节
      闪存扇区大小:4096字节
      启动 SPIWriter。

      选择操作:
      输入1--->以刷写映像
      输入2 -->擦除闪存
      输入3 -->退出
      1
      输入文件名
      C:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\projects\EtherCAT_SLAVE_FULL_AM335x_ARM\AM335x_RELEASE_APP
      输入以字节(十六进制)为单位的偏移量
      0x20000
      擦除字节偏移处的闪存:131072、字节长度:397312
      SE:CMD ={0x20 0x020000}
      SE:CMD ={0x20 0x021000}
      (笑声)
      SE:CMD ={0x20 0x07f000}
      SE:CMD ={0x20 0x080000}
      SF:已成功擦除397312字节@ 0x81000
      在页偏移处写入闪存:512、页数:1541

      正在刷新...
      正在验证... 成功。

     2.2 UART 日志
      StarterWare 引导加载程序
      BOARDInit 状态[0x0]
      SoC:[AM335X]
      磁芯:[A8]
      检测到电路板:[ICE Ver2]
      基板版本:[未知]
      子卡版本:[未知]
      GPIO 实例编号:0
      引脚编号:18
      MCSPI 实例编号:0
      通道/芯片选择编号:0
      实例地址为48030000
      偏移= 0x20000、大小= 0x8、dst = 0x402f9bc8

      正在复制图像的标题
      将映像从闪存复制到 DDR
      偏移= 0x20008、大小= 0x60448、dst = 0x8000000
      跳转到 StarterWare 应用程序...

     

    问题1. 我还需要检查什么?

    3.闪存后正常工作的工程的.map

    C:\ti\pdk_am335x_1_0_12\packages/MyExampleProjects\GPIO_LedBlink_icev2AM335x_armTestProject\
    release\GPIO_LedBlink_icev2AM335x_armTestProject.map


    存储器配置

    名称         起点        长度       属性
    SRAM_LO     0x402f0000  0x00000400 xrw
    SRAM_HI      0x402f0400  0x0000fc00  xrw
    OCMC_SRAM 0x40300000  0x00010000 xrw
    DDR3        0x8000000  0x20000000
    *默认*      0x00000000  0xFFFF

    链接器脚本和存储器映射

    0x0001c000 STACKSIZE = 0x1c000
    0x00000400 HEAPSIZE = 0x400

    在闪存之后不起作用的 EtherCAT_SLAVE_FULL_AM335x_ARM 工程的.map。

    C:\ti_old\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\projects\EtherCAT_SLAVE_FULL_AM335x_ARM\
    AM335x_release\EtherCAT_SLAVE_FULL_AM335x_ARM.map


    存储器配置

    名称         起点        长度       属性
    SRAM        0x402f0400  0x0000fc00
    L3OCMC0     0x40300000  0x00010000
    M3SHUMEM  0x44d00000  0x00004000
    M3SHDMEM  0x44d80000  0x00002000
    DDR0         0x8000000  0x40000000
    SRAM_LO    0x402f0000  0x00000400  xrw
    SRAM_HI     0x402f0400  0x0000fc00   xrw
    OCMC_SRAM 0x40300000  0x00010000  xrw
    DDR3         0x8000000  0x20000000
    *默认*       0x00000000  0xFFFF

    链接器脚本和存储器映射

    0x0001c000 STACKSIZE = 0x1c000
    0x00000400 HEAPSIZE = 0x400

    5.两个项目的内存配置不同。

     问题2. 这是否与工程相关但不运行?

     Q3.EtherCAT_SLAVE_FULL_AM335x_ARM 项目使用以下 lds 文件。
     C:\ti\ccsv8\ccs_base\arm\include\am335x.lds
     这是正确的文件吗?
     我是否应该使用 c:\ti\pdk_am335x_1_0_12\packages/ti\starterware\examples\gcc\am335x.lds?

    问题4. 您能否将我的引导加载程序和应用程序刷写到您的器件中?

    e2e.ti.com/.../bootloader_5F00_and_5F00_app.zip

    版本
    C:\ti\pdk_am335x_1_0_12\packages/ti\starterware\binary\bootloader\bin\am335x-evm\gcc\bootloader_boot_mcspi_a8host_release_ti.bin
    C:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\projects\EtherCAT_SLAVE_FULL_AM335x_ARM\AM335x_RELEASE_APP

    调试
    C:\ti\pdk_am335x_1_0_12\packages/ti\starterware\binary\bootloader\bin\am335x-evm\gcc\bootloader_boot_mcspi_a8host_debug_ti.bin
    C:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\projects\EtherCAT_SLAVE_FULL_AM335x_ARM\AM335x_DEBUG\app


    问题5. 您能否提供 使用 EtherCAT_SLAVE_FULL_AM335x_ARM 构建的引导加载程序和应用?


    此致、
    Simon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Simon、

    链接器 cmd 文件实际上应该来自[ccs_workspace]\EtherCAT_SLAVE_FULL_AM335x_ARM\AM335x_release\configPkg\linker.cmd、您能否准确地按照用户指南中的过程构建完整的工程而不是共同添加.lds 文件?

    此致、
    Garrett
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Garrett


    非常感谢你的帮助。
    删除 AM335x.lds 并构建后、我能够刷写应用程序。

    但是、扫描在主设备上成功、但连接失败。

    问题1. 我是否必须修改设置?
    我是否需要修复 EEPROM?

     

    1、当前设置如下。

    刷写预编译映像后的 UART 日志(PRU_ICSS_EtherCAT_SLAVE_PRIMARD_01.00.07.02)
      StarterWare 引导加载程序
       BOARDInit 状态[0x0]
       SoC:[AM335X]
       磁芯:[A8]
       检测到电路板:[ICE Ver2]
       基板版本:[未知]
       子卡版本:[未知]
       GPIO 实例编号:0
       引脚编号:18
       MCSPI 实例编号:0
       通道/芯片选择编号:0
       实例地址为48030000
       偏移= 0x20000、大小= 0x8、dst = 0x402f9bc8

       正在复制图像的标题
       将映像从闪存复制到 DDR
       偏移= 0x20008、大小= 0x324d4、dst = 0x8000000
       跳转到 StarterWare 应用程序...


       版本- EtherCAT 从站01.00.07.02
       板名称:A335_ICE
       电路板修订版:2.1AEtherCAT 器件

       SYS/BIOS EtherCAT 演示应用3.3.0
       构建时间戳:2018年11月26日09:59:57旋转开关状态:5.

       版本/类型:x0190内部版本:x04ee
       固件版本:1.4.238

    3.主设备状态
      3.1扫描:无
      3.2开始通信:Init > PreOP > StateOP > OP
      =>连接正常。
      3.3停止通信:引导

    刷写 EtherCAT_SLAVE_DEMO 映像后的 UART 日志

       StarterWare 引导加载程序
       BOARDInit 状态[0x0]
       SoC:[AM335X]
       磁芯:[A8]
       检测到电路板:[ICE Ver2]
       基板版本:[未知]
       子卡版本:[未知]
       GPIO 实例编号:0
       引脚编号:18
       MCSPI 实例编号:0
       通道/芯片选择编号:0
       实例地址为48030000
       偏移= 0x20000、大小= 0x8、dst = 0x402f9bc8

       正在复制图像的标题
       将映像从闪存复制到 DDR
       偏移= 0x20008、大小= 0x2ecd0、dst = 0x8000000
       跳转到 StarterWare 应用程序...


       版本- EtherCAT 从站01.00.07.02
       板名称:A335_ICE
       电路板修订版:2.1AEtherCAT 器件

       SYS/BIOS EtherCAT 演示应用3.3.0
       构建时间戳:2019年4月30日09:39:02旋转开关状态:5.

       版本/类型:x0190内部版本:x04ee
       固件版本:1.4.238

    5.主设备状态
      5.1扫描:无
      5.2开始通信:Init > PreOP > StateOP > OP > Boot
      =>连接 NG。

    6.两个日志之间的差异
      大小/构建时间戳


    此致、
    Simon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Simon、

    当从 CCS 而不是闪存加载/运行从器件时、您是否能够连接到从器件?

    此致、
    Garrett
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Garrett


    删除某些日志后、EtherCAT_SLAVE_DEMO 项目已成功连接。

    但是、EtherCAT_SLAVE_FULL 工程无法连接。

    主器件状态- EtherCAT_SLAVE_DEMO
     1.1扫描:
     1.2 vender_id:0xE000059D-54490001
     1.3开始通信:Init > PreOP > StateOP > OP
        =>连接正常。
     1.4停止通信:引导


    2.创建 EtherCAT_SLAVE_FULL 工程
     2.1使用 SSC 工具创建从站协议栈代码
     2.2将源复制到 c:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocol\EtherCAT_SLAVE \ecat_appl\EcatStack\
     2.3创建项目。 (projectCreate.bat AM335x ARM EtherCAT_SLAVE_FULL)
     2.4运行 CCS 并进行构建

    主器件状态- EtherCAT_SLAVE_FULL
     3.1扫描:
     3.2 vender_id:0x0000059D-54490001 (AM3357/AM3359 (PRU-ICSS v1.0))
     3.3开始通信:Init > Boot
     =>连接 NG。

     

    4、它在闪存中的工作方式相同、并且加载/运行。

    5.刷写_ti.bin 将不起作用。
      5.1 C:\ti\PRU-ICSS-EtherCAT_Slave_01.00.07.02\protocol\EtherCAT_SLAV\ecat_appl\iceAM335x\tiesc_eeprom_ti.bin 更改为0x10000
      5.2 C:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\firmware\v1.0\ecat_host_interface_ti.bin 更改为0x14000
      5.3 C:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\firmware\v1.0\ecat_frame_handler_ti.bin 更改为0x19000

      =>连接 NG。

      问题1.   应用以上 ti.bin 是否正确?

     

    6.创建新的 tiesc_eeprom_ti.bin 和 Falsh
      6.1运行 SSC 工具( TI_AM335x_1i0i7i0.xml / TI AM335x 样片 )
      6.2工具> EEPROM 编程器
      6.3另存为 tiesc_eeprom.bin
      6.4转换_ti.bin (tiimage.exe 0x4030F400无 tiesc_eeprom.bin tiesc_eeprom_ti.bin)
      6.5闪存 tiesc_eeprom_ti.bin
      =>连接 NG。

     

    问题2. 您能否使用以下附件进行测试?  

    e2e.ti.com/.../6837.ethercat_5F00_slave_5F00_full_5F00_AM335x_5F00_arm.zip

     

    问题3. 您能否构建 EtherCAT_SLAVE_FULL 工程?
        您能为我提供二进制文件吗?

    如果此问题未能快速解决、则可能会终止项目。

    我期待您的积极帮助


    此致、
    Simon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Simon、

    您只需要将 MLO 和应用文件刷写到 AM3359 ICEv2。 请尝试擦除当前闪存、然后仅写入 MLO 和 app。
    在步骤5中列出的二进制文件可让 AMIC110 ICE 在无 DDR 模式下运行。

    此致、
    Garrett
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Garrett


    我尝试了步骤5和6、因为通信失败。
    我按如下方式移除了闪存。

    使用 isdk_spi_flasher.out 擦除闪存
     擦除/大小
     0x0      /64 => MLO
     0x10000 / 2 => tiesc_eeprom_ti.bin
     0x14000 / 8 => ecat_host_interface_ti.bin
     0x19000 / 8 => ecat_frame_handler_ti.bin
     0x20000 / 248 => MLO


    问题1. 请确保我犯了一个错误。

    01.安装 ti-processor-sdk-rtos-am335x-evm-05.01.00.11-Windows-x86-Install.exe

    2.安装 PRU-ICSS-EtherCAT_Slave-01.00.07.02-Windows-x86-Install.exe

    03.创建 EcatStack 代码
     03-01。 运行 SSC 工具
     03-02。 导入=> TI_AM335x_1i0i7i0.xml
     03-02。 定制=> TI AM335x 样片
     03-03。 File => Save (TIESC-001.esp)
     03-04。 Project =>创建新的 Salve 文件
     03-05。 将 src 复制到 c:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE \ecat_appl\EcatStack\
     03-06。 工具> EEPROM 编程器
     03-07。 另存为(tiesc_eeprom.bin)
     03-08。 转换_ti.bin (tiimage.exe 0x4030F400无 tiesc_eeprom.bin tiesc_eeprom_ti.bin)
     03-09。 转换 tiesc_eeprom.h (bin2header.exe tiesc_eeprom.bin tiesc_eeprom.h ities_EEPROM)
     03-10. 复制 tiesc_eeprom_ti.bin 和 tiesc_eeprom.h
           更改为 c:\ti\PRU-ICSS-EtherCAT_Slave_01.00.07.02\protocols\EtherCAT_slave\ecat_appl\iceAM335x\

    问题2. 将 tiesc_eeprom_ti.bin 和 tiesc_eeprom.h 复制到 iceAM335x 是否正确?

    04.安装 ccs_setup_8.3.0.00009.exe

    05.运行 cmd.exe 并构建 RTOS
     cd c:\ti\processor_sdk_rtos_am335x_5_01_00_11\
     setupevn.bat
     Gmake
     cd c:\ti\PRU-ICSS-EtherCAT_Slave_01.00.07.02\protocols\EtherCAT_Slave\projects\
     projectCreate.bat AM335x ARM EtherCAT_SLAVE_FULL

    06.运行 CCS 并生成
     06.01从文件系统打开项目...
      C:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\projects\EtherCAT_SLAVE_FULL_AM335x_ARM\
     06.02 Project > Properties
      型号:AM33x - Cortex A8/ICE_AM3359 [Cortex A]
      连接:SEGGER J-Link 仿真器
      链接器命令文件:
     06.03编译工程
     06.04检查构建输出。
      C:\ti\PRU-ICSS-ETHERCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\projects\EtherCAT_SLAVE_FULL_AM335x_ARM\AM335x_RELEASE_APP

    07.具有 SPI_FLASH_writer_AM335X.OUT 的镜像闪存
     07.01 MLO:  0x0 / C:\ti\pdk_am335x_1_0_12\packages/ti\starterware\binary\bootloader\bin\am335x-evm\gcc\bootloader_boot_mcspi_a8host_release_ti.bin
     07.02应用程序: 0x20000 / C:\ti\PRU-ICSS-   EtherCAT_Slave_01.00.07.02\protocols\EtherCAT_SLAVE\projects\EtherCAT_SLAVE_FULL_AM335x_ARM\AM335x_RELEG\app
     07.03主设备的状态
       vender_id:0xE000059D-54490001
       扫描=>状态:
       开始通信=>初始化>引导
       =>通信失败
     07.04 UART 日志
       StarterWare 引导加载程序
       BOARDInit 状态[0x0]
       SoC:[AM335X]
       磁芯:[A8]
       检测到电路板:[ICE Ver2]
       基板版本:[未知]
       子卡版本:[未知]
       GPIO 实例编号:0
       引脚编号:18
       MCSPI 实例编号:0
       通道/芯片选择编号:0
       实例地址为48030000
       偏移= 0x20000、大小= 0x8、dst = 0x402f9bc8

       正在复制图像的标题
       将映像从闪存复制到 DDR
       偏移= 0x20008、大小= 0x308f0、dst = 0x8000000
       跳转到 StarterWare 应用程序...


       版本- EtherCAT 从站01.00.07.02
       板名称:A335_ICE
       主板版本:2.1a
       EtherCAT 器件
       SYS/BIOS EtherCAT 内部应用程序3.30旋转开关状态:5.

       版本/类型:x0190内部版本:x04ee
       固件版本:1.4.238

    08.在 CCS 中加载/运行映像
     vender_id:0xE000059D-54490001
     扫描=>状态
     开始通信=>初始化>引导
     =>通信失败

    09. SSC 代码和 tiesc_eeprom.h

    e2e.ti.com/.../EcatStack_5F00_iceAM335x.ZIP
    10.应用程序

    e2e.ti.com/.../7220.ethercat_5F00_slave_5F00_full_5F00_AM335x_5F00_arm.zip


    问题3. 步骤09的来源是否正常创建?

    问题4. 您能否在步骤10中测试主设备是否与应用程序通信?

    问题5. 能否为我提供您创建的应用程序映像?

    如果您发现了错误、请告诉我。


    此致、
    Simon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Simon、

    与此主题中的 项目(e2e.ti.com/.../2920165 )相比,您当前项目的区别是什么?如果您从该项目刷写应用程序和 MLO,它是否起作用?
    不需要 tiesc_eeprom_ti.bin,因此可以跳过步骤03-08。

    此致、
    Garrett
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Garrett


    此项目的第一个目标是验证 ehtercat_slave_full_AM335x_arm 是否正常工作。
    扫描和通信应在主设备上正常工作。

    e2e.ti.com/.../2956301上的项目
     1.1此项目包括从站堆栈代码5.12。
     1.2此项目是使用 AM335X.lds 构建的。
     1.3该项目在闪存之后没有运行。
     1.4该项目在从 CCS 加载后运行。
     1.5该项目无法与主器件进行通信。
     1.6 TwinCAT3中的正常运行。 (由 Paula Carrillo 测试)
     1.7我无法配置 TwinCAT3。

    2.当前线程的项目
     1.1此项目包括从站堆栈代码5.12。
     1.2此项目是在没有 AM335X.lds 的情况下构建的。
     1.3该项目在闪存之后运行。
     1.4该项目在从 CCS 加载后运行。
     1.5该项目无法 与主器件进行通信。


    此致、
    Simon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Simon、

    >> 1.7我无法配置 TwinCAT3。
    请参阅 TwinCAT 设置的 wiki: processors.wiki.ti.com/.../Configuring_TwinCAT_For_AM335x

    由于 e2e.ti.com/.../2920165中的.out fiel 起作用、您可以尝试首先使用 TwinCAT 刷写其应用文件以隔离问题。

    此致、
    Garrett
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Garrett

    1.我尝试了 TwinCAT 配置、但失败了。
     主设备上的网络适配器在 TwinCAT 中显示为不兼容的设备。
     因此、我无法在 TwinCAT 中对其进行测试。

     1.1我在 Windows 7 64位上安装 TwinCAT2。 (Tc211x64Engineering_R3_2.11.2303.exe)

        =>无法选择 PLC 安装模式。
     1.2我将 TI_ESC.xml 和 TiEtherCATLib.xml 复制到 :\TwinCAT\IO\EtherCAT 文件夹
     1.3启动 TwinCAT 系统管理器
     1.4转到选项>显示实时以太网兼容设备并安装 TwinCAT RT 以太网中间驱动程序。
        =>不兼容的设备。
        Intel I210铜质以太网控制器/供应商 ID 8086 /设备 ID 1533

    2.闪存未运行后出现问题。
     通过删除 AM335x.lds 修复了闪烁问题。

    ehtercat_slave_demo_am335x_arm。
     使用 TI 提供的源代码正常构建/闪存/运行。
     我可以从主设备成功扫描/通信。

    ehtercat_slave_full_am335x_arm。
     使用 TI 和 Beckhoff 从站堆栈代码提供的源代码、正常构建/刷写/运行。
     主设备上的扫描成功、但通信失败。
     ehtercat_slave_full 是示例代码、因此我认为通信应该成功。


    此致、
    Simon

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Simon、

    您可以尝试找到另一个 NIC 以解决兼容性问题。 这里也是您应该尝试的 TWINCAT3指令- processors.wiki.ti.com/index.php

    >>主设备上的扫描成功,但通信失败。
    它可以与 CCS 配合使用吗? 还是仅使用闪存失败?

    此致、
    Garrett