APM:Libraries
libraries
AP_IRLock
AP_IRLock_I2C.h
Go to the documentation of this file.
1
/*
2
* AP_IRLock_I2C.h
3
*
4
*/
5
#pragma once
6
7
#include "
IRLock.h
"
8
9
class
AP_IRLock_I2C
:
public
IRLock
10
{
11
public
:
12
// init - initialize sensor library
13
void
init
(int8_t bus)
override
;
14
15
// retrieve latest sensor data - returns true if new data is available
16
bool
update
()
override
;
17
18
private
:
19
AP_HAL::OwnPtr<AP_HAL::Device>
dev
;
20
21
struct
PACKED
frame
{
22
uint16_t
checksum
;
23
uint16_t
signature
;
24
uint16_t
pixel_x
;
25
uint16_t
pixel_y
;
26
uint16_t
pixel_size_x
;
27
uint16_t
pixel_size_y
;
28
};
29
30
bool
timer
(
void
);
31
32
bool
sync_frame_start
(
void
);
33
bool
read_block
(
struct
frame
&irframe);
34
void
read_frames
(
void
);
35
36
void
pixel_to_1M_plane
(
float
pix_x,
float
pix_y,
float
&ret_x,
float
&ret_y);
37
38
AP_HAL::Semaphore
*
sem
;
39
uint32_t
_last_read_ms
;
40
};
AP_IRLock_I2C::frame
Definition:
AP_IRLock_I2C.h:21
AP_IRLock_I2C::timer
bool timer(void)
AP_IRLock_I2C::frame::checksum
uint16_t checksum
Definition:
AP_IRLock_I2C.h:22
AP_IRLock_I2C::update
bool update() override
Definition:
AP_IRLock_I2C.cpp:158
IRLock.h
AP_IRLock_I2C::frame::pixel_size_x
uint16_t pixel_size_x
Definition:
AP_IRLock_I2C.h:26
AP_IRLock_I2C::_last_read_ms
uint32_t _last_read_ms
Definition:
AP_IRLock_I2C.h:39
AP_HAL::OwnPtr< AP_HAL::Device >
AP_IRLock_I2C::frame::pixel_x
uint16_t pixel_x
Definition:
AP_IRLock_I2C.h:24
AP_IRLock_I2C::frame::pixel_size_y
uint16_t pixel_size_y
Definition:
AP_IRLock_I2C.h:27
AP_IRLock_I2C::frame::signature
uint16_t signature
Definition:
AP_IRLock_I2C.h:23
AP_HAL::Semaphore
Definition:
Semaphores.h:7
AP_IRLock_I2C::sem
AP_HAL::Semaphore * sem
Definition:
AP_IRLock_I2C.h:38
AP_IRLock_I2C::frame::pixel_y
uint16_t pixel_y
Definition:
AP_IRLock_I2C.h:25
AP_IRLock_I2C::init
void init(int8_t bus) override
Definition:
AP_IRLock_I2C.cpp:35
AP_IRLock_I2C::pixel_to_1M_plane
void pixel_to_1M_plane(float pix_x, float pix_y, float &ret_x, float &ret_y)
Definition:
AP_IRLock_I2C.cpp:86
AP_IRLock_I2C::read_block
bool read_block(struct frame &irframe)
Definition:
AP_IRLock_I2C.cpp:97
IRLock
Definition:
IRLock.h:26
AP_IRLock_I2C::read_frames
void read_frames(void)
Definition:
AP_IRLock_I2C.cpp:115
PACKED
#define PACKED
Definition:
AP_Common.h:28
AP_IRLock_I2C
Definition:
AP_IRLock_I2C.h:9
AP_IRLock_I2C::dev
AP_HAL::OwnPtr< AP_HAL::Device > dev
Definition:
AP_IRLock_I2C.h:19
AP_IRLock_I2C::sync_frame_start
bool sync_frame_start(void)
Definition:
AP_IRLock_I2C.cpp:58
Generated on Sun Jun 17 2018 14:18:50 for APM:Libraries by
1.8.13