Projet
Dependencies: LCD_DISCO_F746NG BSP_DISCO_F746NG
Diff: ecran.cpp
- Revision:
- 19:1fadbca5065c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ecran.cpp Thu May 27 06:39:34 2021 +0000 @@ -0,0 +1,66 @@ +//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); + } +}