Paparazzi UAS  v5.2.2_stable-0-gd6b9f29
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Digital camera control (trigger using GPIO)

Module XML file: digital_cam.xml

No detailed description...

Module configuration options

Define Options

  • name: DC_SHOOT_ON_BUTTON_RELEASE value: None
    Description: if defined, call dc_send_shot_postion on button release instead of on push
  • name: DC_SHUTTER_GPIO value: GPIOC,GPIO12
    Description: mandatory, gpio to control shutter
  • name: DC_ZOOM_IN_GPIO value: GPIOC,GPIO2
    Description: optional, gpio to activate zoom in
  • name: DC_ZOOM_OUT_GPIO value: GPIOC,GPIO5
    Description: optional, gpio to activate zoom out
  • name: DC_POWER_GPIO value: GPIOB,GPIO1
    Description: optional, gpio to turn power on
  • name: DC_POWER_OFF_GPIO value: GPIOC,GPIO1
    Description: optional, gpio to turn power off
  • name: DC_PUSH value: gpio_set|gpio_clear
    Description: specifies whether to set or clear gpio to push the shutter (default: gpio_set)
  • name: DC_RELEASE value: gpio_clear|gpio_set
    Description: specifies whether to set or clear gpio to release the shutter (default: gpio_clear)
  • name: DC_AUTOSHOOT_QUARTERSEC_PERIOD value: 6
    Description: quarter_second
  • name: DC_AUTOSHOOT_METER_GRID value: 50
    Description: grid in meters

Module functions

Init Functions

These initialization functions are called once on startup.

Periodic Functions

These functions are called periodically at the specified frequency from the module periodic loop.

Files

Header Files

The following headers are automatically included in modules.h

Source Files

Raw digital_cam.xml file:

<!DOCTYPE module SYSTEM "./module.dtd">
<module name="digital_cam">
<doc>
<description>Digital camera control (trigger using GPIO)</description>
<define name="DC_SHOOT_ON_BUTTON_RELEASE" description="if defined, call dc_send_shot_postion on button release instead of on push"/>
<define name="DC_SHUTTER_GPIO" value="GPIOC,GPIO12" description="mandatory, gpio to control shutter"/>
<define name="DC_ZOOM_IN_GPIO" value="GPIOC,GPIO2" description="optional, gpio to activate zoom in"/>
<define name="DC_ZOOM_OUT_GPIO" value="GPIOC,GPIO5" description="optional, gpio to activate zoom out"/>
<define name="DC_POWER_GPIO" value="GPIOB,GPIO1" description="optional, gpio to turn power on"/>
<define name="DC_POWER_OFF_GPIO" value="GPIOC,GPIO1" description="optional, gpio to turn power off"/>
<define name="DC_PUSH" value="gpio_set|gpio_clear" description="specifies whether to set or clear gpio to push the shutter (default: gpio_set)"/>
<define name="DC_RELEASE" value="gpio_clear|gpio_set" description="specifies whether to set or clear gpio to release the shutter (default: gpio_clear)"/>
<define name="DC_AUTOSHOOT_QUARTERSEC_PERIOD" value="6" description="quarter_second"/>
<define name="DC_AUTOSHOOT_METER_GRID" value="50" description="grid in meters"/>
</doc>
<header>
<file name="gpio_cam_ctrl.h"/>
</header>
<init fun="gpio_cam_ctrl_init()"/>
<periodic fun="gpio_cam_ctrl_periodic()" freq="4" autorun="TRUE"/>
<makefile >
<define name="DIGITAL_CAM" />
<file name="gpio_cam_ctrl.c"/>
<file name="dc.c"/>
<define name="SENSOR_SYNC_SEND" value="1"/>
</makefile>
</module>