4,6 → 4,7 |
#define CUBE_ROW_COUNT 8 |
#define CUBE_COLUMN_COUNT 8 |
#define CUBE_LAYER_COUNT 8 |
#define CUBE_ROTATIONS 7 |
|
#define GCS_REG_SIZE 36 |
#define GCS_LAYER_SIZE (GCS_REG_SIZE*CUBE_ROW_COUNT) |
32,11 → 33,10 |
#define GSLAT PORTDbits.RD9 |
#define XBLNK PORTDbits.RD2 |
|
#define CUBE_MAX_BRIGHTNESS 0x7F |
|
typedef struct { |
unsigned char GCS[CUBE_LAYER_COUNT][GCS_LAYER_SIZE]; |
unsigned char current_layer; |
unsigned char rotation_counter; |
} CUBE_DATA; |
|
void Cube_Init(CUBE_DATA *data, char BC); |
52,6 → 52,12 |
void Cube_Set_All(int R, int G, int B); |
void Cube_Set_Layer(int layer, int R, int G, int B); |
void Cube_Set_Pixel(int layer, int row, int column, int R, int G, int B); |
void Cube_Get_Pixel(int layer, int row, int column, int* R, int* G, int* B); |
|
void Cube_Move_Pixel(int layer1, int row1, int column1, int layer2, int row2, int column2); |
|
void Cube_Rotate_Shell(char shell); |
void Cube_Rotate(void); |
|
#endif /* CUBE_H */ |
|