Mega not sleeping and LED stays on

This code should put to sleep Mega but it continues to be awake and LED stays ON.
Anybody can help. I have a wire from PIN 2 that I use to put it against the GRND.

// GAAT !!!!!! http://www.engblaze.com/hush-little-microprocessor-avr-and-arduino-sleep-mode-basics/

#include <avr/interrupt.h>
#include <avr/power.h>
#include <avr/sleep.h>
#include <avr/io.h>
//
int LEDPin=9;
int teller=0;
void setup(void)
{
  //kan evengoed met pinMode
DDRD &= B00000011; // set Arduino pins 2 to 7 as inputs, leaves 0 & 1 (RX & TX) as is
DDRB = B00000000; // set pins 8 to 13 as inputs
PORTD |= B11111100; // enable pullups on pins 2 to 7
//PORTB |= B11111111; // enable pullups on pins 8 to 13
pinMode(LEDPin,OUTPUT); // set pin LEDPin as an output so we can use LED to monitor
digitalWrite(LEDPin,HIGH); // turn pin LEDPin LED on
  Serial.begin(115200);
}
//
void loop(void)
{
// Stay awake for 1 second, then sleep.
// LED turns off when sleeping, then back on upon wake.
 Serial.print("awake and gooing to sleep after LED blink  ");
 Serial.print(teller++);Serial.print(":  ");Serial.println(millis());
delay(1000);
sleepNow();
}
//
void sleepNow(void)
{
// Set pin 2 as interrupt and attach handler:
attachInterrupt(0, pinInterrupt, LOW);
delay(100);
//
// Choose our preferred sleep mode:
set_sleep_mode(SLEEP_MODE_IDLE);
//
// Set sleep enable (SE) bit:
sleep_enable();
//
// Put the device to sleep:
digitalWrite(LEDPin,LOW); // turn LED off to indicate sleep
sleep_mode();
//
// Upon waking up, sketch continues from this point.
sleep_disable();
digitalWrite(LEDPin,HIGH); // turn LED on to indicate awake
  Serial.println("wak");
}
//
void pinInterrupt(void)
{
detachInterrupt(0);
}

"SLEEP_MODE_IDLE" is not very sleepy, try another sleep mode.