aboutsummaryrefslogtreecommitdiff
path: root/robot/io.h
diff options
context:
space:
mode:
Diffstat (limited to 'robot/io.h')
-rw-r--r--robot/io.h56
1 files changed, 54 insertions, 2 deletions
diff --git a/robot/io.h b/robot/io.h
index 14fe0af..e262fa1 100644
--- a/robot/io.h
+++ b/robot/io.h
@@ -1,4 +1,56 @@
#pragma once
+#include <stdlib.h>
+#include <stdint.h>
+#include <stdbool.h>
+#define FRONT_SENSOR_PIN 5
+#define SIDE_SENSOR_PIN 7
+#define BATTERY_PIN 6
-/** i/o module main */
-void w2_io_main();
+//inputs
+
+typedef struct {
+ bool pressed;
+} w2_s_io_push;
+
+typedef struct {
+ uint16_t range;
+
+} w2_s_io_contrast;
+
+typedef struct {
+ uint16_t detection;
+} w2_s_io_distance;
+
+//outputs
+
+typedef struct {
+ int speed;
+} w2_s_io_motor;
+
+typedef struct {
+ bool toggle;
+} w2_s_io_led;
+
+typedef struct {
+ char text[16];
+} w2_s_io_display;
+typedef struct {
+ uint8_t charged;
+} w2_s_io_battery;
+
+//all i/o
+
+typedef struct {
+ w2_s_i_push button[5];
+ w2_s_i_contrast qtrSensor[5];
+ w2_s_i_distance frontDetection;
+ w2_s_i_distance sideDetection;
+ w2_s_i_battery batteryLevel;
+
+
+ w2_s_o_motor motor_left;
+ w2_s_o_motor motor_right;
+ w2_s_o_led led_red;
+ w2_s_o_led led_green;
+ w2_s_o_display lcd;
+} w2_io_all;