Update
Dependencies: mbed mbed-rtos X_NUCLEO_IHM02A1
ST_DUO.cpp@38:3776ee18e56f, 2019-05-13 (annotated)
- 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?
User | Revision | Line number | New 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 | } |