hmc5883: shorten test routine

The test routine as-written has a run-time longer than 250ms.
This is above the limit of our watchdog timeout on some boards.
Looks like we've only been getting away with it due to the
imprecise low speed clock in the STM32.