我正在使用CodeWarriorMC9S08DZ60.h创建一个Visual Studio项目。我正进入(状态:


  错误C2054:预期'('跟随'_PTDD'`。


MC9S08DZ60.hmicrocontroller MC9S08DZ60的头文件(来自Freescale Semiconductor):

typedef union {
    byte Byte;
    struct {
        byte PTDDD0  :1;  /* Data Direction for Port D Bit 0 */
        byte PTDDD1  :1;  /* Data Direction for Port D Bit 1 */
        byte PTDDD2  :1;  /* Data Direction for Port D Bit 2 */
        byte PTDDD3  :1;  /* Data Direction for Port D Bit 3 */
        byte PTDDD4  :1;  /* Data Direction for Port D Bit 4 */
        byte PTDDD5  :1;  /* Data Direction for Port D Bit 5 */
        byte PTDDD6  :1;  /* Data Direction for Port D Bit 6 */
        byte PTDDD7  :1;  /* Data Direction for Port D Bit 7 */
    } Bits;
} PTDDDSTR;
#ifndef MXVDEV //sri
extern volatile PTDDDSTR _PTDDD @0x00000007;
#else
PTDDDSTR _PTDDD;
#endif
#define PTDDD             _PTDDD.Byte
#define PTDDD_PTDDD0      _PTDDD.Bits.PTDDD0
#define PTDDD_PTDDD1      _PTDDD.Bits.PTDDD1
#define PTDDD_PTDDD2      _PTDDD.Bits.PTDDD2
#define PTDDD_PTDDD3      _PTDDD.Bits.PTDDD3
#define PTDDD_PTDDD4      _PTDDD.Bits.PTDDD4
#define PTDDD_PTDDD5      _PTDDD.Bits.PTDDD5
#define PTDDD_PTDDD6      _PTDDD.Bits.PTDDD6
#define PTDDD_PTDDD7      _PTDDD.Bits.PTDDD7

最佳答案

如果预处理器未定义MXVDEV,则将具有以下声明

extern volatile PTDDDSTR _PTDDD @0x00000007;


@0x00000007部分可能是CodeWarrior编译器的扩展,并且不在Visual Studio编译器中,这意味着您将得到一个错误。

08-26 22:52