![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
stepper xively
main.cpp
- Committer:
- oscarvzfz
- Date:
- 2015-05-29
- Revision:
- 0:d6210f375481
File content as of revision 0:d6210f375481:
#include "mbed.h" #include "C12832.h" //Definicion de interfaz C12832 lcd(p5, p7, p6, p8, p11); //Definicion del joy DigitalIn up(p15); DigitalIn down(p12); DigitalIn le(p13); DigitalIn ri(p16); DigitalIn center(p14); //Led Status DigitalOut smenu(p25); DigitalOut soper(p24); DigitalOut sfin(p23); //Timer de operacion Timer tt; //Pines de stepper ,tiempo entre pulso y contador BusOut step(p17,p18,p19,p20); float t=0.03; int i=0; int n=0; //Definicion para rangos de ejecicio y contador de seleccion int contr=0; //Definicion de tiempo de rehabilitacion int tre=0; int trem=0; void f() { step=1; wait(t); step=5; wait(t); step=4; wait(t); step=6; wait(t); step=2; wait(t); step=10; wait(t); step=8; wait(t); step=9; wait(t); } void r() { step=9; wait(t); step=8; wait(t); step=10; wait(t); step=2; wait(t); step=6; wait(t); step=4; wait(t); step=5; wait(t); step=1; wait(t); } int main() { while(1) { smenu=0; soper=1; sfin=1; lcd.cls(); lcd.locate(0,1); lcd.printf("M. Pasivo de Manos\n"); if(contr==0){lcd.printf("Rango: Bajo\n");} if(contr==1){lcd.printf("Rango: Medio\n");} if(contr==2){lcd.printf("Rango: Alto\n");} if(ri==1){contr++;} if(le==1){contr--;} if(contr>2){contr=0;} if(contr<0){contr=2;} lcd.printf("Tiempo: %i min",trem); if(up==1){tre=tre+60;trem++;} if(down==1){tre=tre-60;trem--;} if(tre>1200){tre=0;trem=0;} if(tre<0){tre=1200;trem=20;} if(center==1){break;} wait(.1); } tt.start(); if(contr==0){n=30;} if(contr==1){n=50;} if(contr==2){n=80;} smenu=1; soper=0; sfin=1; while(tt.read()<tre) { while(i<n) { r(); i++; } i=0; while(i<n) { f(); i++; } i=0; } smenu=1; soper=1; sfin=0; }