Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
main_demo4.c
Go to the documentation of this file.
1
#include "
std.h
"
2
#include "
mcu.h
"
3
#include "
mcu_periph/sys_time.h
"
4
#include "
led.h
"
5
#include "
mcu_periph/uart.h
"
6
7
#include "pprzlink/messages.h"
8
#include "
subsystems/datalink/downlink.h
"
9
10
static
inline
void
main_init
(
void
);
11
static
inline
void
main_periodic_task
(
void
);
12
13
int
main
(
void
)
14
{
15
main_init
();
16
while
(1) {
17
if
(
sys_time_check_and_ack_timer
(0)) {
18
main_periodic_task
();
19
}
20
}
21
return
0;
22
}
23
24
static
inline
void
main_init
(
void
)
25
{
26
mcu_init
();
27
sys_time_register_timer
((1. / PERIODIC_FREQUENCY), NULL);
28
uart0_init_tx();
29
mcu_int_enable
();
30
}
31
32
static
inline
void
main_periodic_task
(
void
)
33
{
34
LED_TOGGLE
(1);
35
uint16_t
time_sec =
sys_time
.
nb_sec
;
36
DOWNLINK_SEND_TAKEOFF(&time_sec);
37
}
uint16_t
unsigned short uint16_t
Definition:
types.h:16
mcu_int_enable
#define mcu_int_enable()
Definition:
mcu_arch.h:36
LED_TOGGLE
#define LED_TOGGLE(i)
Definition:
led_hw.h:53
std.h
main
int main(void)
Definition:
main_demo4.c:13
uart.h
arch independent UART (Universal Asynchronous Receiver/Transmitter) API
main_periodic_task
static void main_periodic_task(void)
Definition:
main_demo4.c:32
mcu.h
Arch independent mcu ( Micro Controller Unit ) utilities.
sys_time.h
Architecture independent timing functions.
led.h
arch independent LED (Light Emitting Diodes) API
downlink.h
Common code for AP and FBW telemetry.
sys_time
Definition:
sys_time.h:71
sys_time_register_timer
tid_t sys_time_register_timer(float duration, sys_time_cb cb)
Register a new system timer.
Definition:
sys_time.c:43
main_init
static void main_init(void)
Definition:
main_demo4.c:24
sys_time::nb_sec
volatile uint32_t nb_sec
full seconds since startup
Definition:
sys_time.h:72
mcu_init
void mcu_init(void)
Microcontroller peripherals initialization.
Definition:
mcu.c:87
sys_time_check_and_ack_timer
static bool sys_time_check_and_ack_timer(tid_t id)
Check if timer has elapsed.
Definition:
sys_time.h:114
sw
airborne
firmwares
tutorial
main_demo4.c
Generated on Tue Feb 1 2022 13:51:14 for Paparazzi UAS by
1.8.17