final ver

Dependencies:   mbed Servo mbed-rtos 4DGL-uLCD-SE

Committer:
artinmay
Date:
Thu Apr 25 01:26:32 2019 +0000
Revision:
2:91aa75cdc631
Parent:
1:40d2fd0b99e6
Child:
3:c80f73ca9874
stable ver.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
simon 1:40d2fd0b99e6 1 #include "mbed.h"
simon 1:40d2fd0b99e6 2 #include "Servo.h"
artinmay 2:91aa75cdc631 3 #include "uLCD_4DGL.h"
simon 1:40d2fd0b99e6 4
artinmay 2:91aa75cdc631 5 Servo myservobody(p21);
artinmay 2:91aa75cdc631 6 Servo myservopen(p22);
artinmay 2:91aa75cdc631 7 Servo myservohead(p23);
artinmay 2:91aa75cdc631 8 float min_move = 0.02;
artinmay 2:91aa75cdc631 9 int max_pixel = 50;
artinmay 2:91aa75cdc631 10 float min_wait = 0.04;
artinmay 2:91aa75cdc631 11 float end_wait = 0.7;
artinmay 2:91aa75cdc631 12 float pen_wait = 0.1;
artinmay 2:91aa75cdc631 13 float pen_down = 1;
artinmay 2:91aa75cdc631 14 float pen_up = 0.7;
artinmay 2:91aa75cdc631 15 uLCD_4DGL uLCD(p9,p10,p11);
artinmay 2:91aa75cdc631 16 char printData[50][50]=
artinmay 2:91aa75cdc631 17
artinmay 2:91aa75cdc631 18 {{
artinmay 2:91aa75cdc631 19 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 20 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 21 0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 22 0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 23 0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 24 0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 25 0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 26 0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 27 0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 28 0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 29 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 30 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 31 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 32 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 33 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 34 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 35 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 36 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 37 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 38 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 39 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 40 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0},{
artinmay 2:91aa75cdc631 41 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0},{
artinmay 2:91aa75cdc631 42 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0},{
artinmay 2:91aa75cdc631 43 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1,0,0},{
artinmay 2:91aa75cdc631 44 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1,0,0},{
artinmay 2:91aa75cdc631 45 0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1,0,0},{
artinmay 2:91aa75cdc631 46 0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 47 0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 48 0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 49 0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 50 0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 51 0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 52 0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 53 0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 54 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 55 0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 56 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 57 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 58 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 59 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 60 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 61 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 62 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 63 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 64 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 65 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 66 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 67 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0},{
artinmay 2:91aa75cdc631 68 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0}}
artinmay 2:91aa75cdc631 69 ;
artinmay 2:91aa75cdc631 70
artinmay 2:91aa75cdc631 71 int temp = 0;
simon 1:40d2fd0b99e6 72
artinmay 2:91aa75cdc631 73 int main()
artinmay 2:91aa75cdc631 74 {
artinmay 2:91aa75cdc631 75 uLCD.baudrate(3000000);
artinmay 2:91aa75cdc631 76 while(myservobody> 0 ||myservohead > 0){
artinmay 2:91aa75cdc631 77 myservobody = myservobody - min_move;
artinmay 2:91aa75cdc631 78 myservohead = myservohead - min_move;
artinmay 2:91aa75cdc631 79 }
artinmay 2:91aa75cdc631 80 myservopen = pen_up;
artinmay 2:91aa75cdc631 81 myservohead = 0;
artinmay 2:91aa75cdc631 82 myservobody = 0;
artinmay 2:91aa75cdc631 83
artinmay 2:91aa75cdc631 84 /*
artinmay 2:91aa75cdc631 85 for(int i=0; i<max_pixel; i++) {
artinmay 2:91aa75cdc631 86 for(int j=0; j<max_pixel; j++) {
artinmay 2:91aa75cdc631 87 printData[i][j] = 0;
artinmay 2:91aa75cdc631 88 }
artinmay 2:91aa75cdc631 89 }
artinmay 2:91aa75cdc631 90
artinmay 2:91aa75cdc631 91 for(int i=0; i<max_pixel; i++){
artinmay 2:91aa75cdc631 92 printData[i][0] = 1;
artinmay 2:91aa75cdc631 93 printData[i][max_pixel-1] = 1;
artinmay 2:91aa75cdc631 94 for(int j=0; j<max_pixel; j++) {
artinmay 2:91aa75cdc631 95 printData[0][j] = 1;
artinmay 2:91aa75cdc631 96 printData[max_pixel-1][j] = 1;
artinmay 2:91aa75cdc631 97 }
artinmay 2:91aa75cdc631 98 }
artinmay 2:91aa75cdc631 99 */
artinmay 2:91aa75cdc631 100
artinmay 2:91aa75cdc631 101 /*
artinmay 2:91aa75cdc631 102 code for random dots
artinmay 2:91aa75cdc631 103 for(int i=0; i<max_pixel; i++) {
artinmay 2:91aa75cdc631 104 for(int j=0; j<max_pixel; j++) {
artinmay 2:91aa75cdc631 105 printData[i][j] = rand() % 2;
artinmay 2:91aa75cdc631 106 }
artinmay 2:91aa75cdc631 107 }
artinmay 2:91aa75cdc631 108 */
artinmay 2:91aa75cdc631 109 /*
artinmay 2:91aa75cdc631 110 while(myservobody>0 || myservopen>0 || myservohead>0){
artinmay 2:91aa75cdc631 111 if(myservobody>0)
artinmay 2:91aa75cdc631 112 myservobody = myservobody - min_move;
artinmay 2:91aa75cdc631 113 if(myservopen>0)
artinmay 2:91aa75cdc631 114 myservopen = myservopen - min_move;
artinmay 2:91aa75cdc631 115 if(myservohead>0)
artinmay 2:91aa75cdc631 116 myservohead = myservohead - min_move;
artinmay 2:91aa75cdc631 117 wait(min_wait);
artinmay 2:91aa75cdc631 118 }
artinmay 2:91aa75cdc631 119 */
artinmay 2:91aa75cdc631 120
artinmay 2:91aa75cdc631 121 for(float i=0; i<=1.0; i+= min_move) {
artinmay 2:91aa75cdc631 122 for(float j=0; j<=1.0; j+= min_move) {
artinmay 2:91aa75cdc631 123 if(j==0){
artinmay 2:91aa75cdc631 124 while(myservohead > j){
artinmay 2:91aa75cdc631 125 myservohead = myservohead - min_move;
artinmay 2:91aa75cdc631 126 wait(min_wait);
artinmay 2:91aa75cdc631 127 }
artinmay 2:91aa75cdc631 128 }
artinmay 2:91aa75cdc631 129 myservobody = i;
artinmay 2:91aa75cdc631 130 myservohead = j;
artinmay 2:91aa75cdc631 131 uLCD.cls();
artinmay 2:91aa75cdc631 132 uLCD.printf("row:%d\ncol:%d",(int)(i/min_move),(int)(j/min_move));
artinmay 2:91aa75cdc631 133 wait(min_wait);
artinmay 2:91aa75cdc631 134 temp = printData[(int)(i/min_move)][(int)(abs(j - 1.0)/min_move)];
artinmay 2:91aa75cdc631 135 if(temp == 1){
artinmay 2:91aa75cdc631 136 myservopen = pen_down;
artinmay 2:91aa75cdc631 137 wait(pen_wait);
artinmay 2:91aa75cdc631 138 myservopen = pen_up;
artinmay 2:91aa75cdc631 139 wait(pen_wait);
artinmay 2:91aa75cdc631 140 }
artinmay 2:91aa75cdc631 141 }
simon 1:40d2fd0b99e6 142 }
simon 1:40d2fd0b99e6 143 }