altos: ADS1256 seems to be running fast enough with 8 MHz crystal and 2 MHz SPI
[fw/altos] / src / kernel / ao.h
index 9baae8b437d310b071618b57795b11575c650637..a02b74e4d7228bdcaaf2e403b05119de2f67f438 100644 (file)
@@ -76,6 +76,7 @@ typedef AO_PORT_TYPE ao_port_t;
 #define AO_PANIC_SELF_TEST_MPU6000     0x40 | 3        /* Self test failure */
 #define AO_PANIC_SELF_TEST_MPU9250     0x40 | 3        /* Self test failure */
 #define AO_PANIC_SELF_TEST_MS5607      0x40 | 4        /* Self test failure */
+#define AO_PANIC_SELF_TEST_ADS         0x40 | 5        /* Self test failure */
 
 /* Stop the operating system, beeping and blinking the reason */
 void
@@ -99,8 +100,8 @@ extern AO_ROMCONFIG_SYMBOL uint32_t ao_radio_cal;
  */
 
 #ifndef AO_TICK_TYPE
-#define AO_TICK_TYPE   uint16_t
-#define AO_TICK_SIGNED int16_t
+#define AO_TICK_TYPE   uint32_t
+#define AO_TICK_SIGNED int32_t
 #endif
 
 extern volatile AO_TICK_TYPE ao_tick_count;
@@ -116,6 +117,10 @@ extern volatile AO_TICK_TYPE ao_tick_count;
 AO_TICK_TYPE
 ao_time(void);
 
+/* Returns the current time in ns */
+uint64_t
+ao_time_ns(void);
+
 /* Suspend the current task until ticks time has passed */
 void
 ao_delay(uint16_t ticks);