DGUS LCD Library  1
All Files Functions Variables Typedefs Enumerations Macros Pages
/github/workspace/dgus_control_curve.h
Go to the documentation of this file.
1 #pragma once
9 /* Curve */
10 #include <stddef.h>
11 #include <stdint.h>
12 #include "dgus_reg.h"
13 #include "dgus.h"
14 
18 typedef struct curve curve;
19 
20 #define CURVE_ADDRESS 0x0310
21 #define CURVE_HEADER 0x5AA5
28 typedef struct __attribute__((packed)) realtime_curve {
29  uint8_t mode;
30  uint8_t reserved_0;
31  uint16_t x;
32  uint16_t y;
33  uint16_t y_central;
34  uint16_t vd_central;
35  uint16_t colour;
36  uint16_t mul_y;
37  uint8_t channel;
38  uint8_t distrance_horizontal;
39  uint8_t pixel_scale;
40  uint8_t reserved[5];
58 curve *dgus_curve_buffer_create(uint8_t num_curves, uint8_t datapoint_buffer_len);
59 
66 void dgus_curve_init_channel(curve *cur, uint8_t channel_id);
67 
75 
84 DGUS_RETURN dgus_curve_add_data(curve *cur, uint8_t chan_id, uint16_t data);
85 
93 DGUS_RETURN dgus_curve_reset(curve *cur, uint8_t chan_id);
94 
100 void dgus_curve_destroy(curve *cur);
DGUS II LCD Driver.
curve * dgus_curve_buffer_create(uint8_t num_curves, uint8_t datapoint_buffer_len)
Initialise a new curve buffer, allocating the memory required.
Definition: dgus_control_curve.c:35
realtime_curve
Definition: dgus_control_curve.h:41
DGUS_RETURN dgus_curve_add_data(curve *cur, uint8_t chan_id, uint16_t data)
Append some data to the curve buffer for batch sending.
Definition: dgus_control_curve.c:65
struct __attribute__((packed)) realtime_curve
SP Structure for realtime curve control.
Definition: dgus_control_curve.h:28
DGUS_RETURN dgus_curve_reset(curve *cur, uint8_t chan_id)
Reset a curve on screen. This will not affect the buffer.
Definition: dgus_control_curve.c:128
void dgus_curve_init_channel(curve *cur, uint8_t channel_id)
Initialise a channel.
Definition: dgus_control_curve.c:51
DGUS_RETURN dgus_curve_send_data(curve *cur)
Send the data we have aggregated in the curve instance.
Definition: dgus_control_curve.c:79
void dgus_curve_destroy(curve *cur)
Destroy a curve buffer and all.
Definition: dgus_control_curve.c:58
DGUS II LCD Driver. Register and cointrol definitions.
#define DGUS_RETURN
Definition: dgus_reg.h:33