
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); } }