yeh..
Use timebase to do procedures at different intervals
e.g.
long timenow; nexta;nextb;
.....
void loop()
{
timenow=millis();
if (timenow>nexta) proca();
if (timenow>nextb) procb();
}
void proca()
{
nexta = timenow + interval;
do stuff....
}
void procb()
{
nextb = timenow + interval2;
do stuff....
}