J'utilise Visual Studio 2005 et je suis formé à la construction de WinCE 6.0 OS Image. Je suis dans la partie de configuration de pin mux. J'ai mis une macro BSP_HC1, donc le codage avec cette seule macro devrait fonctionner. Une partie du codage est,Visual Studio - Erreur irrécupérable C1057
#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
Il est appelé à main.c que,
static const PAD_INFO ebootPinMux[] = {
DSS_PADS
GPMC_PADS
USBOTG_PADS
END_OF_PAD_ARRAY
};
Lors de la compilation je reçois l'erreur: fatal error C1057: unexpected end of file in macro expansion
et les points à GPMC_PADS. Le msdn explique l'erreur que je pourrais manquer une parenthèse. Mais ça ne m'a pas aidé à résoudre ça. Veuillez me guider.
L'erreur se produit-elle uniquement lorsque BSP_HC1 est défini? Quelle est la définition de SAFE_MODE, PAD_ENTRY et PAD_INFO? – kkrambo
Quelles sont les définitions de 'PAD_ID',' BSP_HC1', et 'MUXMODE'? Les macros 'GPMC_ *' et 'INPUT_DISABLED' sont-elles simplement des entiers ou sont-elles aussi des macros compliquées? –
@kkrambo J'ai mis à jour avec les macros nécessaires. – Gomu