Oddanie

Committer:
lolkusus
Date:
Mon May 18 17:07:54 2020 +0000
Revision:
0:9083554aa264
Oddanie;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lolkusus 0:9083554aa264 1 #ifndef __STEPPER_LED_GUI_H
lolkusus 0:9083554aa264 2 #define __STEPPER_LED_GUI_H
lolkusus 0:9083554aa264 3
lolkusus 0:9083554aa264 4 #include "LCD_DISCO_F429ZI.h"
lolkusus 0:9083554aa264 5 #include "mbed.h"
lolkusus 0:9083554aa264 6
lolkusus 0:9083554aa264 7 #define LED_COUNT 4
lolkusus 0:9083554aa264 8 #define LED_START_X 30
lolkusus 0:9083554aa264 9 #define LED_Y 290
lolkusus 0:9083554aa264 10 #define LED_RADIUS 20
lolkusus 0:9083554aa264 11 #define LED_DISTANCE 60
lolkusus 0:9083554aa264 12 #define LED_RIM_WIDTH 1
lolkusus 0:9083554aa264 13
lolkusus 0:9083554aa264 14 #define MOTOR_X 120
lolkusus 0:9083554aa264 15 #define MOTOR_Y 120
lolkusus 0:9083554aa264 16 #define MOTOR_RADIUS 100
lolkusus 0:9083554aa264 17 #define MOTOR_SMALL_RADIUS 20
lolkusus 0:9083554aa264 18 #define STEPS_PER_REV 16
lolkusus 0:9083554aa264 19
lolkusus 0:9083554aa264 20 #define PI 3.14159
lolkusus 0:9083554aa264 21
lolkusus 0:9083554aa264 22 #define STEP_PERIOD 0.25
lolkusus 0:9083554aa264 23
lolkusus 0:9083554aa264 24 typedef enum tState
lolkusus 0:9083554aa264 25 {
lolkusus 0:9083554aa264 26 ON,
lolkusus 0:9083554aa264 27 OFF
lolkusus 0:9083554aa264 28 } tState;
lolkusus 0:9083554aa264 29
lolkusus 0:9083554aa264 30 typedef enum eDirection{
lolkusus 0:9083554aa264 31 LEFT,
lolkusus 0:9083554aa264 32 RIGHT,
lolkusus 0:9083554aa264 33 STOP
lolkusus 0:9083554aa264 34 } eDirection;
lolkusus 0:9083554aa264 35
lolkusus 0:9083554aa264 36 class StepperLedGui
lolkusus 0:9083554aa264 37 {
lolkusus 0:9083554aa264 38 public:
lolkusus 0:9083554aa264 39 StepperLedGui();
lolkusus 0:9083554aa264 40 void MotorCallib();
lolkusus 0:9083554aa264 41 void MotorSteps(unsigned int uiStepCount);
lolkusus 0:9083554aa264 42 void gotoPosition(unsigned int uiPosition);
lolkusus 0:9083554aa264 43 private:
lolkusus 0:9083554aa264 44 tState ReadDetector();
lolkusus 0:9083554aa264 45 void DrawLed(unsigned char ucLedNumber);
lolkusus 0:9083554aa264 46 void SetLed(unsigned char ucLedNumber);
lolkusus 0:9083554aa264 47 void ClearLeds();
lolkusus 0:9083554aa264 48 void LedStep(eDirection Direction);
lolkusus 0:9083554aa264 49 void DrawMotor();
lolkusus 0:9083554aa264 50 tState eLedStates[LED_COUNT];
lolkusus 0:9083554aa264 51 unsigned int uiLedCounter;
lolkusus 0:9083554aa264 52 unsigned int uiZeroPosition;
lolkusus 0:9083554aa264 53 LCD_DISCO_F429ZI lcd;
lolkusus 0:9083554aa264 54 };
lolkusus 0:9083554aa264 55
lolkusus 0:9083554aa264 56 #endif