Procedura di setup TITA32

Dependencies:   BSP_DISCO_F746NG BUTTON_GROUP LCD_DISCO_F746NG TS_DISCO_F746NG mbed

Fork of F746_ButtonGroup_Demo by 不韋 呂

main.cpp

Committer:
MikamiUitOpen
Date:
2015-12-05
Revision:
2:b88f2ec606d3
Parent:
1:83147f0d63ea
Child:
3:edc98882d63a

File content as of revision 2:b88f2ec606d3:

//---------------------------------------------------------------
//  Demo program of Button class and ButtonGroup class
//
//  2015/12/05, Copyright (c) 2015 MIKAMI, Naoki
//---------------------------------------------------------------

#include "button_group.hpp"

using namespace Mikami;

TS_DISCO_F746NG ts_;
LCD_DISCO_F746NG lcd_;

int main()
{
    const int Y0 = 5;
    const int X1 = 50;
    const int Y1 = 200;

    uint32_t backColor = 0xFF006A6C;            // teal green
    uint32_t inActive = backColor & 0xE0FFFFFF; // color for inactive button
    lcd_.Clear(backColor);
       
    const int NUMBER_BUTTONS = 4;
    const string STR[NUMBER_BUTTONS] = {"Button1", "Button2", "Button3", "Button4"};
    ButtonGroup bGroup(lcd_, ts_, 10, Y0, 66, 40,
                       LCD_COLOR_BLUE, backColor, NUMBER_BUTTONS, STR, 5, 5, 3);
                       
    Button reset(lcd_, ts_, 410, Y0, 60, 40,
                 LCD_COLOR_BLUE, backColor, "Reset", Font12);
    reset.Draw(inActive, LCD_COLOR_GRAY);

    lcd_.SetTextColor(LCD_COLOR_WHITE);
    while (true)
    {
        int num;
        if (bGroup.GetTouchedNumber(num, LCD_COLOR_DARKBLUE))
        {
            char str[20];
            lcd_.SetFont(&Font16);
            lcd_.SetTextColor(LCD_COLOR_WHITE);
            sprintf(str, "Button%d pressed", num+1);
            lcd_.DisplayStringAt(X1, Y1, (uint8_t *)str, LEFT_MODE);
            
            reset.Redraw();
        }
        
        if (reset.Touched())
        {
            bGroup.Redraw(num);
            reset.Draw(inActive, LCD_COLOR_GRAY);
            lcd_.SetFont(&Font16);
            lcd_.DisplayStringAt(X1, Y1, (uint8_t *)"               ", LEFT_MODE);
        }
        wait(0.5f);
    }
}