;

Dependencies:   BSP_DISCO_F746NG

main.cpp

Committer:
louisboisaubert
Date:
2021-06-22
Revision:
6:c8648bfc56bb

File content as of revision 6:c8648bfc56bb:


#include "mbed.h"
#include "stm32746g_discovery_lcd.h"
#include "stm32746g_discovery_ts.h"
#include "GroveGPS.h"
GroveGPS gps;
PwmOut PWM1(PB_4);
PwmOut PWM2(PH_6);
PwmOut PWM3(PI_2);
PwmOut PWM4(PA_15);
PwmOut PWM5(PA_8);
PwmOut PWM6(PB_15);
PwmOut mypwm7(PA_0);
PwmOut mypwm8(PF_9);
PwmOut mypwm9(PF_8);
int main()
{
     char buffer[100];
     char buffer2[100];
     char buffer3[100];
    TS_StateTypeDef TS_State;
    uint16_t x, y;
    uint8_t text[30];
    uint8_t status;
    uint8_t idx;
    uint8_t cleared = 0;
    uint8_t prev_nb_touches = 0;
    bool  heure;
    bool latitude;
    bool longitude;
    
    //initialisation LCD
    BSP_LCD_Init();
    BSP_LCD_LayerDefaultInit(LTDC_ACTIVE_LAYER, LCD_FB_START_ADDRESS);
    BSP_LCD_SelectLayer(LTDC_ACTIVE_LAYER);

    BSP_LCD_DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN DEMO", CENTER_MODE);
    HAL_Delay(1000);

    status = BSP_TS_Init(BSP_LCD_GetXSize(), BSP_LCD_GetYSize());
    if (status != TS_OK) {
        BSP_LCD_Clear(LCD_COLOR_RED);
        BSP_LCD_SetBackColor(LCD_COLOR_RED);
        BSP_LCD_SetTextColor(LCD_COLOR_WHITE);
        BSP_LCD_DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN INIT FAIL", CENTER_MODE);
    } else {
        BSP_LCD_Clear(LCD_COLOR_GREEN);
        BSP_LCD_SetBackColor(LCD_COLOR_GREEN);
        BSP_LCD_SetTextColor(LCD_COLOR_WHITE);
        BSP_LCD_DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN INIT OK", CENTER_MODE);
    }

    HAL_Delay(1000);
    BSP_LCD_SetFont(&Font12);
    BSP_LCD_SetBackColor(LCD_COLOR_BLUE);
    BSP_LCD_SetTextColor(LCD_COLOR_WHITE);
   
    while(1) {
        /*
        BSP_TS_GetState(&TS_State);
        if (TS_State.touchDetected) {
            // Clear lines corresponding to old touches coordinates
            if (TS_State.touchDetected < prev_nb_touches) {
                for (idx = (TS_State.touchDetected + 1); idx <= 5; idx++) {
                    BSP_LCD_ClearStringLine(idx);
                }
            }
        */  
        // récupération de l'heure
        heure = gps.getTimestamp(buffer);
        BSP_LCD_Clear(LCD_COLOR_BLUE);
        BSP_LCD_SetTextColor(LCD_COLOR_WHITE);
        BSP_LCD_DisplayStringAt(0, LINE(10), (uint8_t *)&buffer, CENTER_MODE);
        /* Récupération de la latitude
        latitude = gps.getLatitude(buffer2);
        BSP_LCD_Clear(LCD_COLOR_BLUE);
        BSP_LCD_SetTextColor(LCD_COLOR_WHITE);
        BSP_LCD_DisplayStringAt(0, LINE(12), (uint8_t *)&buffer2, CENTER_MODE);
         Récupération de la longitude
        longitude = gps.getLongitude(buffer3);
        BSP_LCD_Clear(LCD_COLOR_BLUE);
        BSP_LCD_SetTextColor(LCD_COLOR_WHITE);
        BSP_LCD_DisplayStringAt(0, LINE(14), (uint8_t *)&buffer3, CENTER_MODE); 
       */ 
         PWM2 = 0;
        PWM3 = 0.5;
        PWM4 =0;
        PWM5 = 0;
        PWM6 = 0.5;
        PWM3.period_ms(10);
           HAL_Delay(500); 
    }
}