40 Hz Square wave with 8kHz tone

Would this be too simple?

uint32_t timer, Hz40 = 25000, onTime = 12500;
byte tonePin = 4;
void setup()
{
}
void loop()
{
  if(micros() - timer >Hz40)
    timer += Hz40;   
  micros() - timer < onTime ? tone(tonePin, 8000) : noTone(tonePin);    
}