Projet

Dependencies:   LCD_DISCO_F746NG BSP_DISCO_F746NG

ecran.cpp

Committer:
alixhavr10
Date:
2021-05-27
Revision:
19:1fadbca5065c

File content as of revision 19:1fadbca5065c:

//toutes les fonctions qui permettent de faire affichage plus récupération de la valeur 
#include "mbed.h"
#include "stm32746g_discovery_lcd.h"
#include "stm32746g_discovery_ts.h"
#include "LCD_DISCO_F746NG.h"
#include <stdio.h>


void screen_init(){ //ecran fonctionne ou non
    //BSP_LCD_SetFont(&Font20);
    BSP_LCD_Init(); // Initializes the LCD
    BSP_LCD_Init();
    BSP_LCD_LayerDefaultInit(LTDC_ACTIVE_LAYER, LCD_FB_START_ADDRESS);
    BSP_LCD_SelectLayer(LTDC_ACTIVE_LAYER);

    BSP_LCD_SetLayerVisible(1, ENABLE); // Sets a LCD Layer visible
    BSP_LCD_Clear(LCD_COLOR_BLACK);
    BSP_LCD_DisplayOn();
    
    uint8_t status = BSP_TS_Init(BSP_LCD_GetXSize(), BSP_LCD_GetYSize()); //ecran tactile et autre fonctionnalités
    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 *)"BLABLA1",CENTER_MODE);
        BSP_LCD_DisplayStringAt(0, LINE(6), (uint8_t *)"BLABLA2", 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 *)"BLABLA3",CENTER_MODE);
        BSP_LCD_DisplayStringAt(0, LINE(6), (uint8_t *)"Blabla2", CENTER_MODE);
        }
}

LCD_DISCO_F746NG lcd;

AnalogIn mesure_analogique (PC_0 ); // initialisation de la pin qui recoit le signal 

//void showIntegerScreen(int x, int nbline, int offset, Text_AlignModeTypdef mode){
  //  char t[400];
    //sprintf((char *)t, "x=%d", x);
   // BSP_LCD_DisplayStringAt(offset,LINE(nbline),(uint8_t*)"     ",mode); //clears the line.
  //  BSP_LCD_DisplayStringAt(offset,LINE(nbline),(uint8_t*)&t,mode);
  //  }



//fonction qui prend les différents points 
void affiche_ecran(){
   int mesure;
   int tension;
   mesure = mesure_analogique.read() ; // Convertit et lit la tension d'entrée analogique (valeur entre 0.0 et 1.0)
   tension =mesure*3.3; //met la valeur en V

    int i=0;
    int Y[340];
    while(1){
        for (i=0; i <240 ; i++){
            Y[i]= (tension);
            BSP_LCD_DrawPixel(i,Y[i],0);
            }
        wait_ns(0.5);
    }
}