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.

drvlib file for Piccolo controller TMS320F28030

Other Parts Discussed in Thread: TMS320F28030, TMS320F2810, CONTROLSUITE, MOTORWARE

Sir,

Hello now I am migrating TMS320F2810 to TMS320F28030 Piccolo Controller,  Please any one  Can  send  drvlib file for Piccolo controller TMS320F28030 . I want to use Ileg function.

Regards,

Bipin

  • Hi Bipin,

    Did you check the controlSuite/motorware for the same?

    Regards,
    Gautam
  • Sir,

    I Have Checked It but Didnt get it,

    Can You Please Give the Path or some file .

    Regards,
    Bipin
  • Sorry Bipin, we'll have to wait for Tiers to comment on this further.
    Be patient :)

    Regards,
    Gautam
  • We do not have a driverlib available for F2803x. We do have bitfields and examples in controlSUITE which use these bitfields.

    Regards,
    sal
  • Thank You sir,

     I am facing another Problem  i just started the to develop the firmware using the base example.every time i got below error. please give remedy for that

     line 48: error #10099-D: program will not fit into available
        memory.  placement with alignment fails for section ".text" size 0x2b12 .
        Available memory ranges:
        FLASH        size: 0x1000       unused: 0xe56        max hole: 0xe56 

    Linker File :--   F28030.cmd   

    Stack Size :- 800

    Heap Size :- 800

     

     

    SECTIONS

    {

    /* Allocate program areas: */

    .cinit : > FLASHA PAGE = 0

    .pinit : > FLASHA, PAGE = 0

    .text : > FLASHA PAGE = 0

    codestart : > BEGIN

    PAGE = 0

    ramfuncs :

    LOAD = FLASHD,

    RUN = RAML0,

    LOAD_START(_RamfuncsLoadStart),

    LOAD_END(_RamfuncsLoadEnd),

    RUN_START(_RamfuncsRunStart),

    PAGE = 0

    csmpasswds : > CSM_PWL_P0

    PAGE = 0

    csm_rsvd : > CSM_RSVD

    PAGE = 0

    /* Allocate uninitalized data sections: */

    .stack : > RAMM0 PAGE = 1

    .ebss : > RAML2

    PAGE = 1

    .esysmem : > RAML2

    PAGE = 1

    /* Initalized sections go in Flash */

    /* For SDFlash to program these, they must be allocated to page 0 */

    .econst : > FLASHA

    PAGE = 0

    .switch : > FLASHA

    PAGE = 0

    /* Allocate IQ math areas: */

    IQmath : > FLASHA

    PAGE = 0 /* Math Code */

    IQmathTables : > IQTABLES,

    PAGE = 0, TYPE = NOLOAD

     

     

     

     

    MEMORY

    {

    PAGE

    0:

    /* Program Memory */

    /* Memory (RAM/FLASH/OTP) blocks can be moved to PAGE1 for data allocation */

    RAML0 : origin = 0x008000, length = 0x000800

    /* on-chip RAM block L0 */

    RAML1 : origin = 0x008800, length = 0x000400

    /* on-chip RAM block L1 */

    OTP : origin = 0x3D7800, length = 0x000400

    /* on-chip OTP */

    FLASHD : origin = 0x3F4000, length = 0x001000

    /* on-chip FLASH */

    FLASHC : origin = 0x3F5000, length = 0x001000

    /* on-chip FLASH */

    FLASHA : origin = 0x3F7000, length = 0x000F80

    /* on-chip FLASH */

    CSM_RSVD : origin = 0x3F7F80, length = 0x000076

    /* Part of FLASHA. Program with all 0x0000 when CSM is in use. */

    BEGIN : origin = 0x3F7FF6, length = 0x000002

    /* Part of FLASHA. Used for "boot to Flash" bootloader mode. */

    CSM_PWL_P0 : origin = 0x3F7FF8, length = 0x000008

    /* Part of FLASHA. CSM password locations in FLASHA */

    IQTABLES : origin = 0x3FE000, length = 0x000B50

    /* IQ Math Tables in Boot ROM */

    IQTABLES2 : origin = 0x3FEB50, length = 0x00008C

    /* IQ Math Tables in Boot ROM */

    IQTABLES3 : origin = 0x3FEBDC, length = 0x0000AA

    /* IQ Math Tables in Boot ROM */

    ROM : origin = 0x3FF27C, length = 0x000D44

    /* Boot ROM */

    RESET : origin = 0x3FFFC0, length = 0x000002

    /* part of boot ROM */

    VECTORS : origin = 0x3FFFC2, length = 0x00003E

    /* part of boot ROM */

  • Bipin, which sample code are you referring to?
  • Gautam thank for reply . i herewith my .map File MEMORY CONFIGURATION
    name origin length used unused attr fill
    ---------------------- -------- --------- -------- -------- ---- --------
    PAGE 0: RAML0 00008000 00000800 0000001f 000007e1 RWIX
    RAML1 00008800 00000400 00000000 00000400 RWIX
    OTP 003d7800 00000400 00000000 00000400 RWIX
    FLASHD 003f4000 00001000 0000001f 00000fe1 RWIX
    FLASHC 003f5000 00001000 00000000 00001000 RWIX
    FLASHA 003f7000 00000f80 00000ebf 000000c1 RWIX
    CSM_RSVD 003f7f80 00000076 00000076 00000000 RWIX
    BEGIN 003f7ff6 00000002 00000002 00000000 RWIX
    CSM_PWL_P0 003f7ff8 00000008 00000008 00000000 RWIX
    IQTABLES 003fe000 00000b50 00000000 00000b50 RWIX
    IQTABLES2 003feb50 0000008c 00000000 0000008c RWIX
    IQTABLES3 003febdc 000000aa 00000000 000000aa RWIX
    ROM 003ff27c 00000d44 00000000 00000d44 RWIX
    RESET 003fffc0 00000002 00000000 00000002 RWIX
    VECTORS 003fffc2 0000003e 00000000 0000003e RWIXPAGE 1:
    BOOT_RSVD 00000000 00000050 00000000 00000050 RWIX
    RAMM0 00000050 000003b0 00000320 00000090 RWIX
    RAMM1 00000400 00000400 00000000 00000400 RWIX
    DEV_EMU 00000880 00000105 00000004 00000101 RWIX
    SYS_PWR_CTL 00000985 00000003 00000003 00000000 RWIX
    FLASH_REGS 00000a80 00000060 00000008 00000058 RWIX
    CSM 00000ae0 00000010 00000010 00000000 RWIX
    ADC_RESULT 00000b00 00000020 00000020 00000000 RWIX
    CPU_TIMER0 00000c00 00000008 00000008 00000000 RWIX
    CPU_TIMER1 00000c08 00000008 00000008 00000000 RWIX
    CPU_TIMER2 00000c10 00000008 00000008 00000000 RWIX
    PIE_CTRL 00000ce0 00000020 0000001a 00000006 RWIX
    PIE_VECT 00000d00 00000100 00000100 00000000 RWIX
    CLA1 00001400 00000080 00000040 00000040 RWIX
    ECANA 00006000 00000040 00000000 00000040 RWIX
    ECANA_LAM 00006040 00000040 00000000 00000040 RWIX
    ECANA_MOTS 00006080 00000040 00000000 00000040 RWIX
    ECANA_MOTO 000060c0 00000040 00000000 00000040 RWIX
    ECANA_MBOX 00006100 00000100 00000000 00000100 RWIX
    COMP1 00006400 00000020 00000011 0000000f RWIX
    COMP2 00006420 00000020 00000011 0000000f RWIX
    COMP3 00006440 00000020 00000011 0000000f RWIX
    EPWM1 00006800 00000040 0000003a 00000006 RWIX
    EPWM2 00006840 00000040 0000003a 00000006 RWIX
    EPWM3 00006880 00000040 0000003a 00000006 RWIX
    EPWM4 000068c0 00000040 0000003a 00000006 RWIX
    EPWM5 00006900 00000040 0000003a 00000006 RWIX
    EPWM6 00006940 00000040 0000003a 00000006 RWIX
    EPWM7 00006980 00000040 0000003a 00000006 RWIX
    ECAP1 00006a00 00000020 00000000 00000020 RWIX
    EQEP1 00006b00 00000040 00000000 00000040 RWIX
    LINA 00006c00 00000080 0000004a 00000036 RWIX
    GPIOCTRL 00006f80 00000040 00000040 00000000 RWIX
    GPIODAT 00006fc0 00000020 00000020 00000000 RWIX
    GPIOINT 00006fe0 00000020 0000000c 00000014 RWIX
    SYSTEM 00007010 00000020 00000020 00000000 RWIX
    SPIA 00007040 00000010 00000000 00000010 RWIX
    SCIA 00007050 00000010 00000010 00000000 RWIX
    NMIINTRUPT 00007060 00000010 00000010 00000000 RWIX
    XINTRUPT 00007070 00000010 00000010 00000000 RWIX
    ADC 00007100 00000080 00000050 00000030 RWIX
    SPIB 00007740 00000010 00000000 00000010 RWIX
    I2CA 00007900 00000040 00000000 00000040 RWIX
    RAML2 00008c00 00000400 000000a4 0000035c RWIX
    PARTID 003d7e80 00000001 00000001 00000000 RWIX
    FLASHB 003f6000 00001000 00000000 00001000 RWIX
    CSM_PWL 003f7ff8 00000008 00000008 00000000 RWIX
    SECTION ALLOCATION MAP output attributes/
    section page origin length input sections
    -------- ---- ---------- ---------- ----------------
    .cinit 0 00000000 000000d8 FAILED TO ALLOCATE
    .pinit 0 003f7000 00000000 UNINITIALIZED
    ramfuncs 0 003f4000 0000001f RUN ADDR = 00008000
    003f4000 0000001b DSP2803x_SysCtrl.obj (ramfuncs)
    003f401b 00000004 DSP2803x_usDelay.obj (ramfuncs)
  • Which sample code? Also try this linker (cmd) file: F28030.zip

  • thank you for reply
    i used above Linker file & build my project then i m getting below error
    error #10099-D: program will not fit into available
    memory. placement with alignment/blocking fails for section ".cinit" size
    0xd8 page 0. Available memory ranges:
    FLASHA size: 0xf80 unused: 0xca max hole: 0xca
  • When i am using TMS320F2810 I used F2810_FlashLinker.cmd .
  • \controlSUITE\device_support\f2803x\v130\DSP2803x_examples_ccsv5\timed_led_blink sample code for reference.
  • So does it build well with the attached cmd file?

  • Can i know why it giving this error ? when i checked my FLASH memory in Section wise i have enoug memory
  • cmd file seems to be fine. Some issue with your code or headers. I hope you use the Project -> Import Project option to import an example file. I'm asking you this question because I'm able to see all the peripheral header and source files attached to your project even though only couple are required for led_blinky example.

  • Sir,
    LED BLinking Programme for just testing purpose of my hardware.Actual i m developing algorith for PMSM motor with Piccolo controller (tms 320F28030) i had compeleted PWM ,SCI,ADC, function now trying to include FOC for same but getting the above problem as i discused
  • Already we have developed firmware in TMS 320F2810. working since 10years.
  • Understand! But it seems sample code itself is not compiling properly, which is a big question in itself! Which CCS version are you using?
  • Code Composer Studio Version: 5.2.0.00069 Compiler TI v6.1.0
  • I changed in linker file memory allocationMEMORY{PAGE 0: /* Program Memory *
    /// FLASHD : origin = 0x3F4000, length = 0x001000 /* on-chip FLASH */
    // FLASHC : origin = 0x3F5000, length = 0x001000 /* on-chip FLASH */
    FLASHD_C : origin = 0x3F4000, length = 0x002000 /* on-chip FLASH */
    SECTIONS{ /* Allocate program areas: */
    .cinit : > FLASHD_C PAGE = 0
    .pinit : > FLASHD_C, PAGE = 0
    .text : > FLASHD_C PAGE = 0
  • but when i run the programme CPU hangs
  • Gautam Thanks!!!!!!!!!!!!!!!!!!!!