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.
Fork of Stepper_4 by
main.cpp
00001 /* 00002 ############################################ 00003 ## sMotor v0.1 Test Program ## 00004 ## created by Samuel Matildes ## 00005 ############################################ 00006 ---- sam.naeec@gmail.com ----- 00007 This library was made for 4-Phase Stepper Motors 00008 I don't take any resposability for the damage caused to your equipment. 00009 00010 */ 00011 00012 #include "mbed.h" 00013 #include "sMotor.h" 00014 00015 00016 Serial pc(USBTX, USBRX); 00017 sMotor motor(p9, p10, p11, p12); // creates new stepper motor: IN1, IN2, IN3, IN4 00018 DigitalOut myled1(LED1); 00019 DigitalOut myled2(LED2); 00020 DigitalOut myled3(LED3); 00021 DigitalOut myled4(LED4); 00022 int step_speed = 1200 ; // set default motor speed 00023 int numstep = 512 ; // defines full turn of 360 degree 00024 //you might want to calibrate this value according to your motor 00025 00026 00027 int main() 00028 { 00029 00030 //Credits 00031 printf("4 Phase Stepper Motor v0.1 - Test Program\r\n"); 00032 printf("developed by Samuel Matildes\r\n"); 00033 printf("\n\r"); 00034 00035 // Screen Menu 00036 printf("Default Speed: %d\n\r",step_speed); 00037 printf("1- 360 degree clockwise step\n\r"); 00038 printf("2- 360 degree anticlockwise step\n\r"); 00039 printf("3- 180 degree clockwise step\n\r"); 00040 printf("4- 180 degree anticlockwise step\n\r"); 00041 printf("5- Change Speed\n\r"); 00042 00043 myled1=1; 00044 wait(0.2); 00045 myled1=0; 00046 wait(0.2); 00047 00048 while (1) { 00049 00050 00051 if (pc.readable()) { // checks for serial 00052 printf("ask for input"); 00053 if (pc.getc()=='1'){ 00054 motor.step(numstep,0,step_speed); // number of steps, direction, speed 00055 myled1=1;myled2=0;myled3=0;myled4=0; 00056 } 00057 if (pc.getc()=='2'){ 00058 motor.step(numstep,1,step_speed); 00059 myled1=0;myled2=1;myled3=0;myled4=0; 00060 } 00061 if (pc.getc()=='3'){ 00062 motor.step(numstep/2,0,step_speed); 00063 myled1=0;myled2=0;myled3=1;myled4=0; 00064 } 00065 if (pc.getc()=='4'){ 00066 motor.step(numstep/2,1,step_speed); 00067 myled1=0;myled2=0;myled3=0;myled4=1; 00068 } 00069 if (pc.getc()=='5') { 00070 printf("Current Speed: %d\n\r", step_speed); 00071 printf("New speed: \n\r"); 00072 pc.scanf("%d",&step_speed); // sets new speed 00073 } 00074 } 00075 } 00076 }
Generated on Wed Jul 13 2022 20:00:17 by
1.7.2
