Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
ppm_arch.c File Reference

STM32 ppm decoder. More...

#include "modules/radio_control/radio_control.h"
#include "modules/radio_control/ppm.h"
#include <BOARD_CONFIG>
#include <libopencm3/stm32/rcc.h>
#include <libopencm3/stm32/gpio.h>
#include <libopencm3/stm32/timer.h>
#include <libopencm3/cm3/nvic.h>
#include "mcu_periph/gpio.h"
#include "mcu_arch.h"
+ Include dependency graph for ppm_arch.c:

Go to the source code of this file.

Macros

#define ONE_MHZ_CLK   1000000
 
#define PPM_IRQ_PRIO   2
 

Functions

void ppm_arch_init (void)
 Architecture dependant code. More...
 

Variables

static uint32_t timer_rollover_cnt
 

Detailed Description

STM32 ppm decoder.

Input signal either on:

  • PA1 TIM2/CH2 (uart1 trig on Lisa/L) (Servo 6 on Lisa/M)
  • PA10 TIM1/CH3 (uart1 trig on Lisa/L) (uart1 rx on Lisa/M)

Definition in file ppm_arch.c.

Macro Definition Documentation

◆ ONE_MHZ_CLK

#define ONE_MHZ_CLK   1000000

Definition at line 48 of file ppm_arch.c.

◆ PPM_IRQ_PRIO

#define PPM_IRQ_PRIO   2

Definition at line 52 of file ppm_arch.c.

Function Documentation

◆ ppm_arch_init()

void ppm_arch_init ( void  )

Architecture dependant code.

Definition at line 119 of file ppm_arch.c.

References FALSE, gpio_setup_pin_af(), ONE_MHZ_CLK, PPM_CC_IE, PPM_CHANNEL, PPM_GPIO_AF, PPM_GPIO_PIN, PPM_GPIO_PORT, PPM_IRQ, PPM_IRQ2, PPM_IRQ_PRIO, PPM_TIMER, PPM_TIMER_INPUT, RC_PPM_TICKS_PER_USEC, timer_get_frequency(), and timer_rollover_cnt.

+ Here is the call graph for this function:

Variable Documentation

◆ timer_rollover_cnt

uint32_t timer_rollover_cnt
static

Definition at line 56 of file ppm_arch.c.

Referenced by ppm_arch_init().