Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
dc_shoot_rc.c
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014 Eduardo Lavratti <agressiva@hotmail.com>
3  *
4  * This file is part of paparazzi.
5  *
6  * paparazzi is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2, or (at your option)
9  * any later version.
10  *
11  * paparazzi is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with paparazzi; see the file COPYING. If not, write to
18  * the Free Software Foundation, 59 Temple Place - Suite 330,
19  * Boston, MA 02111-1307, USA.
20  */
21 
29 #include "dc_shoot_rc.h"
31 #include "dc.h"
32 
33 #ifndef DC_RADIO_SHOOT
34 #error "You need to define DC_RADIO_SHOOT to a RADIO_xxx channel to use this module"
35 #endif
36 
37 #define DC_RADIO_SHOOT_THRESHOLD 3000
38 
40 {
41  static uint8_t rd_shoot = 0;
42  static uint8_t rd_num = 0;
43 
44  if ((rd_shoot == 0) && (radio_control_get(DC_RADIO_SHOOT) > DC_RADIO_SHOOT_THRESHOLD)) {
46  rd_shoot = 1;
47  }
48  if ((rd_shoot == 1) && (rd_num < 4)) {
49  rd_num = rd_num + 1;
50  } else {
51  rd_num = 0;
52  rd_shoot = 0;
53  }
54 }
void dc_send_command(uint8_t cmd)
Send Command To Camera.
Standard Digital Camera Control Interface.
@ DC_SHOOT
Definition: dc.h:102
void dc_shoot_rc_periodic(void)
periodic 4Hz function
Definition: dc_shoot_rc.c:39
#define DC_RADIO_SHOOT_THRESHOLD
Definition: dc_shoot_rc.c:37
Digital Camera remote shoot using radio channel.
Generic interface for radio control modules.
static pprz_t radio_control_get(uint8_t idx)
Get a radio control channel value.
Definition: radio_control.h:94
unsigned char uint8_t
Typedef defining 8 bit unsigned char type.
Definition: vl53l1_types.h:98