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.

CCSv6编译出错

Other Parts Discussed in Thread: MSP430G2553

错误提示信息如下:

C:\ti\ccsv6\tools\compiler\ti-cgt-msp430_4.4.3\lib\rts430_eabi.lib<boot_special.obj>

error #10234-D: unresolved symbols remain

请问应该如何解决呢

  • 1)在CCS环境下,选择update升级一下你的编译器。4.4.3已经是很老版本的编译器了

    2)你现在编译的是哪个芯片

  • 您好 谢谢您的回复 我编译的是msp430g2553
  • 你看看你的编译器路径下有你用的这个.lib么?

  • 你打开官方的例程编译也是这样吗?安装最新版的ccs打开官方的例程,应该是不会出现错误的。

  • 您好,官方例程是可以编译成功的,为什么自己写的就不行了呢?
  • 你的配置不对,和官方的例程对比下,看看你自己配置的哪里不同呢?

  • 方便的话建议上传你的工程或者代码文件看看

  • 您好,请问应该怎么查看自己的配置呢?

  • 这样就能看到了,仔细对比过去。

  • 工程设置应该没有问题,你加一个main函数应该就可以了。我用的编译器是TI v15.12.3.LTS

    #include<msp430g2553.h>

    //#include <msp430.h>

    void Set_TimerB_PWM(void)
    {

    //使用系统初始化时的默认时钟1MHz,定时器B专门用于产生PWM 波形。
    TA1CTL = TASSEL_2 + MC_1 + TACLR;//使用系统次主机SMCKL、增计数模式、清楚定时器B时钟
    TA1CCR0 = 5001 - 1;//在1MHz的主频率下,1*10^6/5000=200Hz的中断频率
    TA1CCR1 = 3751 - 2;//当寄存器TACCR1的值小于3750时,输出口保持高电平。5000*3/4=3750,此路产生3:1的PWM波形。
    TA1CCR2 = 1251 - 2;//当寄存器TACCR1的值小于1250时,输出口保持高电平。5000*1/4=1250,产生1:3的PWM波
    TA1CCTL1 = OUTMOD_7;//输出模式7,计数器计数到5000计数器自动置位,无需中断服务子函数。
    TA1CCTL2 = OUTMOD_7;//输出模式7,计数器计数到5000计数器自动置位,无需中断服务子函数。
    P2SEL |= BIT1 + BIT5;//只有这两路可选(为什么是这两路?在G2553Datasheet中有特别指明)。做第二功能使用(PWM输出)
    P1DIR |= BIT6; //电机控制口CTL//这里与本例无关
    P1OUT &= ~BIT6; //start with 0 -->IN2,4为1,灭//这里与本例无关

    }

    int main (void)
    {

    while (1); // Loop
    {

    }
    }

  • 工程设置应该没有问题,你加一个main函数应该就可以了。我用的编译器是TI v15.12.3.LTS

    #include<msp430g2553.h>

    //#include <msp430.h>

    void Set_TimerB_PWM(void)
    {

    //使用系统初始化时的默认时钟1MHz,定时器B专门用于产生PWM 波形。
    TA1CTL = TASSEL_2 + MC_1 + TACLR;//使用系统次主机SMCKL、增计数模式、清楚定时器B时钟
    TA1CCR0 = 5001 - 1;//在1MHz的主频率下,1*10^6/5000=200Hz的中断频率
    TA1CCR1 = 3751 - 2;//当寄存器TACCR1的值小于3750时,输出口保持高电平。5000*3/4=3750,此路产生3:1的PWM波形。
    TA1CCR2 = 1251 - 2;//当寄存器TACCR1的值小于1250时,输出口保持高电平。5000*1/4=1250,产生1:3的PWM波
    TA1CCTL1 = OUTMOD_7;//输出模式7,计数器计数到5000计数器自动置位,无需中断服务子函数。
    TA1CCTL2 = OUTMOD_7;//输出模式7,计数器计数到5000计数器自动置位,无需中断服务子函数。
    P2SEL |= BIT1 + BIT5;//只有这两路可选(为什么是这两路?在G2553Datasheet中有特别指明)。做第二功能使用(PWM输出)
    P1DIR |= BIT6; //电机控制口CTL//这里与本例无关
    P1OUT &= ~BIT6; //start with 0 -->IN2,4为1,灭//这里与本例无关

    }

    int main (void)
    {

    while (1); // Loop
    {

    }
    }