Projet

Dependencies:   LCD_DISCO_F746NG BSP_DISCO_F746NG

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