[modules] mag_hmc58xx: configure MAG_HMC58XX_I2C_DEV

and disable periodic IMU_MAG_RAW report by default
This commit is contained in:
Felix Ruess
2015-07-29 23:57:05 +02:00
parent fb91702596
commit c036b27e09
4 changed files with 16 additions and 8 deletions
+1 -2
View File
@@ -13,7 +13,7 @@
<modules> <modules>
<load name="mag_hmc58xx.xml"> <load name="mag_hmc58xx.xml">
<define name="MODULE_HMC58XX_UPDATE_AHRS"/> <define name="MODULE_HMC58XX_UPDATE_AHRS"/>
<define name="MAG_HMC58XX_I2C_DEV" value="i2c2"/> <configure name="MAG_HMC58XX_I2C_DEV" value="i2c2"/>
</load> </load>
<!--load name="sys_mon.xml"/--> <!--load name="sys_mon.xml"/-->
<!--load name="light.xml"> <!--load name="light.xml">
@@ -24,7 +24,6 @@
</modules> </modules>
<firmware name="fixedwing"> <firmware name="fixedwing">
<define name="USE_I2C2"/>
<configure name="PERIODIC_FREQUENCY" value="125"/> <configure name="PERIODIC_FREQUENCY" value="125"/>
<target name="ap" board="apogee_1.0"/> <target name="ap" board="apogee_1.0"/>
+1 -2
View File
@@ -5,7 +5,7 @@
<modules> <modules>
<load name="mag_hmc58xx.xml"> <load name="mag_hmc58xx.xml">
<define name="MODULE_HMC58XX_UPDATE_AHRS"/> <define name="MODULE_HMC58XX_UPDATE_AHRS"/>
<define name="MAG_HMC58XX_I2C_DEV" value="i2c2"/> <configure name="MAG_HMC58XX_I2C_DEV" value="i2c2"/>
</load> </load>
<load name="airspeed_adc.xml"> <load name="airspeed_adc.xml">
<configure name="ADC_AIRSPEED" value="ADC_1"/> <configure name="ADC_AIRSPEED" value="ADC_1"/>
@@ -18,7 +18,6 @@
<firmware name="fixedwing"> <firmware name="fixedwing">
<define name="USE_I2C1"/> <define name="USE_I2C1"/>
<define name="USE_I2C2"/>
<configure name="PERIODIC_FREQUENCY" value="125"/> <configure name="PERIODIC_FREQUENCY" value="125"/>
<target name="ap" board="apogee_1.0_chibios"> <target name="ap" board="apogee_1.0_chibios">
+11 -1
View File
@@ -8,17 +8,27 @@
</description> </description>
<configure name="MAG_HMC58XX_I2C_DEV" value="i2c1" description="I2C device to use (e.g. i2c1)"/> <configure name="MAG_HMC58XX_I2C_DEV" value="i2c1" description="I2C device to use (e.g. i2c1)"/>
<define name="MODULE_HMC58XX_SYNC_SEND" value="TRUE|FALSE" description="Send IMU_RAW message with each new measurement (default: FALSE)"/> <define name="MODULE_HMC58XX_SYNC_SEND" value="TRUE|FALSE" description="Send IMU_RAW message with each new measurement (default: FALSE)"/>
<define name="MODULE_HMC58XX_UPDATE_AHRS" value="TRUE|FALSE" description="Copy measurements to imu and send as ABI message (default: FALSE)"/>
</doc> </doc>
<header> <header>
<file name="mag_hmc58xx.h"/> <file name="mag_hmc58xx.h"/>
</header> </header>
<init fun="mag_hmc58xx_module_init()"/> <init fun="mag_hmc58xx_module_init()"/>
<periodic fun="mag_hmc58xx_module_periodic()" freq="60"/> <periodic fun="mag_hmc58xx_module_periodic()" freq="60"/>
<periodic fun="mag_hmc58xx_report()" freq="10" autorun="TRUE"/> <periodic fun="mag_hmc58xx_report()" freq="10" autorun="FALSE"/>
<event fun="mag_hmc58xx_module_event()"/> <event fun="mag_hmc58xx_module_event()"/>
<makefile target="ap"> <makefile target="ap">
<file name="mag_hmc58xx.c"/> <file name="mag_hmc58xx.c"/>
<file name="hmc58xx.c" dir="peripherals"/> <file name="hmc58xx.c" dir="peripherals"/>
<raw>
ifeq ($(MAG_HMC58XX_I2C_DEV),)
$(error mag_hmc58xx module error: please configure MAG_HMC58XX_I2C_DEV)
endif
MAG_HMC58XX_I2C_DEV_UPPER=$(shell echo $(MAG_HMC58XX_I2C_DEV) | tr a-z A-Z)
</raw>
<define name="USE_I2C"/> <define name="USE_I2C"/>
<define name="USE_$(MAG_HMC58XX_I2C_DEV_UPPER)"/>
<define name="MAG_HMC58XX_I2C_DEV" value="$(MAG_HMC58XX_I2C_DEV)"/>
</makefile> </makefile>
</module> </module>
+3 -3
View File
@@ -92,9 +92,9 @@ void mag_hmc58xx_module_event(void)
void mag_hmc58xx_report(void) void mag_hmc58xx_report(void)
{ {
struct Int32Vect3 mag = { struct Int32Vect3 mag = {
(int32_t)(mag_hmc58xx.data.vect.x), (int32_t)(mag_hmc58xx.data.value[HMC58XX_CHAN_X]),
(int32_t)(mag_hmc58xx.data.vect.y), (int32_t)(mag_hmc58xx.data.value[HMC58XX_CHAN_Y]),
(int32_t)(mag_hmc58xx.data.vect.z) (int32_t)(mag_hmc58xx.data.value[HMC58XX_CHAN_Z])
}; };
DOWNLINK_SEND_IMU_MAG_RAW(DefaultChannel, DefaultDevice, &mag.x, &mag.y, &mag.z); DOWNLINK_SEND_IMU_MAG_RAW(DefaultChannel, DefaultDevice, &mag.x, &mag.y, &mag.z);
} }