PWM measurement.
PWM input measurement mcu periph access and init wrapper for other modules.
For STM32:
- each board (or airframe file) has to define the PWM input pin and parameters
- example can be found in sw/airborne/boards/apogee_1.0.h board file
Example for airframe file
Add to your firmware section: This example contains all possible configuration options, not all of them are mandatory!
<module name="pwm_meas">
b'<define name="USE_PWM_INPUT1" value="PWM_PULSE_TYPE_ACTIVE_LOW|PWM_PULSE_TYPE_ACTIVE_HIGH" />\n '
b'<define name="USE_PWM_INPUT2" value="PWM_PULSE_TYPE_ACTIVE_LOW|PWM_PULSE_TYPE_ACTIVE_HIGH" />\n '
</module>
Module configuration options
Define Options
- name:
USE_PWM_INPUT1
value: PWM_PULSE_TYPE_ACTIVE_LOW|PWM_PULSE_TYPE_ACTIVE_HIGH
Description: Activate PWM input 1 and select polarity
- name:
USE_PWM_INPUT2
value: PWM_PULSE_TYPE_ACTIVE_LOW|PWM_PULSE_TYPE_ACTIVE_HIGH
Description: Activate PWM input 2 and select polarity
Module functions
Init Functions
These initialization functions are called once on startup.
Files
Header Files
The following headers are automatically included in modules.h
Source Files
Raw pwm_meas.xml file:
<!DOCTYPE module SYSTEM "module.dtd">
<module name="pwm_meas" dir="core">
<doc>
<description>
PWM measurement.
PWM input measurement mcu periph access and init wrapper for other modules.
For STM32:
- each board (or airframe file) has to define the PWM input pin and parameters
- example can be found in sw/airborne/boards/apogee_1.0.h board file
</description>
<define name="USE_PWM_INPUT1" value="PWM_PULSE_TYPE_ACTIVE_LOW|PWM_PULSE_TYPE_ACTIVE_HIGH" description="Activate PWM input 1 and select polarity"/>
<define name="USE_PWM_INPUT2" value="PWM_PULSE_TYPE_ACTIVE_LOW|PWM_PULSE_TYPE_ACTIVE_HIGH" description="Activate PWM input 2 and select polarity"/>
</doc>
<header>
<file name="pwm_meas.h"/>
</header>
<init fun="pwm_meas_init()"/>
<makefile target="ap">
<file name="pwm_meas.c"/>
<file name="pwm_input.c" dir="mcu_periph"/>
<file_arch name="pwm_input_arch.c" dir="mcu_periph"/>
<define name="USE_PWM_INPUT"/>
</makefile>
</module>