code compiles and runs, lots not working right yet telestatic-v4
authorBdale Garbee <bdale@gag.com>
Mon, 23 May 2022 05:51:53 +0000 (23:51 -0600)
committerBdale Garbee <bdale@gag.com>
Mon, 23 May 2022 05:51:53 +0000 (23:51 -0600)
src/drivers/ao_ads131a0x.c
src/kernel/ao_log_telestatic.c
src/telestatic-v4/Makefile
src/telestatic-v4/ao_pins.h
src/telestatic-v4/ao_telestatic.c

index 1bd06c7d970a34f5f1d566f78c71e4784dce8e7e..dbfe253c5b8e655a6072041573949afdc91c1e93 100644 (file)
@@ -16,6 +16,8 @@
 #include <ao_exti.h>
 #include "ao_ads131a0x.h"
 
+#define AO_ADS131A0X_SPI_SPEED ao_spi_speed(8000000)
+
 #define DEBUG_LOW      1
 #define DEBUG_HIGH     2
 
@@ -265,7 +267,7 @@ ao_ads131a0x_dump(void)
                ao_add_task(&ao_ads131a0x_task, ao_ads131a0x, "ads131a0x");
        }
                
-       printf ("ADS131A0X value %8x %8x %8x %8x\n",
+       printf ("ADS131A0X value %8lx %8lx %8lx %8lx\n",
                ao_ads131a0x_current.ain[0],
                ao_ads131a0x_current.ain[1],
                ao_ads131a0x_current.ain[2],
index 0829bcbb2286df78e60efbc5f5e3a5019253b374..6d56b4915f6a171c3cc8f373d3e327ddaeba6852 100644 (file)
@@ -76,7 +76,7 @@ ao_log(void)
                        ao_sleep(&ao_log_running);
        
                log_data.type = AO_LOG_FLIGHT;
-               log_data.tick = ao_time();
+               log_data.tick = (uint16_t) ao_time();
                log_data.u.flight.flight = ao_flight_number;
                ao_log_telestatic();
 
@@ -87,18 +87,20 @@ ao_log(void)
                for (;;) {
                        /* Write samples to EEPROM */
                        while (ao_log_data_pos != ao_data_head) {
-                               log_data.tick = ao_data_ring[ao_log_data_pos].tick;
+                               log_data.tick = (uint16_t) ao_data_ring[ao_log_data_pos].tick;
                                log_data.type = AO_LOG_SENSOR;
 #if HAS_ADS131A0X
-                               log_data.u.sensor.pressure = ao_data_ring[ao_log_data_pos].ads131a0x.ain[0];
-                               log_data.u.sensor.pressure2 = ao_data_ring[ao_log_data_pos].ads131a0x.ain[1];
-                               log_data.u.sensor.thrust = ao_data_ring[ao_log_data_pos].ads131a0x.ain[2];
-                               log_data.u.sensor.mass = ao_data_ring[ao_log_data_pos].ads131a0x.ain[3];
+                               log_data.u.sensor.pressure = (uint32_t) ao_data_ring[ao_log_data_pos].ads131a0x.ain[0];
+                               log_data.u.sensor.pressure2 = (uint32_t) ao_data_ring[ao_log_data_pos].ads131a0x.ain[1];
+                               log_data.u.sensor.thrust = (uint32_t) ao_data_ring[ao_log_data_pos].ads131a0x.ain[2];
+                               log_data.u.sensor.mass = (uint32_t) ao_data_ring[ao_log_data_pos].ads131a0x.ain[3];
 #endif
-                               log_data.u.sensor.t_low = ao_data_ring[ao_log_data_pos].max6691.sensor[0].t_low;
+#ifdef HAS_MAX6691
+                               log_data.u.sensor.t_low = (uint32_t) ao_data_ring[ao_log_data_pos].max6691.sensor[0].t_low;
                                int i;
                                for (i = 0; i < 4; i++)
-                                       log_data.u.sensor.t_high[i] = ao_data_ring[ao_log_data_pos].max6691.sensor[i].t_high;
+                                       log_data.u.sensor.t_high[i] = (uint32_t) ao_data_ring[ao_log_data_pos].max6691.sensor[i].t_high;
+#endif
                                ao_log_telestatic();
                                ao_log_data_pos = ao_data_ring_next(ao_log_data_pos);
                        }
index b5b235fd49fe19c71c31af678df5edbceb5b7fc9..4c0072e6fc929882ee1f7a048294aa019f717093 100644 (file)
@@ -55,8 +55,7 @@ ALTOS_SRC = \
        ao_radio_cmac_cmd.c \
        ao_log.c \
        ao_log_telestatic.c \
-       ao_ads131a0x.c \
-       ao_max6691.c
+       ao_ads131a0x.c 
 
 PRODUCT_SRC = \
        ao_telestatic.c
index 00e9d9bd9458cafc9df93a9e86279a40952e665f..26b35f8283d86d54759b52a06a53856b85aee1fc 100644 (file)
 #define AO_ADS131A0X_SPI_CS_PIN                15
 #define AO_ADS131A0X_SPI_CS_MASK       (1 << AO_ADS131A0X_SPI_CS_PIN)
 #define AO_ADS131A0X_SPI_BUS           (AO_SPI_1_PE13_PE14_PE15 | AO_SPI_MODE_1)
-#define AO_ADS131A0X_SPI_SPEED         AO_SPI_SPEED_8MHz
-
 #define AO_ADS131A0X_DRDY_PORT         (&stm_gpiob)
 #define AO_ADS131A0X_DRDY_PIN          10
 
@@ -240,7 +238,7 @@ struct ao_adc {
 };
 
 #define AO_ADC_DUMP(p)                                                 \
-       printf ("tick: %5u 0: %5d pyro: %5d batt %5d\n", \
+       printf ("tick: %5lu 0: %5d pyro: %5d batt %5d\n", \
                (p)->tick,                                              \
                (p)->adc.sense[0],                                      \
                (p)->adc.pyro,                                          \
index 2b24bdcb0c77ecc6af14e6ff89f615d54bc530b8..ee3c2a26187a6820b67a066d6b80b9970a2d63c7 100644 (file)
 #include <ao_exti.h>
 #include <ao_radio_cmac_cmd.h>
 #include <ao_eeprom.h>
-#include <ao_max6691.h>
-
-static void
-set_logging(void)
-{
-       ao_log_running = ao_cmd_hex();
-       ao_wakeup(&ao_log_running);
-}
-
-const struct ao_cmds ao_firetwo_cmds[] = {
-        { set_logging,  "L <0 off, 1 on>\0Log sensors to flash" },
-        { 0,    NULL },
-};
 
 int
 main(void)
@@ -50,13 +37,10 @@ main(void)
        ao_dma_init();
        ao_exti_init();
 
-       ao_cmd_register(&ao_firetwo_cmds[0]);
        ao_cmd_init();
 
        ao_adc_init();
 
-       ao_max6691_init();
-
        ao_eeprom_init();
        ao_storage_init();
        ao_log_init();