c - MSP430 的 CCS 中出现错误 : Expected an identifier,

标签 c msp430

我目前正在接手一个之前使用 MSPGCC 编译的 MSP430 项目,我被要求更新它,以便它可以与使用 CCSv6 的 TI 的 C 编译器配合使用。但是,我遇到了一系列我不太理解的错误。这是我的代码示例,其中存在一些错误:

struct UART_UCxxCTL_BITS
{
    UINT8_T UCSWRST : 1;    /**< R/W Software reset enable                  */
    UINT8_T UCTXBRK : 1;    /**< R/W Transmit break                         */
    UINT8_T UCTXADDR: 1;    /**< R/W Transmit address                       */
    UINT8_T UCDORM  : 1;    /**< R/W Dormant                                */
    UINT8_T UCBRKIE : 1;    /**< R/W Receive break character interrupt      */
    UINT8_T UCRXEIE : 1;    /**< R/W Receive eroneous-character interrupt   */
    UINT8_T UCSSEL  : 2;    /**< R/W USCI clock source select               */
    UINT8_T UCSYNC  : 1;    /**< R/W Synchronous mode select    */
    UINT8_T UCMODE  : 2;    /**< R/W Mode select                */
    UINT8_T UCSPB   : 1;    /**< R/W Stop bit select            */
    UINT8_T UC7BIT  : 1;    /**< R/W Character length           */
    UINT8_T UCMSB   : 1;    /**< R/W MSB first select           */
    UINT8_T UCPAR   : 1;    /**< R/W Parity select              */
    UINT8_T UCPEN   : 1;    /**< R/W Parity enable              */
};

对于结构内的所有这些行,除了 UCMODEUCSSEL 之外,我收到错误:“#41 需要一个标识符” 总共,我的项目中有 38 个错误 #41,所有这些错误都在结构上,但不是每个结构,也不是其中的每个声明。它们出现在两个头文件中,一个用于 UART,另一个用于 SPI。但这两个文件没有链接。在这两个文件中都声明了结构,其中一些非常相似。

例如,在这两个文件中,UCMODEUCSSEL 不会被视为错误,但其余的则被视为错误。这就是我觉得奇怪的地方。

请注意,UINT8_T 是一个无符号字符

你知道什么会导致这些错误吗?

非常感谢。

最佳答案

失败的关键字已在 CCS 环境中的处理器头文件中定义,即 msp430f6725.h

#define UCRXEIE                (0x0020)       /* RX Error interrupt enable */

关于c - MSP430 的 CCS 中出现错误 : Expected an identifier,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26656392/

相关文章:

c - 打印数据到不同终端IAR

c - 头文件中的方法

c - 如何提供中断上下文和进程上下文之间的同步

c - 为什么我的 insert_node 函数会删除我的根? (C)

c - Keil stm32,使用汇编、分散文件和c。如何将c代码入口点导出到程序集?

c - 知道c中数组的大小

c - 强制链接描述文件部分的最小大小

c - MSP430 中断开销

c - MSP430 TIMERA1 中断

c - MSP430 中 TimerA 的软件串行