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.

[参考译文] TMS320F280025:使用批处理文件刷写.out 文件

Guru**** 2555630 points
Other Parts Discussed in Thread: UNIFLASH

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1162208/tms320f280025-flash-the-out-file-with-a-batch-file

器件型号:TMS320F280025
主题中讨论的其他器件:UNIFLASH

大家好、

以下是客户提出的问题、可能需要您的帮助:

客户引用  了 C:\ti\ccs1040\ccs\ccs_base\scripting\examples\uniflash\cmdline 下的 uniflash.bat 和 uniFlash_example.bat 文件、 编写了一个.bat 脚本来刷写 F280025 .out 文件。  

bat 文件部分如下所示:  

设置 UNIFLASH_tools="C:\ti\ccs1040\ccs\ccs_base\scripting\examples\uniflash\cmdline\uniflash.bat"
设置 ccxml_file="..\F280025_boot.ccxml"
设置 out_file=".\F280025_boot.out"

调用%UNIFLASH_TOOLS%-ccxml %ccxml_file_setOptions FlashEraseSelection ="仅选定扇区" FlashC28Bank0Sector0=true FlashC28Bank0Sector1=true -操作擦除-program %out_file%-targetOp run

仿真器配置文件 F280025_boot.ccxml 中设置了纯擦除 sector0和 sector1、.bat 脚本中就是这种情况。

但是、实际上、从 Sector0到 Sector15总共擦除了16个扇区、如下图所示:  

在 uniFlash_example.bat 文件中、以下是对该文件的描述:  

REM 5. 对多核器件使用-core 参数(即访问 C28内核的 Concerto)、从会话文件加载设置(将默认设置更改为仅擦除必要的扇区)、加载程序并在程序加载后运行目标
uniflash -ccxml ./configs/F28M35H52C1_XDS560.ccxml -core "C28"-loadSettings ./session/f28m35.session -program ./programs/f28m35_c28_blinky.out -targetOp run

如何设置所需的.session 文件以擦除和编程某些扇区?  

您可以帮助检查此案例吗? 谢谢。

此致、

樱桃

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

    您好 Cherry、

    [引用 userid="496057" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1162208/tms320f280025-flash-the-out-file-with-a-batch-file ]call %UNIFLASH_tools%-ccxml %ccxml_file_setOptions FlashEraseSelection ="仅选定扇区" FlashC28Bank0Sector0=true FlashC28Bank0Sector1=true -operation Erase -program %out_file%-targetOp run[引用]

    问题是、扇区的默认选项为"true"。 因此、除非您明确地将某个扇区设置为"false"、否则它将仅使用"true"。 因此、在上面的命令中、它将擦除所有扇区。

    为了只擦除前两个扇区、客户必须将扇区2至15指定为"假"。

    示例:

    调用%LASH_TOOLS_-ccxml %ccxml_file_setOptions FlashEraseSelection ="仅选定扇区" FlashC28Bank0Sector0=true FlashC28Bank0Secector1=true FlashC28Bank0SecSecSecSecSec2=false FlashBankC28Bank0Sector3=false FlashBank0Flash Bank0Sector4=false FlashC28Bank0Sector2=false C280Sector=false 0Flash Bank0CL0Sector=false C280Flash Bank0Sector=false C280CL0CL0S3=false 0CLK0CLK0CLK0CLK0CLK0CLK0CLK0CLK0CLK0S=false 0CLK0CLK0CLK0CLK0S=false 0CLK0CLK0CLK0CLK0CLK0CLK0CLK0S=false 0S3=false 0CLK0CLK0CLK0CLK0S13=false 0S3=false 0CLK0CLK0CLK0CLK0CL0S

    这确实不方便。 我希望您可以指定一个范围、但据我所知、您必须单独指定每个范围。

    谢谢

    Ki

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

    您好 Ki、

    感谢您的支持、此问题已得到解决。

    还有一个问题、-program 命令是否具有擦除和写入闪存功能? 是否需要单独配置-operation Erase 命令以进行擦除?  

    谢谢、此致、

    樱桃

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="496057" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1162208/tms320f280025-flash-the-out-file-with-a-batch-file/4371735 #4371735"]感谢您的支持,此问题已得到解决。

    很棒!

    [引用 userid="496057" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1162208/tms320f280025-flash-the-out-file-with-a-batch-file/4371735 #4371735">还有一个问题:-program 命令是否具有擦除和写入闪存功能? 是否需要单独配置-operation Erase 命令以进行擦除?  [/报价]

    当使用"闪存"模式时、UniFlash 将在刷写器件之前使用任何默认擦除设置。 这通常会在编程前擦除所有闪存。

    希望这对您有所帮助

    Ki