I-O DATA DEV2 / Mbed 2 deprecated game01

Dependencies:   mbed

Committer:
hakusan270
Date:
Sun Nov 08 12:15:44 2020 +0000
Revision:
0:380869d1fc31
Child:
1:6e40bb2ed99c
game teraterm

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hakusan270 0:380869d1fc31 1 #include "mbed.h"
hakusan270 0:380869d1fc31 2
hakusan270 0:380869d1fc31 3 DigitalOut led(LED1);
hakusan270 0:380869d1fc31 4 //InterruptIn event(USER_BUTTON);
hakusan270 0:380869d1fc31 5 DigitalIn button(USER_BUTTON);
hakusan270 0:380869d1fc31 6 RawSerial pc(PA_2, PA_3,115200 );
hakusan270 0:380869d1fc31 7
hakusan270 0:380869d1fc31 8
hakusan270 0:380869d1fc31 9
hakusan270 0:380869d1fc31 10 char bdata[20][20]={
hakusan270 0:380869d1fc31 11 2,2,2,2,2 ,2,2,2,2,2, 2,2,2,2,2 ,2,2,2,2,2,
hakusan270 0:380869d1fc31 12 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 13 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 14 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 15 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 16 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 17 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 18 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 19 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 20 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 21 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 22 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 23 2,0,0,0,0 ,0,0,0,0,1, 1,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 24 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 25 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 26 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 27 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 28 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 29 2,0,0,0,0 ,0,0,0,0,0, 0,0,0,0,0 ,0,0,0,0,2,
hakusan270 0:380869d1fc31 30 2,2,2,2,2 ,2,2,2,2,2, 2,2,2,2,2 ,2,2,2,2,2,
hakusan270 0:380869d1fc31 31 };
hakusan270 0:380869d1fc31 32
hakusan270 0:380869d1fc31 33
hakusan270 0:380869d1fc31 34
hakusan270 0:380869d1fc31 35 void cur_down()
hakusan270 0:380869d1fc31 36 {
hakusan270 0:380869d1fc31 37 pc.printf("\033B");
hakusan270 0:380869d1fc31 38 }
hakusan270 0:380869d1fc31 39
hakusan270 0:380869d1fc31 40 void cur_up()
hakusan270 0:380869d1fc31 41 {
hakusan270 0:380869d1fc31 42 pc.printf("\033A");
hakusan270 0:380869d1fc31 43 }
hakusan270 0:380869d1fc31 44
hakusan270 0:380869d1fc31 45
hakusan270 0:380869d1fc31 46
hakusan270 0:380869d1fc31 47 void cur_left()
hakusan270 0:380869d1fc31 48 {
hakusan270 0:380869d1fc31 49 pc.printf("\033D");
hakusan270 0:380869d1fc31 50 }
hakusan270 0:380869d1fc31 51
hakusan270 0:380869d1fc31 52 void cur_right()
hakusan270 0:380869d1fc31 53 {
hakusan270 0:380869d1fc31 54 pc.printf("\033C");
hakusan270 0:380869d1fc31 55 }
hakusan270 0:380869d1fc31 56
hakusan270 0:380869d1fc31 57 void cur_xy(int x,int y)
hakusan270 0:380869d1fc31 58 {
hakusan270 0:380869d1fc31 59 pc.printf("\033[%d;%dH",y,x);
hakusan270 0:380869d1fc31 60 }
hakusan270 0:380869d1fc31 61
hakusan270 0:380869d1fc31 62 void clear_all()
hakusan270 0:380869d1fc31 63 {
hakusan270 0:380869d1fc31 64 pc.printf("\033[2J\033[6m");//clear , under line
hakusan270 0:380869d1fc31 65 cur_xy(0,0);
hakusan270 0:380869d1fc31 66 }
hakusan270 0:380869d1fc31 67
hakusan270 0:380869d1fc31 68 void init_bd()
hakusan270 0:380869d1fc31 69 {
hakusan270 0:380869d1fc31 70 int x;
hakusan270 0:380869d1fc31 71 int y;
hakusan270 0:380869d1fc31 72 pc.printf("\033[2J");//clear
hakusan270 0:380869d1fc31 73 for(y=0;y<20;y++) {
hakusan270 0:380869d1fc31 74 cur_xy(1,y+1);
hakusan270 0:380869d1fc31 75 for(x=0;x<20;x++) {
hakusan270 0:380869d1fc31 76 if (bdata[y][x]==2) pc.printf("H");
hakusan270 0:380869d1fc31 77 else if (bdata[y][x]==1) pc.printf("@");
hakusan270 0:380869d1fc31 78 else pc.printf(" ");
hakusan270 0:380869d1fc31 79 }
hakusan270 0:380869d1fc31 80 }
hakusan270 0:380869d1fc31 81 }
hakusan270 0:380869d1fc31 82
hakusan270 0:380869d1fc31 83
hakusan270 0:380869d1fc31 84 int main()
hakusan270 0:380869d1fc31 85 {
hakusan270 0:380869d1fc31 86 int i;
hakusan270 0:380869d1fc31 87 int x;
hakusan270 0:380869d1fc31 88 int y;
hakusan270 0:380869d1fc31 89 int dx=1;
hakusan270 0:380869d1fc31 90 int dy=1;
hakusan270 0:380869d1fc31 91
hakusan270 0:380869d1fc31 92 clear_all();
hakusan270 0:380869d1fc31 93
hakusan270 0:380869d1fc31 94 pc.printf("\nStart example\n");
hakusan270 0:380869d1fc31 95 init_bd();
hakusan270 0:380869d1fc31 96 x=2;
hakusan270 0:380869d1fc31 97 y=0;
hakusan270 0:380869d1fc31 98 while(1) {
hakusan270 0:380869d1fc31 99 if (y>=19) dy=-1;
hakusan270 0:380869d1fc31 100 if (x>=19) dx=-1;
hakusan270 0:380869d1fc31 101 if (y<=0) dy=1;
hakusan270 0:380869d1fc31 102 if (x<=0) dx=1;
hakusan270 0:380869d1fc31 103 x=x+dx;
hakusan270 0:380869d1fc31 104 y=y+dy;
hakusan270 0:380869d1fc31 105 cur_xy(x+1,y+1);
hakusan270 0:380869d1fc31 106 if (bdata[y][x]==1) {
hakusan270 0:380869d1fc31 107 bdata[y][x]=0;
hakusan270 0:380869d1fc31 108 pc.printf(" ");
hakusan270 0:380869d1fc31 109 pc.printf("\007");
hakusan270 0:380869d1fc31 110 }
hakusan270 0:380869d1fc31 111 wait(0.1f);
hakusan270 0:380869d1fc31 112 if (button==0) dx = -dx;
hakusan270 0:380869d1fc31 113
hakusan270 0:380869d1fc31 114 }
hakusan270 0:380869d1fc31 115 }
hakusan270 0:380869d1fc31 116
hakusan270 0:380869d1fc31 117