diff options
author | Bdale Garbee <bdale@gag.com> | 2017-08-12 00:59:03 -0400 |
---|---|---|
committer | Bdale Garbee <bdale@gag.com> | 2017-08-12 00:59:03 -0400 |
commit | 59c6167b9f1e9de30455af1632e9a0b65d64ad63 (patch) | |
tree | d27e4b3df53300081aa6ac0a30820c58a1c968ef /src/drivers/ao_hmc5883.c | |
parent | 41eedf88751910ea9c0a299444fbac769edb8427 (diff) | |
parent | fccfa54bb3b746cecfcdc1fd497cf736bbfe3ef3 (diff) |
Merge branch 'branch-1.8' into debian
Diffstat (limited to 'src/drivers/ao_hmc5883.c')
-rw-r--r-- | src/drivers/ao_hmc5883.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/drivers/ao_hmc5883.c b/src/drivers/ao_hmc5883.c index f668fb66..c33aa536 100644 --- a/src/drivers/ao_hmc5883.c +++ b/src/drivers/ao_hmc5883.c @@ -126,13 +126,15 @@ struct ao_hmc5883_sample ao_hmc5883_current; static void ao_hmc5883(void) { + struct ao_hmc5883_sample sample; ao_hmc5883_setup(); for (;;) { - ao_hmc5883_sample(&ao_hmc5883_current); - ao_arch_critical( - AO_DATA_PRESENT(AO_DATA_HMC5883); - AO_DATA_WAIT(); - ); + ao_hmc5883_sample(&sample); + ao_arch_block_interrupts(); + ao_hmc5883_current = sample; + AO_DATA_PRESENT(AO_DATA_HMC5883); + AO_DATA_WAIT(); + ao_arch_release_interrupts(); } } @@ -141,10 +143,8 @@ static struct ao_task ao_hmc5883_task; static void ao_hmc5883_show(void) { - struct ao_data sample; - ao_data_get(&sample); - printf ("X: %d Y: %d Z: %d missed irq: %lu\n", - sample.hmc5883.x, sample.hmc5883.y, sample.hmc5883.z, ao_hmc5883_missed_irq); + printf ("X: %d Z: %d Y: %d missed irq: %lu\n", + ao_hmc5883_current.x, ao_hmc5883_current.z, ao_hmc5883_current.y, ao_hmc5883_missed_irq); } static const struct ao_cmds ao_hmc5883_cmds[] = { |