X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Fcc1111%2Fao_arch.h;h=f2442eb69775c36a98d54df3ca543731fb35c65c;hp=06b04b93651d75fcad23fd40433ad3a0d9fd5622;hb=7d34811ba035367bbf26a8510265754f3fbb5a95;hpb=a5d873d47b3b16ca32559b4de668bf07b25eddb0 diff --git a/src/cc1111/ao_arch.h b/src/cc1111/ao_arch.h index 06b04b93..f2442eb6 100644 --- a/src/cc1111/ao_arch.h +++ b/src/cc1111/ao_arch.h @@ -153,6 +153,11 @@ extern AO_ROMCONFIG_SYMBOL(0x00a6) uint32_t ao_radio_cal; #define ao_arch_cpu_idle() (PCON = PCON_IDLE) +#define ao_arch_block_interrupts() __asm clr ea __endasm +#define ao_arch_release_interrupts() __asm setb ea __endasm +#define cli() ao_arch_block_interrupts() +#define sei() ao_arch_release_interrupts() + #define ao_arch_restore_stack() { \ uint8_t stack_len; \ __data uint8_t *stack_ptr; \ @@ -200,18 +205,6 @@ extern AO_ROMCONFIG_SYMBOL(0x00a6) uint32_t ao_radio_cal; #define ao_arch_critical(b) __critical { b } -struct ao_adc { - int16_t accel; /* accelerometer */ - int16_t pres; /* pressure sensor */ - int16_t temp; /* temperature sensor */ - int16_t v_batt; /* battery voltage */ - int16_t sense_d; /* drogue continuity sense */ - int16_t sense_m; /* main continuity sense */ -#if HAS_ACCEL_REF - uint16_t accel_ref; /* acceleration reference */ -#endif -}; - #define AO_DATA_RING 32 /* ao_button.c */ @@ -241,17 +234,17 @@ ao_button_clear(void) __critical; /* ao_string.c */ void -_ao_xmemcpy(__xdata void *dst, __xdata void *src, uint8_t count); +_ao_xmemcpy(__xdata void *dst, __xdata void *src, uint16_t count); #define ao_xmemcpy(d,s,c) _ao_xmemcpy(d,s,c) void -_ao_xmemset(__xdata void *dst, uint8_t value, uint8_t count); +_ao_xmemset(__xdata void *dst, uint8_t value, uint16_t count); #define ao_xmemset(d,v,c) _ao_xmemset(d,v,c) int8_t -_ao_xmemcmp(__xdata void *a, __xdata void *b, uint8_t count); +_ao_xmemcmp(__xdata void *a, __xdata void *b, uint16_t count); #define ao_xmemcmp(d,s,c) _ao_xmemcmp((d), (s), (c))