test avoid bulled game

Dependencies:   C12832_lcd LCD_fonts mbed mbed-rtos

main.cpp

Committer:
kaku_jyoko
Date:
2016-12-02
Revision:
5:651879f4f047
Parent:
4:0fe59e58def9
Child:
6:e63641e13374

File content as of revision 5:651879f4f047:

#include "mbed.h"
#include "C12832_lcd.h"
#include "Arial_9.h"
#include "Small_7.h"
#include "graphics.h"
#include "models.h"
#include "rtos.h"
#include "point.h"

C12832_LCD lcd;

// down: p12, left: p13, center: p14, up: p15, right: p16
InterruptIn button(p14);
DigitalOut led1(LED1);

Mutex jump_mtx;
Mutex update_mtx;
int jump_flag = 0;

//int main(){
//    lcd.cls();
//    lcd.set_font((unsigned char*) Arial_9);
//    while(1){
//        lcd.print_bm(bitmPerson,2,32-6);
//        lcd.copy_to_lcd();
//        wait(0.5);
//        lcd.print_bm(bitmPersonB,2,32-6);
//        lcd.copy_to_lcd();
//        wait(0.5);
//    }
//}

void a(){
    jump_flag = !jump_flag;
}

void receive(void const *argument){
    while(true){
        if(button){
            jump_mtx.lock();
            button.rise(&a);
            jump_mtx.unlock();
            printf("flag %d\n",jump_flag);
            Thread::wait(0.1);
        }
    }
}



int main(){
    Person h();
    point p;
    printf("hello\n");
    Thread receive_th(receive);
    while(true){
        update_mtx.lock();
        p = h.update();
        update_mtx.unlock();
        lcd.print_bm(bitmPerson,p.x,p.y);
        lcd.copy_to_lcd();
        wait(0.5);
        lcd.print_bm(bitmPersonB,p.x,p.y);
        lcd.copy_to_lcd();
        wait(0.5);
    }
}