Upps, du hast recht, wir reden aneinander vorbei. Versuche es mal so:

void start()
{
....

start() sollte dann die Variable speed von main() übenehmen. Wenn's dann immer noch nicht funzt:

//Hauptprogramm

int speed = 100;

int main(void)
{
Init();
...

So ist speed auf jeden Fall global

Oder start() als Funktion mit Rückgabewert:

int start(int speed)
{
...
}
o--;
return(speed);
}

und Aufruf mit Zuweisung:

...
PrintIntLCD(speed);
speed = start(speed);
}