32 #include <pios_config.h>
35 #if defined(PIOS_INCLUDE_ANNUNC)
43 .GPIO_Pin = GPIO_Pin_4,
44 .GPIO_Speed = GPIO_Speed_50MHz,
45 .GPIO_Mode = GPIO_Mode_OUT,
46 .GPIO_OType = GPIO_OType_PP,
47 .GPIO_PuPd = GPIO_PuPd_NOPULL
56 .GPIO_Pin = GPIO_Pin_5,
57 .GPIO_Speed = GPIO_Speed_50MHz,
58 .GPIO_Mode = GPIO_Mode_OUT,
59 .GPIO_OType = GPIO_OType_PP,
60 .GPIO_PuPd = GPIO_PuPd_NOPULL
69 .num_annunciators =
NELEMENTS(pios_annuncs),
72 const struct pios_annunc_cfg * PIOS_BOARD_HW_DEFS_GetLedCfg (uint32_t
board_revision)
74 return &pios_annunc_cfg;
80 #if defined(PIOS_INCLUDE_I2C)
82 #include <pios_i2c_priv.h>
87 void PIOS_I2C_internal_ev_irq_handler(
void);
88 void PIOS_I2C_internal_er_irq_handler(
void);
96 .I2C_Mode = I2C_Mode_I2C,
98 .I2C_Ack = I2C_Ack_Enable,
99 .I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit,
100 .I2C_DigitalFilter = 0x00,
101 .I2C_AnalogFilter = I2C_AnalogFilter_Enable,
102 .I2C_Timing = 0x00310309,
104 .transfer_timeout_ms = 50,
108 .GPIO_Pin = GPIO_Pin_9,
109 .GPIO_Mode = GPIO_Mode_AF,
110 .GPIO_Speed = GPIO_Speed_50MHz,
111 .GPIO_OType = GPIO_OType_PP,
112 .GPIO_PuPd = GPIO_PuPd_NOPULL,
114 .pin_source = GPIO_PinSource9,
119 .GPIO_Pin = GPIO_Pin_10,
120 .GPIO_Mode = GPIO_Mode_AF,
121 .GPIO_Speed = GPIO_Speed_50MHz,
122 .GPIO_OType = GPIO_OType_PP,
123 .GPIO_PuPd = GPIO_PuPd_NOPULL,
125 .pin_source = GPIO_PinSource10,
130 .NVIC_IRQChannel = I2C2_EV_IRQn,
132 .NVIC_IRQChannelSubPriority = 0,
133 .NVIC_IRQChannelCmd = ENABLE,
139 .NVIC_IRQChannel = I2C2_ER_IRQn,
141 .NVIC_IRQChannelSubPriority = 0,
142 .NVIC_IRQChannelCmd = ENABLE,
148 void PIOS_I2C_internal_ev_irq_handler(
void)
154 void PIOS_I2C_internal_er_irq_handler(
void)
162 void PIOS_I2C_flexi_ev_irq_handler(
void);
163 void PIOS_I2C_flexi_er_irq_handler(
void);
171 .I2C_Mode = I2C_Mode_I2C,
172 .I2C_OwnAddress1 = 0,
173 .I2C_Ack = I2C_Ack_Enable,
174 .I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit,
175 .I2C_DigitalFilter = 0x00,
176 .I2C_AnalogFilter = I2C_AnalogFilter_Enable,
177 .I2C_Timing = 0x70310309,
179 .transfer_timeout_ms = 50,
183 .GPIO_Pin = GPIO_Pin_6,
184 .GPIO_Mode = GPIO_Mode_AF,
185 .GPIO_Speed = GPIO_Speed_50MHz,
186 .GPIO_OType = GPIO_OType_PP,
187 .GPIO_PuPd = GPIO_PuPd_NOPULL,
189 .pin_source = GPIO_PinSource6,
194 .GPIO_Pin = GPIO_Pin_7,
195 .GPIO_Mode = GPIO_Mode_AF,
196 .GPIO_Speed = GPIO_Speed_50MHz,
197 .GPIO_OType = GPIO_OType_PP,
198 .GPIO_PuPd = GPIO_PuPd_NOPULL,
200 .pin_source = GPIO_PinSource7,
205 .NVIC_IRQChannel = I2C1_EV_IRQn,
207 .NVIC_IRQChannelSubPriority = 0,
208 .NVIC_IRQChannelCmd = ENABLE,
214 .NVIC_IRQChannel = I2C1_ER_IRQn,
216 .NVIC_IRQChannelSubPriority = 0,
217 .NVIC_IRQChannelCmd = ENABLE,
223 void PIOS_I2C_flexi_ev_irq_handler(
void)
229 void PIOS_I2C_flexi_er_irq_handler(
void)
237 #if defined(PIOS_INCLUDE_CAN)
244 .CAN_Prescaler = 18-1,
246 .CAN_Mode = CAN_Mode_Normal,
248 .CAN_SJW = CAN_SJW_1tq,
252 .CAN_BS1 = CAN_BS1_9tq,
255 .CAN_BS2 = CAN_BS2_8tq,
274 .GPIO_Pin = GPIO_Pin_9,
275 .GPIO_Speed = GPIO_Speed_50MHz,
276 .GPIO_Mode = GPIO_Mode_AF,
277 .GPIO_OType = GPIO_OType_PP,
278 .GPIO_PuPd = GPIO_PuPd_UP
280 .pin_source = GPIO_PinSource9,
285 .GPIO_Pin = GPIO_Pin_8,
286 .GPIO_Speed = GPIO_Speed_50MHz,
287 .GPIO_Mode = GPIO_Mode_AF,
288 .GPIO_OType = GPIO_OType_PP,
289 .GPIO_PuPd = GPIO_PuPd_UP
291 .pin_source = GPIO_PinSource8,
295 .NVIC_IRQChannel = CAN1_RX1_IRQn,
297 .NVIC_IRQChannelSubPriority = 0,
298 .NVIC_IRQChannelCmd = ENABLE,
303 .NVIC_IRQChannel = USB_HP_CAN1_TX_IRQn,
305 .NVIC_IRQChannelSubPriority = 0,
306 .NVIC_IRQChannelCmd = ENABLE,
312 #if defined(PIOS_INCLUDE_FLASH)
317 .arena_size = 0x00002000,
318 .slot_size = 0x00000100,
336 uintptr_t pios_internal_flash_id;
339 .chip_id = &pios_internal_flash_id,
341 .sector_blocks = stm32f3_sectors,
342 .num_blocks =
NELEMENTS(stm32f3_sectors),
348 .chip_desc = &pios_flash_chip_internal,
357 .chip_desc = &pios_flash_chip_internal,
366 .chip_desc = &pios_flash_chip_internal,
375 .chip_desc = &pios_flash_chip_internal,
387 *num_partitions =
NELEMENTS(pios_flash_partition_table);
395 #if defined(PIOS_INCLUDE_USART)
399 #if defined(PIOS_INCLUDE_DSM)
405 static const struct pios_dsm_cfg pios_rcvr_dsm_aux_cfg = {
409 .GPIO_Pin = GPIO_Pin_3,
410 .GPIO_Speed = GPIO_Speed_2MHz,
411 .GPIO_Mode = GPIO_Mode_OUT,
412 .GPIO_OType = GPIO_OType_PP,
413 .GPIO_PuPd = GPIO_PuPd_NOPULL
418 static const struct pios_dsm_cfg pios_flexi_dsm_aux_cfg = {
422 .GPIO_Pin = GPIO_Pin_7,
423 .GPIO_Speed = GPIO_Speed_2MHz,
424 .GPIO_Mode = GPIO_Mode_OUT,
425 .GPIO_OType = GPIO_OType_PP,
426 .GPIO_PuPd = GPIO_PuPd_NOPULL
431 static const struct pios_dsm_cfg pios_main_dsm_aux_cfg = {
435 .GPIO_Pin = GPIO_Pin_11,
436 .GPIO_Speed = GPIO_Speed_2MHz,
437 .GPIO_Mode = GPIO_Mode_OUT,
438 .GPIO_OType = GPIO_OType_PP,
439 .GPIO_PuPd = GPIO_PuPd_NOPULL
451 .NVIC_IRQChannel = USART1_IRQn,
453 .NVIC_IRQChannelSubPriority = 0,
454 .NVIC_IRQChannelCmd = ENABLE,
460 .GPIO_Pin = GPIO_Pin_7,
461 .GPIO_Speed = GPIO_Speed_2MHz,
462 .GPIO_Mode = GPIO_Mode_AF,
463 .GPIO_OType = GPIO_OType_PP,
464 .GPIO_PuPd = GPIO_PuPd_UP
466 .pin_source = GPIO_PinSource7,
471 .GPIO_Pin = GPIO_Pin_6,
472 .GPIO_Speed = GPIO_Speed_2MHz,
473 .GPIO_Mode = GPIO_Mode_AF,
474 .GPIO_OType = GPIO_OType_PP,
475 .GPIO_PuPd = GPIO_PuPd_DOWN
477 .pin_source = GPIO_PinSource6,
486 .NVIC_IRQChannel = USART3_IRQn,
488 .NVIC_IRQChannelSubPriority = 0,
489 .NVIC_IRQChannelCmd = ENABLE,
495 .GPIO_Pin = GPIO_Pin_11,
496 .GPIO_Speed = GPIO_Speed_2MHz,
497 .GPIO_Mode = GPIO_Mode_AF,
498 .GPIO_OType = GPIO_OType_PP,
499 .GPIO_PuPd = GPIO_PuPd_UP
501 .pin_source = GPIO_PinSource11,
506 .GPIO_Pin = GPIO_Pin_10,
507 .GPIO_Speed = GPIO_Speed_2MHz,
508 .GPIO_Mode = GPIO_Mode_AF,
509 .GPIO_OType = GPIO_OType_PP,
510 .GPIO_PuPd = GPIO_PuPd_DOWN
512 .pin_source = GPIO_PinSource10,
521 .NVIC_IRQChannel = USART2_IRQn,
523 .NVIC_IRQChannelSubPriority = 0,
524 .NVIC_IRQChannelCmd = ENABLE,
530 .GPIO_Pin = GPIO_Pin_3,
531 .GPIO_Speed = GPIO_Speed_2MHz,
532 .GPIO_Mode = GPIO_Mode_AF,
533 .GPIO_OType = GPIO_OType_PP,
534 .GPIO_PuPd = GPIO_PuPd_UP
536 .pin_source = GPIO_PinSource3,
542 #if defined(PIOS_INCLUDE_COM)
548 #if defined(PIOS_INCLUDE_RTC)
552 #include <pios_rtc_priv.h>
554 void PIOS_RTC_IRQ_Handler (
void);
557 .
clksrc = RCC_RTCCLKSource_HSE_Div32,
561 .NVIC_IRQChannel = RTC_WKUP_IRQn,
563 .NVIC_IRQChannelSubPriority = 0,
564 .NVIC_IRQChannelCmd = ENABLE,
569 void PIOS_RTC_IRQ_Handler (
void)
581 .TIM_ClockDivision = TIM_CKD_DIV1,
582 .TIM_CounterMode = TIM_CounterMode_Up,
584 .TIM_RepetitionCounter = 0x0000,
589 .TIM_ClockDivision = TIM_CKD_DIV1,
590 .TIM_CounterMode = TIM_CounterMode_Up,
592 .TIM_RepetitionCounter = 0x0000,
600 .NVIC_IRQChannel = TIM2_IRQn,
602 .NVIC_IRQChannelSubPriority = 0,
603 .NVIC_IRQChannelCmd = ENABLE,
613 .NVIC_IRQChannel = TIM3_IRQn,
615 .NVIC_IRQChannelSubPriority = 0,
616 .NVIC_IRQChannelCmd = ENABLE,
626 .NVIC_IRQChannel = TIM1_CC_IRQn,
628 .NVIC_IRQChannelSubPriority = 0,
629 .NVIC_IRQChannelCmd = ENABLE,
638 .NVIC_IRQChannel = TIM1_BRK_TIM15_IRQn,
640 .NVIC_IRQChannelSubPriority = 0,
641 .NVIC_IRQChannelCmd = ENABLE,
651 .NVIC_IRQChannel = TIM1_UP_TIM16_IRQn,
653 .NVIC_IRQChannelSubPriority = 0,
654 .NVIC_IRQChannelCmd = ENABLE,
663 .NVIC_IRQChannel = TIM1_TRG_COM_TIM17_IRQn,
665 .NVIC_IRQChannelSubPriority = 0,
666 .NVIC_IRQChannelCmd = ENABLE,
687 .timer_chan = TIM_Channel_2,
692 .GPIO_Pin = GPIO_Pin_15,
693 .GPIO_Speed = GPIO_Speed_2MHz,
694 .GPIO_Mode = GPIO_Mode_AF,
695 .GPIO_OType = GPIO_OType_PP,
696 .GPIO_PuPd = GPIO_PuPd_UP
698 .pin_source = GPIO_PinSource15,
703 .timer_chan = TIM_Channel_1,
708 .GPIO_Pin = GPIO_Pin_14,
709 .GPIO_Speed = GPIO_Speed_2MHz,
710 .GPIO_Mode = GPIO_Mode_AF,
711 .GPIO_OType = GPIO_OType_PP,
712 .GPIO_PuPd = GPIO_PuPd_UP
714 .pin_source = GPIO_PinSource14,
719 .timer_chan = TIM_Channel_1,
724 .GPIO_Pin = GPIO_Pin_8,
725 .GPIO_Speed = GPIO_Speed_2MHz,
726 .GPIO_Mode = GPIO_Mode_AF,
727 .GPIO_OType = GPIO_OType_PP,
728 .GPIO_PuPd = GPIO_PuPd_UP
730 .pin_source = GPIO_PinSource8,
735 .timer_chan = TIM_Channel_3,
740 .GPIO_Pin = GPIO_Pin_0,
741 .GPIO_Speed = GPIO_Speed_2MHz,
742 .GPIO_Mode = GPIO_Mode_AF,
743 .GPIO_OType = GPIO_OType_PP,
744 .GPIO_PuPd = GPIO_PuPd_UP
746 .pin_source = GPIO_PinSource0,
751 .timer_chan = TIM_Channel_1,
756 .GPIO_Pin = GPIO_Pin_6,
757 .GPIO_Speed = GPIO_Speed_2MHz,
758 .GPIO_Mode = GPIO_Mode_AF,
759 .GPIO_OType = GPIO_OType_PP,
760 .GPIO_PuPd = GPIO_PuPd_UP
762 .pin_source = GPIO_PinSource6,
767 .timer_chan = TIM_Channel_3,
772 .GPIO_Pin = GPIO_Pin_2,
773 .GPIO_Speed = GPIO_Speed_2MHz,
774 .GPIO_Mode = GPIO_Mode_AF,
775 .GPIO_OType = GPIO_OType_PP,
776 .GPIO_PuPd = GPIO_PuPd_UP
778 .pin_source = GPIO_PinSource2,
783 .timer_chan = TIM_Channel_4,
788 .GPIO_Pin = GPIO_Pin_1,
789 .GPIO_Speed = GPIO_Speed_2MHz,
790 .GPIO_Mode = GPIO_Mode_AF,
791 .GPIO_OType = GPIO_OType_PP,
792 .GPIO_PuPd = GPIO_PuPd_UP
794 .pin_source = GPIO_PinSource1,
799 .timer_chan = TIM_Channel_1,
804 .GPIO_Pin = GPIO_Pin_7,
805 .GPIO_Speed = GPIO_Speed_2MHz,
806 .GPIO_Mode = GPIO_Mode_AF,
807 .GPIO_OType = GPIO_OType_PP,
808 .GPIO_PuPd = GPIO_PuPd_UP
810 .pin_source = GPIO_PinSource7,
815 .timer_chan = TIM_Channel_2,
820 .GPIO_Pin = GPIO_Pin_4,
821 .GPIO_Speed = GPIO_Speed_2MHz,
822 .GPIO_Mode = GPIO_Mode_AF,
823 .GPIO_OType = GPIO_OType_PP,
824 .GPIO_PuPd = GPIO_PuPd_UP
826 .pin_source = GPIO_PinSource4,
831 .timer_chan = TIM_Channel_2,
836 .GPIO_Pin = GPIO_Pin_1,
837 .GPIO_Speed = GPIO_Speed_2MHz,
838 .GPIO_Mode = GPIO_Mode_AF,
839 .GPIO_OType = GPIO_OType_PP,
840 .GPIO_PuPd = GPIO_PuPd_UP
842 .pin_source = GPIO_PinSource1,
848 #if defined(PIOS_INCLUDE_SERVO) && defined(PIOS_INCLUDE_TIM)
856 .TIM_OCMode = TIM_OCMode_PWM1,
857 .TIM_OutputState = TIM_OutputState_Enable,
858 .TIM_OutputNState = TIM_OutputNState_Disable,
860 .TIM_OCPolarity = TIM_OCPolarity_High,
861 .TIM_OCNPolarity = TIM_OCPolarity_High,
862 .TIM_OCIdleState = TIM_OCIdleState_Reset,
863 .TIM_OCNIdleState = TIM_OCNIdleState_Reset,
866 .num_channels =
NELEMENTS(pios_tim_servoport_v02_pins),
869 struct pios_servo_cfg pios_servo_slow_cfg = {
871 .TIM_OCMode = TIM_OCMode_PWM1,
872 .TIM_OutputState = TIM_OutputState_Enable,
873 .TIM_OutputNState = TIM_OutputNState_Disable,
875 .TIM_OCPolarity = TIM_OCPolarity_High,
876 .TIM_OCNPolarity = TIM_OCPolarity_High,
877 .TIM_OCIdleState = TIM_OCIdleState_Reset,
878 .TIM_OCNIdleState = TIM_OCNIdleState_Reset,
882 .num_channels =
NELEMENTS(pios_tim_servoport_v02_pins),
892 #if defined(PIOS_INCLUDE_PWM) || defined(PIOS_INCLUDE_PPM)
902 .timer_chan = TIM_Channel_4,
907 .GPIO_Pin = GPIO_Pin_3,
908 .GPIO_Speed = GPIO_Speed_2MHz,
909 .GPIO_Mode = GPIO_Mode_AF,
910 .GPIO_OType = GPIO_OType_PP,
911 .GPIO_PuPd = GPIO_PuPd_UP
913 .pin_source = GPIO_PinSource3,
920 .timer_chan = TIM_Channel_2,
925 .GPIO_Pin = GPIO_Pin_1,
926 .GPIO_Speed = GPIO_Speed_2MHz,
927 .GPIO_Mode = GPIO_Mode_AF,
928 .GPIO_OType = GPIO_OType_PP,
929 .GPIO_PuPd = GPIO_PuPd_UP
931 .pin_source = GPIO_PinSource1,
936 .timer_chan = TIM_Channel_1,
941 .GPIO_Pin = GPIO_Pin_7,
942 .GPIO_Speed = GPIO_Speed_2MHz,
943 .GPIO_Mode = GPIO_Mode_AF,
944 .GPIO_OType = GPIO_OType_PP,
945 .GPIO_PuPd = GPIO_PuPd_UP
947 .pin_source = GPIO_PinSource7,
956 #if defined(PIOS_INCLUDE_PWM)
960 .TIM_ICPolarity = TIM_ICPolarity_Rising,
961 .TIM_ICSelection = TIM_ICSelection_DirectTI,
962 .TIM_ICPrescaler = TIM_ICPSC_DIV1,
965 .channels = pios_tim_rcvrport_pwm,
972 #if defined(PIOS_INCLUDE_PPM)
976 .TIM_ICPolarity = TIM_ICPolarity_Rising,
977 .TIM_ICSelection = TIM_ICSelection_DirectTI,
978 .TIM_ICPrescaler = TIM_ICPSC_DIV1,
980 .TIM_Channel = TIM_Channel_4,
989 #if defined(PIOS_INCLUDE_ADC)
997 void PIOS_ADC_DMA_irq_handler(
void)
1011 .
flags = (DMA1_FLAG_TC1 | DMA1_FLAG_TE1 | DMA1_FLAG_HT1 | DMA1_FLAG_GL1),
1013 .NVIC_IRQChannel = DMA1_Channel1_IRQn,
1015 .NVIC_IRQChannelSubPriority = 0,
1016 .NVIC_IRQChannelCmd = ENABLE,
1020 .channel = DMA1_Channel1,
1022 .DMA_Priority = DMA_Priority_High,
1026 .half_flag = DMA1_IT_HT1,
1027 .full_flag = DMA1_IT_TC1,
1030 {GPIOA,GPIO_Pin_1,ADC_Channel_2,
true},
1031 {GPIOA,GPIO_Pin_4,ADC_Channel_1,
false},
1032 {GPIOA,GPIO_Pin_7,ADC_Channel_4,
false},
1035 .adc_dev_master = ADC1,
1036 .adc_dev_slave = ADC2,
1041 #if defined(PIOS_INCLUDE_RCVR)
1045 #if defined(PIOS_INCLUDE_USB)
1051 .NVIC_IRQChannel = USB_LP_CAN1_RX0_IRQn,
1053 .NVIC_IRQChannelSubPriority = 0,
1054 .NVIC_IRQChannelCmd = ENABLE,
1060 .GPIO_Pin = GPIO_Pin_3,
1061 .GPIO_Speed = GPIO_Speed_2MHz,
1062 .GPIO_Mode = GPIO_Mode_IN,
1063 .GPIO_OType = GPIO_OType_OD,
1064 .GPIO_PuPd = GPIO_PuPd_DOWN,
1071 return &pios_usb_main_cfg;
1081 #if defined(PIOS_INCLUDE_COM_MSG)
1087 #if defined(PIOS_INCLUDE_USB_HID)
1097 #if defined(PIOS_INCLUDE_USB_CDC)
1114 #if defined(PIOS_INCLUDE_MS5611)
1118 .temperature_interleaving = 1,
1125 #if defined(PIOS_INCLUDE_MPU)
1129 .line = EXTI_Line15,
1133 .GPIO_Pin = GPIO_Pin_15,
1134 .GPIO_Speed = GPIO_Speed_50MHz,
1135 .GPIO_Mode = GPIO_Mode_IN,
1136 .GPIO_OType = GPIO_OType_OD,
1137 .GPIO_PuPd = GPIO_PuPd_NOPULL,
1142 .NVIC_IRQChannel = EXTI15_10_IRQn,
1144 .NVIC_IRQChannelSubPriority = 0,
1145 .NVIC_IRQChannelCmd = ENABLE,
1150 .EXTI_Line = EXTI_Line15,
1151 .EXTI_Mode = EXTI_Mode_Interrupt,
1152 .EXTI_Trigger = EXTI_Trigger_Rising,
1153 .EXTI_LineCmd = ENABLE,
1160 .default_samplerate = 500,
1162 .use_internal_mag =
true,
static const struct pios_tim_channel pios_tim_servoport_v02_pins[]
COM MSG private definitions.
APIs for PIOS_USBHOOK layer.
TIM_ICInitTypeDef tim_ic_init
#define PIOS_IRQ_PRIO_HIGHEST
PiOS CAN interface header.
#define PIOS_SERVOS_INITIAL_POSITION
static const struct pios_tim_clock_cfg tim_17_cfg
Defines the API to set up the HID + CDC USB descriptor config.
void PIOS_INTERNAL_ADC_DMA_Handler()
#define RTC_WKUP_IRQHandler
#define DMA1_Channel1_IRQHandler
#define PIOS_IRQ_PRIO_MID
Configuration structure for the MS5611 driver.
USART private definitions.
Spektrum/JR DSMx satellite receiver private structures.
enum pios_ms5611_osr oversampling
#define I2C2_ER_IRQHandler
const struct pios_exti_cfg * exti_cfg
static const struct pios_tim_clock_cfg tim_16_cfg
#define PIOS_SERVO_UPDATE_HZ
uintptr_t pios_internal_adc_id
struct pios_i2c_adapter * pios_i2c_t
static const struct pios_tim_channel pios_tim_rcvrport_ppm[]
#define PIOS_PERIPHERAL_APB1_CLOCK
const struct pios_annunc * annunciators
void PIOS_I2C_EV_IRQ_Handler(pios_i2c_t i2c_id)
#define I2C1_ER_IRQHandler
TIM_OCInitTypeDef tim_oc_init
USB COM HID private definitions.
Servo private structures.
#define I2C2_EV_EXTI24_IRQHandler
void PIOS_I2C_ER_IRQ_Handler(pios_i2c_t i2c_id)
TIM_ICInitTypeDef tim_ic_init
static const struct pios_tim_clock_cfg tim_3_cfg
static const TIM_TimeBaseInitTypeDef tim_2_3_time_base
Defines the API to set up the HID-only USB descriptor config.
void PIOS_RTC_irq_handler(void)
#define PIOS_PERIPHERAL_APB2_CLOCK
bool PIOS_MPU_IRQHandler(void)
The IMU interrupt handler. Fetches new data from the IMU.
const struct pios_flash_driver * driver
static const struct pios_tim_clock_cfg tim_1_cfg
const struct pios_flash_partition pios_flash_partition_table[]
#define I2C1_EV_EXTI23_IRQHandler
#define PIOS_IRQ_PRIO_HIGH
USB COM CDC private definitions.
static const TIM_TimeBaseInitTypeDef tim_1_15_16_17_time_base
enum pios_flash_partition_labels label
#define PIOS_IRQ_PRIO_LOW
#define PIOS_Assert(test)
static const struct pios_tim_clock_cfg tim_15_cfg
const struct pios_flash_driver pios_internal_flash_driver
USART private definitions.
#define PIOS_LED_HEARTBEAT
static const struct pios_tim_clock_cfg tim_2_cfg
Defines the API to the board-specific USB data setup code.