|
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.
|
#include "display.h"#include <FreeRTOS.h>#include <stdio.h>#include <task.h>#include <queue.h>#include <semphr.h>#include <stdbool.h>#include <string.h>#include "ucan.h"#include "bcs.h"
Go to the source code of this file.
Data Structures | |
| struct | message_t |
| BCS can message structure. More... | |
Macros | |
| #define | STACKSIZE_TASK 256 |
| Stack size of all bcs tasks. More... | |
| #define | PRIORITY_TASK 2 |
| Priority of all bcs tasks. More... | |
| #define | MAX_BLOCK_COUNT 3 |
| Number of blocks to work with. Must be between 2 and 4. More... | |
| #define | SWITCH ((volatile unsigned char*)(0x6C000400)) |
Functions | |
| struct | __attribute__ ((__packed__)) |
| Status message received by belt conveyer system. More... | |
| void | bcs_prepare_drop (enum belt_select belt) |
| Prepares a block drop operation to a specific belt global. More... | |
| void | bcs_signal_dropped (enum belt_select belt) |
| Signal that a block has been dropped on a belt global. More... | |
| 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. More... | |
| int8_t | bcs_grab (enum belt_select belt) |
| Instructs the system that we want to grab a block from the bcs global. More... | |
| void | bcs_init () |
| Initializes the belt conveyer system and starts the belt tasks global. More... | |
Variables | |
| status_t | |
1.8.13