X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fmetro-m0%2Fao_pins.h;h=0f276c1f2f343bbf9933a88cfd3495676305e460;hb=fb3cd8d1987b3e4d0a09ece97b3124e954c5f949;hp=1f7daae94a80fa887ace73b1b687c65aad493f9d;hpb=f354d17c7f15dcbc8c5b07fe2f950df3cb4552b2;p=fw%2Faltos diff --git a/src/metro-m0/ao_pins.h b/src/metro-m0/ao_pins.h index 1f7daae9..0f276c1f 100644 --- a/src/metro-m0/ao_pins.h +++ b/src/metro-m0/ao_pins.h @@ -26,8 +26,6 @@ #define AO_LED_PANIC LED_BLUE -#define HAS_BEEP 0 - #define HAS_USB 1 #define USE_USB_STDIO 1 @@ -60,4 +58,78 @@ #endif +/* + * Beeper + */ + +#define HAS_BEEP 1 + +/* Beep on PA11 function F TCC0.3 */ + +#define AO_BEEP_TCC (&samd21_tcc0) +#define AO_BEEP_TCC_APBC_MASK SAMD21_PM_APBCMASK_TCC0 +#define AO_BEEP_PORT (&samd21_port_a) +#define AO_BEEP_PIN (11) +#define AO_BEEP_FUNC SAMD21_PORT_PMUX_FUNC_F + +/* ADC */ +#define AO_DATA_RING 32 + +#define HAS_ADC 1 + +struct ao_adc { + int16_t a[6]; + int16_t temp; +}; + +#define AO_NUM_ADC_PIN 6 +#define AO_NUM_ADC (AO_NUM_ADC_PIN + 1) + +#define AO_ADC_DUMP(p) \ + printf("tick: %5lu a0: %5d a1: %5d a2: %5d a3: %5d a4: %5d a5: %5d temp: %5d\n", \ + (p)->tick, \ + (p)->adc.a[0], (p)->adc.a[1], (p)->adc.a[2], \ + (p)->adc.a[3], (p)->adc.a[4], (p)->adc.a[5], \ + (p)->adc.temp); + +#define AO_ADC_PIN0_PORT (&samd21_port_a) +#define AO_ADC_PIN0_PIN 2 +#define AO_ADC_SQ0 0 + +#define AO_ADC_PIN1_PORT (&samd21_port_b) +#define AO_ADC_PIN1_PIN 8 +#define AO_ADC_SQ1 2 + +#define AO_ADC_PIN2_PORT (&samd21_port_b) +#define AO_ADC_PIN2_PIN 9 +#define AO_ADC_SQ2 3 + +#define AO_ADC_PIN3_PORT (&samd21_port_a) +#define AO_ADC_PIN3_PIN 4 +#define AO_ADC_SQ3 4 + +#define AO_ADC_PIN4_PORT (&samd21_port_a) +#define AO_ADC_PIN4_PIN 5 +#define AO_ADC_SQ4 5 + +#define AO_ADC_PIN5_PORT (&samd21_port_b) +#define AO_ADC_PIN5_PIN 2 +#define AO_ADC_SQ5 10 + +#define AO_ADC_SQ6 SAMD21_ADC_INPUTCTRL_MUXPOS_TEMP + +/* GPS */ +#define HAS_GPS 1 + +#define AO_SERIAL_SPEED_UBLOX AO_SERIAL_SPEED_9600 + +#define HAS_SERIAL_0 1 +#define USE_SERIAL_0_STDIN 0 +#define SERIAL_0_PA08_PA09 1 + +#define ao_gps_getchar ao_serial0_getchar +#define ao_gps_putchar ao_serial0_putchar +#define ao_gps_set_speed ao_serial0_set_speed +#define ao_gps_fifo (ao_samd21_usart0.rx_fifo) + #endif /* _AO_PINS_H_ */