You aren't checking whether the chip has detected a valid tone. Pin 15 will go high when a valid tone has been detected and the BCD output is valid.
You need to wire pin 15 to a digital input. Then the code can just loop waiting for that pin to go high. When it does, read all four data pins, and then wait for pin 15 to go low.
// The digital pin where the chips pin15 is connected
#define Pin15 7
// In setup Pin15 must be declared an input with pullup
// wait for pin 15 to go high
// Wait for pin 15 to go low again.