wheelchair
30.03.2006, 01:57
hallo
möchte in WinAVR ein ansteuerung des Multiplexers (4 Steuerltg)
programmieren, der verschiedene Modi verwenden soll. µC ist ein AT90S8535
Die Auswahl der Modi wird mit enum und switch realisiert.
//--------------------------------------------------------------------------
//--ENUM------------------------------------------------------------------
//--------------------------------------------------------------------------
enum SCANMODE {
NormalMode,SpeedMode,TurboMode
};
unsigned char scanmode;
//--------------------------------------------------------------------------
//--Unterprogramm next_channel_number----------------------------
//--------------------------------------------------------------------------
void next_channel_number (void)
{
switch (scanmode)
{
case NormalMode: (channel++) & CHANNEL_BIT_MSK;
channel_temp = channel;break;
case speed: (channel++) & CHANNEL_BIT_MSK;
channel_temp = (channel & 7) << 1;
if (channel & (1 << 3))
channel_temp |= 1;break
}
}
main()
....
nxchannel = next_channel_number (char channel, char channel_temp, SCANMODE);
--> bekomme diese Fehlermeldung???
main.c:256: error: parse error before "char"
make: *** [main.o] Error 1
habe ich dabei etwas vergessen?, funktioniert das enum mit dem switch so?
mfg
möchte in WinAVR ein ansteuerung des Multiplexers (4 Steuerltg)
programmieren, der verschiedene Modi verwenden soll. µC ist ein AT90S8535
Die Auswahl der Modi wird mit enum und switch realisiert.
//--------------------------------------------------------------------------
//--ENUM------------------------------------------------------------------
//--------------------------------------------------------------------------
enum SCANMODE {
NormalMode,SpeedMode,TurboMode
};
unsigned char scanmode;
//--------------------------------------------------------------------------
//--Unterprogramm next_channel_number----------------------------
//--------------------------------------------------------------------------
void next_channel_number (void)
{
switch (scanmode)
{
case NormalMode: (channel++) & CHANNEL_BIT_MSK;
channel_temp = channel;break;
case speed: (channel++) & CHANNEL_BIT_MSK;
channel_temp = (channel & 7) << 1;
if (channel & (1 << 3))
channel_temp |= 1;break
}
}
main()
....
nxchannel = next_channel_number (char channel, char channel_temp, SCANMODE);
--> bekomme diese Fehlermeldung???
main.c:256: error: parse error before "char"
make: *** [main.o] Error 1
habe ich dabei etwas vergessen?, funktioniert das enum mit dem switch so?
mfg