Code:
if (taste=0);
falscher gehts schon fast nimmer

das "=" ist in c eine zuweisung, der variablen "taste" wird also der wert 0 zugewiesen, danach wird (wegen dem strichpunk hinter der klammer) nichts gemacht.

sollte besser so aussehen:
Code:
if (taste==0)
{
....
}
gruesse

EDIT:
ausserdem um alles ab Init(); eine groooosse while-schleife, also
Code:
Init();
while(1)
{
  taste=PollSwitch();
  ....
}