最近要为工厂开发一下自动烧录
于是研究了一下uniflash的批处理脚本
首先到C:\ti\ccsv8\ccs_base\scripting\examples\uniflash\cmdLine目录下研究readme文件,里面还是写的比较详细的
单相机烧录的例子如下:
uniflash -ccxml TMS320F280049.ccxml -programBin bin文件名 0x80000
三相机烧录比较复杂,要知道cpu名和set
C:\ti\ccsv8\ccs_base\scripting\examples\uniflash\cmdLine>uniflash -ccxml TMS320F28379D.ccxml -viewOptions
Displaying the available Flash options to configure:
Drop-down Menu Option:
id: FlashCoreSelection
name: Core Selection:
value: CPU1 (Master)
choices:
CPU1 (Master)
CPU2 (Slave)
Boolean Option:
id: FlashBackupClock
name: Backup/Restore clock register settings during Flash operations
value: true
Numeric Option:
id: FlashOSCCLK
name: OSCCLK (MHz)(INTOSC2)
value: 10
Numeric Option:
id: FlashSPLLIMULT
name: System PLLCR Integer Multiplier (SPLLIMULT)
value: 19
range: 15 - 50
Drop-down Menu Option:
id: FlashSPLLFMULT
name: System PLLCR Fractional Multiplier (SPLLFMULT)
value: 0 [0]
choices:
0 [0]
1 [0.25]
2 [0.5]
3 [0.75]
Drop-down Menu Option:
id: FlashSYSDIVSEL
name: System Clock Divide Select (SYSDIVSEL)
value: 0 [/1]
choices:
0 [/1]
1 [/2]
2 [/4]
3 [/6]
4 [/8]
Numeric Option:
id: FlashUserPLLSYSCLK
name: User PLLSYSCLK (MHz)
value: 190
range: 2 - 190
Radio Button Option:
id: FlashDownloadSetting
name:
value: Erase and Program
choices:
Erase and Program
Program Only
Load RAM Only
Verify Only
Boolean Option:
id: FlashBlankCheckToggle
name: Perform Blank Check before loading data to Flash memory
value: false
Boolean Option:
id: FlashVerifySetting
name: Verify Flash after Program
value: true
Boolean Option:
id: FlashAutoECCSetting
name: Auto ECC Generation
value: true
Boolean Option:
id: FlashRangeToggle
name: Enable Range Avoidance
value: false
String Option:
id: FlashRangeAddr
name: Range:
value: 0x80000-0x81FFF
Boolean Option:
id: FlashAlignCombineToggle
name: Combine Sections during Program Load to increase performance
value: false
Radio Button Option:
id: FlashEraseSelection
name:
value: Entire Flash
choices:
Entire Flash
Necessary Sectors Only (for Program Load)
Selected Sectors Only
Boolean Option:
id: FlashC28Bank0Sector0
name: Sector A (0x80000 - 0x81FFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector1
name: Sector B (0x82000 - 0x83FFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector2
name: Sector C (0x84000 - 0x85FFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector3
name: Sector D (0x86000 - 0x87FFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector4
name: Sector E (0x88000 - 0x8FFFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector5
name: Sector F (0x90000 - 0x97FFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector6
name: Sector G (0x98000 - 0x9FFFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector7
name: Sector H (0xA0000 - 0xA7FFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector8
name: Sector I (0xA8000 - 0xAFFFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector9
name: Sector J (0xB0000 - 0xB7FFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector10
name: Sector K (0xB8000 - 0xB9FFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector11
name: Sector L (0xBA000 - 0xBBFFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector12
name: Sector M (0xBC000 - 0xBDFFF)
value: true
Boolean Option:
id: FlashC28Bank0Sector13
name: Sector N (0xBE000 - 0xBFFFF)
value: true
String Option:
id: FlashCRCMainValue
name: Flash:
value:
String Option:
id: FlashCRCECCValue
name: ECC:
value:
String Option:
id: FlashCRCOTPValue
name: OTP:
value:
String Option:
id: FlashCRCOTPECCValue
name: OTP ECC:
value:
String Option:
id: Z1LINKPOINTER1
name: Z1-LINKPOINTER1 (0x78000)(32 bits) 0x
value: --
String Option:
id: Z1LINKPOINTER2
name: Z1-LINKPOINTER2 (0x78004)(32 bits) 0x
value: --
String Option:
id: Z1LINKPOINTER3
name: Z1-LINKPOINTER3 (0x78008)(32 bits) 0x
value: --
String Option:
id: Z1PSWDLOCK
name: Z1-PSWDLOCK (0x78010)(32 bits) 0x
value: --
String Option:
id: Z1CRCLOCK
name: Z1-CRCLOCK (0x78014)(32 bits) 0x
value: --
String Option:
id: Z1OTPBOOTCTRL
name: Z1-BOOTCTRL (0x7801E)(32 bits) 0x
value: --
String Option:
id: Z1CSMPSWD0
name: Z1-CSMPSWD0 (0x5F010)(32 bits) 0x
value: FFFFFFFF
String Option:
id: Z1CSMPSWD1
name: Z1-CSMPSWD1 (0x5F012)(32 bits) 0x
value: FFFFFFFF
String Option:
id: Z1CSMPSWD2
name: Z1-CSMPSWD2 (0x5F014)(32 bits) 0x
value: FFFFFFFF
String Option:
id: Z1CSMPSWD3
name: Z1-CSMPSWD3 (0x5F016)(32 bits) 0x
value: FFFFFFFF
String Option:
id: Z1EXEONLYSECT
name: Z1-EXEONLYSECT (0x5F01E)(32 bits) 0x
value: --
String Option:
id: Z1EXEONLYRAM
name: Z1-EXEONLYRAM (0x5F020)(32 bits) 0x
value: --
String Option:
id: Z1GRABSECT
name: Z1-GRABSECT (0x5F01A)(32 bits) 0x
value: --
String Option:
id: Z1GRABRAM
name: Z1-GRABRAM (0x5F01C)(32 bits) 0x
value: --
String Option:
id: Z2LINKPOINTER1
name: Z2-LINKPOINTER1 (0x78200)(32 bits) 0x
value: --
String Option:
id: Z2LINKPOINTER2
name: Z2-LINKPOINTER2 (0x78204)(32 bits) 0x
value: --
String Option:
id: Z2LINKPOINTER3
name: Z2-LINKPOINTER3 (0x78208)(32 bits) 0x
value: --
String Option:
id: Z2PSWDLOCK
name: Z2-PSWDLOCK (0x78210)(32 bits) 0x
value: --
String Option:
id: Z2CRCLOCK
name: Z2-CRCLOCK (0x78214)(32 bits) 0x
value: --
String Option:
id: Z2OTPBOOTCTRL
name: Z2-BOOTCTRL (0x7821E)(32 bits) 0x
value: --
String Option:
id: Z2CSMPSWD0
name: Z2-CSMPSWD0 (0x5F050)(32 bits) 0x
value: FFFFFFFF
String Option:
id: Z2CSMPSWD1
name: Z2-CSMPSWD1 (0x5F052)(32 bits) 0x
value: FFFFFFFF
String Option:
id: Z2CSMPSWD2
name: Z2-CSMPSWD2 (0x5F054)(32 bits) 0x
value: FFFFFFFF
String Option:
id: Z2CSMPSWD3
name: Z2-CSMPSWD3 (0x5F056)(32 bits) 0x
value: FFFFFFFF
String Option:
id: Z2EXEONLYSECT
name: Z2-EXEONLYSECT (0x5F05E)(32 bits) 0x
value: --
String Option:
id: Z2EXEONLYRAM
name: Z2-EXEONLYRAM (0x5F060)(32 bits) 0x
value: --
String Option:
id: Z2GRABSECT
name: Z2-GRABSECT (0x5F05A)(32 bits) 0x
value: --
String Option:
id: Z2GRABRAM
name: Z2-GRABRAM (0x5F05C)(32 bits) 0x
value: --
Boolean Option:
id: FlashSharedRAMMsgToggle
name: Do not display Shared RAM Message on connect
value: false
Boolean Option:
id: FlashVerboseMode
name: Enable Verbose Output
value: true
然后
uniflash -ccxml TMS320F28379D.ccxml -core C28xx_CPU1 -setOptions Core Selection:=CPU1 (Master) -programBin H910-31000-09.bin 0x80000
关于其中的ccxml文件,可以从uniflash中导出