1

私は Visual Studio 2005 を使用しており、WinCE 6.0 OS イメージの構築についてトレーニングを受けています。ピンマルチプレクサのセットアップ部分にいます。マクロ BSP_HC1 を設定したので、そのマクロだけでコーディングできます。コーディングの一部は、

#define PAD_ENTRY(x,y)      {PAD_ID(x),y,0},
#define SAFE_MODE            7
#define PAD_ID(x) (offsetof(OMAP_SYSC_PADCONFS_REGS,CONTROL_PADCONF_##x)/sizeof(UINT16))

// OMAP_SYSC_PADCONFS_REGS is a structure and CONTROL_PADCONF_GPMC_A1 (for eg.,) is an element in it.

#define INPUT_DISABLED          (0<<8)
#define MUXMODE(x)              ((x & 0x7)<<0)
typedef struct {
    UINT16 padID;
    unsigned int Cfg:15;    
    unsigned int inUse:1;
} PAD_INFO;



#ifdef BSP_HC1
#define GPMC_PADS \
  PAD_ENTRY(GPMC_A6   ,INPUT_DISABLED | MUXMODE(SAFE_MODE))   \
  PAD_ENTRY(GPMC_nCS2 ,INPUT_DISABLED | MUXMODE(0))   
#else
#define GPMC_PADS \
  PAD_ENTRY(GPMC_A1       ,INPUT_DISABLED | MUXMODE(0))     \
  PAD_ENTRY(GPMC_A2       ,INPUT_DISABLED | MUXMODE(0))     \
  PAD_ENTRY(GPMC_A3       ,INPUT_DISABLED | MUXMODE(0))
#endif

main.c では次のように呼び出されます。

static const PAD_INFO ebootPinMux[] = {
            DSS_PADS
            GPMC_PADS
        USBOTG_PADS
            END_OF_PAD_ARRAY
    };

コンパイル中に次のエラーが表示fatal error C1057: unexpected end of file in macro expansionされ、GPMC_PADS を指しています。msdnは、一部の括弧が欠落している可能性があるというエラーを説明しています。しかし、それは私がこれを解決するのを助けませんでした。よろしくお願いします。

4

2 に答える 2

3

実は括弧が抜けていました!追加したところ、エラーが修正されました。ありがとう。

于 2013-06-25T12:53:09.937 に答える