Team Alpha / Mbed 2 deprecated UserIntefaceLCD

Dependencies:   mbed mbed-rtos MLX90614

main.cpp

Committer:
ovidiup13
Date:
2015-03-20
Revision:
0:1e597b0f8b3b
Child:
2:fcde41900fa5

File content as of revision 0:1e597b0f8b3b:

#include "UserInterface.h"
#include "st7565LCD.h"

//define mbed pins
#define _MOSI p11
#define _MISO p12 
#define _SCLK p13
#define _RST p8
#define _A0 p25
#define _CS p26

ST7565 st7565(_MOSI, _SCLK, _CS, _RST, _A0); // mosi, sclk, cs, rst, a0
Serial pc(USBTX, USBRX); //rx, tx

int main(){
    
    Header * header = new Header(70, 12, 'C', &st7565);
    UI * ui = new UI(&st7565);
    
    //create main menu
    Menu * main_menu = new Menu(" Main Menu", &st7565, ui);
    
    //create measure menu
    Menu *measure = new Menu(" Measurement", &st7565, ui);
    measure->addItem(new Menu(" Distance", &st7565, ui));
    measure->addItem(new Menu(" Area", &st7565, ui));
    measure->addItem(new Menu(" Volume", &st7565, ui));
    measure->addItem(new Menu(" Back", main_menu, ui));
    
    //create compass menu
    Menu *compass = new Menu(" Compass", &st7565, ui);
    compass->addItem(new Menu("Back", main_menu, ui));
    
    //create level meter menu
    Menu *lvlm = new Menu(" Level meter", &st7565, ui);
    lvlm->addItem(new Menu(" Back", main_menu, ui));
    
    //settings menu
    Menu *settings = new Menu(" Settings", &st7565, ui);
    Menu *b_settings = new Menu(" Brightness", &st7565, ui);
    Menu *s_settings = new Menu(" Screen Colour", &st7565, ui);
    Menu *m_settings = new Menu(" Measure settings", &st7565, ui);
    settings->addItem(m_settings);
    settings->addItem(s_settings);
    settings->addItem(b_settings);
    settings->addItem(new Menu(" Back", main_menu, ui));
    
    //test menus
    Menu *s1 = new Menu(" s2", &st7565, ui);
    Menu *s2 = new Menu(" s3", &st7565, ui);
    Menu *s3 = new Menu(" s4", &st7565, ui);
    Menu *s4 = new Menu(" s5", &st7565, ui);
    Menu *s5 = new Menu(" s6", &st7565, ui);
    Menu *s7 = new Menu(" s7", &st7565, ui);
    Menu *s8 = new Menu(" s8", &st7565, ui);
    Menu *s9 = new Menu(" s9", &st7565, ui);
    Menu *s10 = new Menu(" s10", &st7565, ui);
    
    //add menus to main menu
    main_menu->addItem(measure);
    main_menu->addItem(compass);
    main_menu->addItem(lvlm);
    main_menu->addItem(settings);
    main_menu->addItem(s1);
    main_menu->addItem(s2);
    main_menu->addItem(s3);
    
    main_menu->addItem(s4);
    main_menu->addItem(s5);
    main_menu->addItem(s7);
    main_menu->addItem(s8);
    main_menu->addItem(s9);
    main_menu->addItem(s10);
    
    ui->setHeader(header);
    ui->setCurrent(main_menu);
    
    ui->init();
    ui->display();
    while(1) {
        char c = pc.getc();
        pc.putc(c);
        ui->update(c);
    }
}