glovebox tester

Dependencies:   mbed

Fork of GloveBoxTester by Kyle Zampaglione

Committer:
kzampag
Date:
Tue Jul 23 15:30:46 2013 +0000
Revision:
3:ae51b59d29b8
Parent:
2:73be4f9f04f9
Child:
4:9d0aa204aa20
Running copy

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kzampag 0:4c49d95a1f05 1 #include "mbed.h"
kzampag 0:4c49d95a1f05 2
kzampag 3:ae51b59d29b8 3
kzampag 0:4c49d95a1f05 4 Serial lcd(p13,p14);
kzampag 0:4c49d95a1f05 5
kzampag 3:ae51b59d29b8 6 DigitalOut pneumatics1(p25);
kzampag 3:ae51b59d29b8 7 DigitalOut pneumatics2(p26);
kzampag 0:4c49d95a1f05 8 DigitalOut box1(p23);
kzampag 0:4c49d95a1f05 9 DigitalOut box2(p22);
kzampag 0:4c49d95a1f05 10 DigitalOut box3(p21);
kzampag 3:ae51b59d29b8 11 DigitalIn pause(p6);
kzampag 3:ae51b59d29b8 12
kzampag 3:ae51b59d29b8 13 void clearLCD()
kzampag 3:ae51b59d29b8 14 {
kzampag 3:ae51b59d29b8 15 lcd.printf("%c%c",0xFE,0x01);
kzampag 3:ae51b59d29b8 16 }
kzampag 3:ae51b59d29b8 17 void setLCDpos(int xpos, int ypos)
kzampag 3:ae51b59d29b8 18 {
kzampag 3:ae51b59d29b8 19 int pos = 0x80;
kzampag 3:ae51b59d29b8 20 switch (xpos) {
kzampag 3:ae51b59d29b8 21 case 1:
kzampag 3:ae51b59d29b8 22 pos +=0;
kzampag 3:ae51b59d29b8 23 break;
kzampag 3:ae51b59d29b8 24 case 2:
kzampag 3:ae51b59d29b8 25 pos +=64;
kzampag 3:ae51b59d29b8 26 break;
kzampag 3:ae51b59d29b8 27 case 3:
kzampag 3:ae51b59d29b8 28 pos +=20;
kzampag 3:ae51b59d29b8 29 break;
kzampag 3:ae51b59d29b8 30 case 4:
kzampag 3:ae51b59d29b8 31 pos +=84;
kzampag 3:ae51b59d29b8 32 break;
kzampag 3:ae51b59d29b8 33 }
kzampag 3:ae51b59d29b8 34 pos += (ypos-1);
kzampag 3:ae51b59d29b8 35 lcd.printf("%c%c",0xFE,pos);
kzampag 3:ae51b59d29b8 36 }
kzampag 3:ae51b59d29b8 37 void setBrightness(int lev)
kzampag 3:ae51b59d29b8 38 {
kzampag 3:ae51b59d29b8 39 lcd.printf("%c%c",0xFE,lev+127);
kzampag 3:ae51b59d29b8 40
kzampag 3:ae51b59d29b8 41 wait(.1);
kzampag 3:ae51b59d29b8 42 }
kzampag 3:ae51b59d29b8 43 //End LCD Setup
kzampag 0:4c49d95a1f05 44
kzampag 0:4c49d95a1f05 45
kzampag 0:4c49d95a1f05 46 int count = 1;
kzampag 3:ae51b59d29b8 47 int cycles = 2500;
kzampag 3:ae51b59d29b8 48 int check = 0;
kzampag 0:4c49d95a1f05 49
kzampag 0:4c49d95a1f05 50
kzampag 0:4c49d95a1f05 51
kzampag 0:4c49d95a1f05 52 int main()
kzampag 0:4c49d95a1f05 53 {
kzampag 3:ae51b59d29b8 54 clearLCD();
kzampag 3:ae51b59d29b8 55 setLCDpos(1,1);
kzampag 3:ae51b59d29b8 56 lcd.printf("Here we go!");
kzampag 3:ae51b59d29b8 57 while(count< cycles) {
kzampag 1:f0943cae3bee 58
kzampag 3:ae51b59d29b8 59 if (pause) {
kzampag 3:ae51b59d29b8 60 check = 1;
kzampag 3:ae51b59d29b8 61 //Trigger solenoid
kzampag 3:ae51b59d29b8 62 box1 = 1;
kzampag 3:ae51b59d29b8 63 box2 = 0;
kzampag 3:ae51b59d29b8 64 box3 = 0;
kzampag 3:ae51b59d29b8 65 wait(.08);
kzampag 3:ae51b59d29b8 66
kzampag 3:ae51b59d29b8 67 box1 = 0;
kzampag 3:ae51b59d29b8 68 box2 = 1;
kzampag 3:ae51b59d29b8 69 wait(.08);
kzampag 3:ae51b59d29b8 70
kzampag 3:ae51b59d29b8 71 box2 = 0;
kzampag 3:ae51b59d29b8 72 box3 = 1;
kzampag 3:ae51b59d29b8 73 wait(.08);
kzampag 0:4c49d95a1f05 74
kzampag 0:4c49d95a1f05 75
kzampag 3:ae51b59d29b8 76 box3 = 0;
kzampag 2:73be4f9f04f9 77
kzampag 2:73be4f9f04f9 78
kzampag 3:ae51b59d29b8 79 //Wait until box completely opens then trigger pneumatics
kzampag 3:ae51b59d29b8 80 wait(.7);
kzampag 3:ae51b59d29b8 81 pneumatics1 = 1;
kzampag 3:ae51b59d29b8 82 pneumatics2 = 0;
kzampag 0:4c49d95a1f05 83
kzampag 3:ae51b59d29b8 84 //Wait until cylinder has finished travel
kzampag 3:ae51b59d29b8 85 wait(.8);
kzampag 3:ae51b59d29b8 86 pneumatics1 = 0;
kzampag 3:ae51b59d29b8 87 pneumatics2 = 1;
kzampag 3:ae51b59d29b8 88 wait(.5);
kzampag 3:ae51b59d29b8 89 pneumatics2 =0;
kzampag 0:4c49d95a1f05 90
kzampag 3:ae51b59d29b8 91 //Wait to full retract then repeat
kzampag 3:ae51b59d29b8 92 wait(5);
kzampag 3:ae51b59d29b8 93
kzampag 3:ae51b59d29b8 94 count++;
kzampag 3:ae51b59d29b8 95 setLCDpos(2,1);
kzampag 3:ae51b59d29b8 96 lcd.printf("%d",count);
kzampag 0:4c49d95a1f05 97
kzampag 3:ae51b59d29b8 98 }
kzampag 3:ae51b59d29b8 99 else {
kzampag 3:ae51b59d29b8 100 check = 0;
kzampag 3:ae51b59d29b8 101 }
kzampag 2:73be4f9f04f9 102
kzampag 3:ae51b59d29b8 103 setLCDpos(3,1);
kzampag 3:ae51b59d29b8 104 lcd.printf("%d", check);
kzampag 3:ae51b59d29b8 105 }
kzampag 0:4c49d95a1f05 106 }