Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Diff: main.cpp
- Revision:
- 10:18116d979d61
- Parent:
- 8:ec7b7c9ad07e
- Child:
- 11:aac90fca0290
diff -r ec7b7c9ad07e -r 18116d979d61 main.cpp --- a/main.cpp Fri Mar 03 09:39:28 2017 +0000 +++ b/main.cpp Wed May 03 10:12:04 2017 +0000 @@ -8,12 +8,84 @@ AnalogIn Sensor2 (A2); AnalogIn Sensor3 (A3); AnalogIn Sensor4 (A4); - +DigitalOut steppera (D2); +DigitalOut stepperb (D3); +DigitalOut stepperc (D4); +DigitalOut stepperd (D5); +Ticker lidar; +Ticker serial; + +Serial pc(USBTX, USBRX); +int stapmode = 0; +int position = 0; +int pos; + +// poar neemn +// twee poar neemn +// twee tettn in n envelop + +int stepper(int stapmode) +{ + switch (stapmode) { + case 0: + steppera = 1; + stepperb = 0; + stepperc = 1; + stepperd = 0; + pos ++; + break; + case 1: + steppera = 1; + stepperb = 0; + stepperc = 0; + stepperd = 1; + pos ++; + break; + case 2: + steppera = 0; + stepperb = 1; + stepperc = 0; + stepperd = 1; + pos ++; + break; + case 3: + steppera = 0; + stepperb = 1; + stepperc = 1; + stepperd = 0; + pos ++; + break; + ; + } + if (pos > 1000) { //na volledige rotatie ga naar nul + pos = 0; + } + return pos; + +} + +void run_serial() //deze functie word periodiek aangeroepen om de stappenmotor te draaien en de afstand te meten +{ + + pc.printf("%d\n",position); +} + +void run_lidar() //deze functie word periodiek aangeroepen om de stappenmotor te draaien en de afstand te meten +{ + stapmode ++; + if (stapmode > 3) { + stapmode = 0; + } + position = stepper(stapmode); +} + int main() { + lidar.attach(&run_lidar, 0.0001); + serial.attach(&run_serial, 0.2); while(1) { if ( Sensor1 >= 1) { Motor1 = 0 ;