San Diego to Grand Canyon

I'll drive from SD to GC tomorrow through I-40. Are there any worthy stops along the way? Nice diners or somewhere to eat? I guess I can allow 2-3 hours for some attraction along the way, is there some place worth visiting, for example - is there enough time to see Joshua Tree reserve?