Rc helicopter: rc receiver gives to high value when controlling servo

Why do you declare rc_start[] and rc_shared[] as double (double floats) ?. micros() is an uint32_t BTW.

What is this ?:

swasplate[0].write(rc_raw[0]);
swashplate[a].attach(10+a, 1200, 1800);