Update

Dependencies:   mbed mbed-rtos X_NUCLEO_IHM02A1

Committer:
scherfa2
Date:
Mon May 13 10:11:48 2019 +0000
Revision:
38:3776ee18e56f
Parent:
35:758191d5c6e1
Child:
40:117b324843ee
Buttons update

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hagenrap 33:de144094bdd1 1 #include "SETUP.h"
hagenrap 33:de144094bdd1 2
scherfa2 27:23bd03a6a6f6 3
scherfa2 27:23bd03a6a6f6 4 int StatusDUO=DUO_DEFAULT;
scherfa2 38:3776ee18e56f 5
scherfa2 38:3776ee18e56f 6 bool ButtonSTART = false;
scherfa2 38:3776ee18e56f 7 bool ButtonABBRUCH = false;
scherfa2 38:3776ee18e56f 8
scherfa2 38:3776ee18e56f 9
scherfa2 38:3776ee18e56f 10 /*
scherfa2 34:0dee9a606869 11 extern volatile bool buttonSTART_pressed;
scherfa2 34:0dee9a606869 12 extern volatile bool buttonSTART_enabled;
scherfa2 38:3776ee18e56f 13
scherfa2 38:3776ee18e56f 14 extern volatile bool buttonAbbruch_pressed;
scherfa2 38:3776ee18e56f 15 extern volatile bool buttonAbbruch_enabled;
scherfa2 38:3776ee18e56f 16 */
scherfa2 38:3776ee18e56f 17
scherfa2 38:3776ee18e56f 18
scherfa2 38:3776ee18e56f 19
scherfa2 34:0dee9a606869 20 extern PwmOut Servo;
scherfa2 34:0dee9a606869 21
scherfa2 38:3776ee18e56f 22 extern L6470 **motors;
scherfa2 38:3776ee18e56f 23 extern L6470B **motors2;
scherfa2 38:3776ee18e56f 24
scherfa2 38:3776ee18e56f 25 extern DigitalIn LS_1;
scherfa2 38:3776ee18e56f 26 extern DigitalIn LS_2;
scherfa2 38:3776ee18e56f 27 extern DigitalIn LS_3;
scherfa2 38:3776ee18e56f 28
scherfa2 38:3776ee18e56f 29 extern PwmOut Cutter_1;
scherfa2 38:3776ee18e56f 30 extern PwmOut Cutter_2;
scherfa2 38:3776ee18e56f 31 extern PwmOut Spleisser_1;
scherfa2 38:3776ee18e56f 32 extern PwmOut Spleisser_2;
scherfa2 38:3776ee18e56f 33
scherfa2 38:3776ee18e56f 34 void EntryDuoDefault()
scherfa2 38:3776ee18e56f 35 {
scherfa2 38:3776ee18e56f 36 StatusDUO=DUO_DEFAULT;
scherfa2 38:3776ee18e56f 37 }
scherfa2 38:3776ee18e56f 38
scherfa2 34:0dee9a606869 39 void EntryDuoStart()
scherfa2 34:0dee9a606869 40 {
scherfa2 38:3776ee18e56f 41 Stepper_1_Leerlauf();
scherfa2 38:3776ee18e56f 42 Stepper_2_Leerlauf();
scherfa2 38:3776ee18e56f 43 Stepper_3_Leerlauf();
scherfa2 38:3776ee18e56f 44
scherfa2 38:3776ee18e56f 45 DisplaySendeBefehl(0x0C);
scherfa2 38:3776ee18e56f 46 DisplaySendeBefehl(0x01);
scherfa2 38:3776ee18e56f 47 gotoxy(1,1);
scherfa2 38:3776ee18e56f 48 DisplaySendeString("Modus: DUO-Betrieb");
scherfa2 38:3776ee18e56f 49 gotoxy(1,4);
scherfa2 38:3776ee18e56f 50 DisplaySendeString("Start PLA");
scherfa2 38:3776ee18e56f 51
scherfa2 38:3776ee18e56f 52 StatusDUO=DUO_START;
scherfa2 38:3776ee18e56f 53
scherfa2 38:3776ee18e56f 54 }
scherfa2 38:3776ee18e56f 55
scherfa2 38:3776ee18e56f 56 void EntryDuoFilamentIN()
scherfa2 38:3776ee18e56f 57 {
scherfa2 38:3776ee18e56f 58 DisplaySendeBefehl(0x01);
scherfa2 34:0dee9a606869 59 gotoxy(1,1);
scherfa2 38:3776ee18e56f 60 DisplaySendeString("Betrieb gestartet ");
scherfa2 34:0dee9a606869 61 gotoxy(1,3);
scherfa2 38:3776ee18e56f 62 DisplaySendeString("Filament einlegen ");
scherfa2 38:3776ee18e56f 63 gotoxy(1,4);
scherfa2 38:3776ee18e56f 64 DisplaySendeString(" Abbruch");
scherfa2 38:3776ee18e56f 65
scherfa2 38:3776ee18e56f 66 // Set_Cutter(200, 200, 2);
scherfa2 34:0dee9a606869 67
scherfa2 38:3776ee18e56f 68 motors[0]->run(StepperMotor::FWD, 100);
scherfa2 38:3776ee18e56f 69 StatusDUO=DUO_FilamentIN;
scherfa2 38:3776ee18e56f 70 }
scherfa2 38:3776ee18e56f 71
scherfa2 38:3776ee18e56f 72 void EntryDuoSchneiden1()
scherfa2 38:3776ee18e56f 73 {
scherfa2 38:3776ee18e56f 74 Stepper_1_SetHome();
scherfa2 38:3776ee18e56f 75
scherfa2 38:3776ee18e56f 76 DisplaySendeBefehl(0x01);
scherfa2 38:3776ee18e56f 77 gotoxy(1,1);
scherfa2 38:3776ee18e56f 78 DisplaySendeString("Filament an Eingang");
scherfa2 38:3776ee18e56f 79 gotoxy(1,3);
scherfa2 38:3776ee18e56f 80 DisplaySendeString("Wird gefoerdert...");
scherfa2 38:3776ee18e56f 81 gotoxy(1,4);
scherfa2 38:3776ee18e56f 82 DisplaySendeString("Spleissen Abbruch");
scherfa2 34:0dee9a606869 83
scherfa2 38:3776ee18e56f 84 StatusDUO=DUO_Schneiden1;
scherfa2 38:3776ee18e56f 85
scherfa2 38:3776ee18e56f 86 }
scherfa2 38:3776ee18e56f 87 void EntryDuoSchneiden2()
scherfa2 38:3776ee18e56f 88 {
scherfa2 38:3776ee18e56f 89 Stepper_1_SetHome();
scherfa2 34:0dee9a606869 90
scherfa2 38:3776ee18e56f 91 DisplaySendeBefehl(0x01);
scherfa2 38:3776ee18e56f 92 gotoxy(1,1);
scherfa2 38:3776ee18e56f 93 DisplaySendeString("Spleissen");
scherfa2 38:3776ee18e56f 94 gotoxy(1,3);
scherfa2 38:3776ee18e56f 95 DisplaySendeString("");
scherfa2 38:3776ee18e56f 96 gotoxy(1,4);
scherfa2 38:3776ee18e56f 97 DisplaySendeString(" Abbruch");
scherfa2 38:3776ee18e56f 98
scherfa2 38:3776ee18e56f 99
scherfa2 38:3776ee18e56f 100
scherfa2 38:3776ee18e56f 101 Set_Spleisser(200, 200, 2);
scherfa2 38:3776ee18e56f 102 Stepper_2_Move('V', 400);
scherfa2 38:3776ee18e56f 103 printf("Spleissen\r\n");
scherfa2 38:3776ee18e56f 104
scherfa2 38:3776ee18e56f 105
scherfa2 38:3776ee18e56f 106 StatusDUO=DUO_Schneiden2;
scherfa2 38:3776ee18e56f 107
scherfa2 34:0dee9a606869 108 }
scherfa2 34:0dee9a606869 109
scherfa2 27:23bd03a6a6f6 110
scherfa2 27:23bd03a6a6f6 111 void EntryDUO()
scherfa2 27:23bd03a6a6f6 112 {
scherfa2 38:3776ee18e56f 113 ButtonSTART = get_Button_1();
scherfa2 38:3776ee18e56f 114 ButtonABBRUCH = get_Button_2();
scherfa2 38:3776ee18e56f 115
scherfa2 27:23bd03a6a6f6 116 switch(StatusDUO)
scherfa2 27:23bd03a6a6f6 117 {
scherfa2 27:23bd03a6a6f6 118 case DUO_DEFAULT:
scherfa2 38:3776ee18e56f 119 //buttonAbbruch_diable_cb();
scherfa2 38:3776ee18e56f 120 //buttonSTART_enabled_cb();
scherfa2 38:3776ee18e56f 121 EntryDuoStart();
scherfa2 38:3776ee18e56f 122 break;
scherfa2 34:0dee9a606869 123
scherfa2 38:3776ee18e56f 124 case DUO_START:
scherfa2 38:3776ee18e56f 125 if(ButtonSTART==true)
scherfa2 38:3776ee18e56f 126 {
scherfa2 38:3776ee18e56f 127
scherfa2 38:3776ee18e56f 128 ButtonSTART=false;
scherfa2 38:3776ee18e56f 129 // buttonSTART_diable_cb();
scherfa2 38:3776ee18e56f 130 //buttonAbbruch_enabled_cb();
scherfa2 38:3776ee18e56f 131 EntryDuoFilamentIN();
scherfa2 34:0dee9a606869 132 }
scherfa2 34:0dee9a606869 133
scherfa2 27:23bd03a6a6f6 134 break;
scherfa2 27:23bd03a6a6f6 135
scherfa2 38:3776ee18e56f 136 case DUO_FilamentIN:
scherfa2 38:3776ee18e56f 137 if(LS_1 == 0)
scherfa2 38:3776ee18e56f 138 {
scherfa2 38:3776ee18e56f 139 EntryDuoSchneiden1();
scherfa2 38:3776ee18e56f 140 }
scherfa2 38:3776ee18e56f 141
scherfa2 38:3776ee18e56f 142 if(ButtonABBRUCH == true)
scherfa2 38:3776ee18e56f 143 {
scherfa2 38:3776ee18e56f 144 ButtonABBRUCH = false;
scherfa2 38:3776ee18e56f 145 //buttonAbbruch_pressed=false;
scherfa2 38:3776ee18e56f 146 //buttonAbbruch_diable_cb();
scherfa2 38:3776ee18e56f 147 EntryDuoDefault();
scherfa2 38:3776ee18e56f 148 }
scherfa2 38:3776ee18e56f 149
scherfa2 38:3776ee18e56f 150 break;
scherfa2 38:3776ee18e56f 151
scherfa2 38:3776ee18e56f 152 case DUO_Schneiden1:
scherfa2 38:3776ee18e56f 153 if(ButtonABBRUCH == true)
scherfa2 38:3776ee18e56f 154 {
scherfa2 38:3776ee18e56f 155 ButtonABBRUCH = false;
scherfa2 38:3776ee18e56f 156 //buttonAbbruch_pressed=false;
scherfa2 38:3776ee18e56f 157 //buttonAbbruch_diable_cb();
scherfa2 38:3776ee18e56f 158 EntryDuoDefault();
scherfa2 38:3776ee18e56f 159 }
scherfa2 38:3776ee18e56f 160 if(ButtonSTART == true)
scherfa2 38:3776ee18e56f 161 {
scherfa2 38:3776ee18e56f 162 ButtonSTART = false;
scherfa2 38:3776ee18e56f 163 EntryDuoSchneiden2();
scherfa2 38:3776ee18e56f 164
scherfa2 38:3776ee18e56f 165 }
scherfa2 34:0dee9a606869 166
scherfa2 27:23bd03a6a6f6 167 break;
scherfa2 27:23bd03a6a6f6 168
scherfa2 27:23bd03a6a6f6 169 case DUO_Schneiden2:
scherfa2 38:3776ee18e56f 170 if(ButtonABBRUCH == true)
scherfa2 38:3776ee18e56f 171 {
scherfa2 38:3776ee18e56f 172 ButtonABBRUCH = false;
scherfa2 38:3776ee18e56f 173 EntryDuoDefault();
scherfa2 38:3776ee18e56f 174 }
scherfa2 27:23bd03a6a6f6 175 break;
scherfa2 27:23bd03a6a6f6 176
scherfa2 27:23bd03a6a6f6 177 case DUO_Spleissen:
scherfa2 27:23bd03a6a6f6 178 break;
scherfa2 27:23bd03a6a6f6 179
scherfa2 27:23bd03a6a6f6 180 case DUO_Normalbetrieb:
scherfa2 27:23bd03a6a6f6 181 break;
scherfa2 27:23bd03a6a6f6 182
scherfa2 27:23bd03a6a6f6 183 case DUO_Finish:
scherfa2 27:23bd03a6a6f6 184 break;
scherfa2 27:23bd03a6a6f6 185
scherfa2 27:23bd03a6a6f6 186 case DUO_FERTIG:
scherfa2 27:23bd03a6a6f6 187 break;
scherfa2 27:23bd03a6a6f6 188
scherfa2 27:23bd03a6a6f6 189 case DUO_STOERUNG:
scherfa2 27:23bd03a6a6f6 190 break;
scherfa2 27:23bd03a6a6f6 191
scherfa2 27:23bd03a6a6f6 192 }
scherfa2 27:23bd03a6a6f6 193 }