U.B.O.R
The [U]seless [B]ox [O]rganizing [R]obot. A FreeRTOS study project written in C which implements a multitasked control unit for a belt conveyor system with robotic sorting arms.
bcs.h
Go to the documentation of this file.
1 #ifndef BCS_H
2 #define BCS_H
3 #include <stdint.h>
4 
8 enum belt_select {belt_left=0x110,
9  belt_mid=0x120,
10  belt_right=0x130
11  };
12 
13 
14 //doc see bcs.c
15 int8_t bcs_grab(enum belt_select belt);
16 void bcs_prepare_drop(enum belt_select belt);
17 void bcs_signal_dropped(enum belt_select belt);
18 void bcs_signal_band_free(enum belt_select belt);
19 void bcs_init();
20 
21 #endif /* BCS_H */
void bcs_init()
Initializes the belt conveyer system and starts the belt tasks global.
Definition: bcs.c:398
void bcs_signal_band_free(enum belt_select belt)
Signal that a block has been removed from a belt and the belt is free again global.
Definition: bcs.c:223
the right belt
Definition: bcs.h:10
void bcs_signal_dropped(enum belt_select belt)
Signal that a block has been dropped on a belt global.
Definition: bcs.c:201
the left belt
Definition: bcs.h:8
void bcs_prepare_drop(enum belt_select belt)
Prepares a block drop operation to a specific belt global.
Definition: bcs.c:178
the middle belt
Definition: bcs.h:9
int8_t bcs_grab(enum belt_select belt)
Instructs the system that we want to grab a block from the bcs global.
Definition: bcs.c:276
belt_select
The belt_select enum differenciates between the different belt tasks. The members point to the base a...
Definition: bcs.h:8