Fin de projet

Dependencies:   mbed BSP_DISCO_F746NG

Committer:
valentin__
Date:
Sun Nov 15 16:17:43 2020 +0000
Revision:
5:50ae659e47c1
Parent:
4:8f6e0ef3fffe
Fin

Who changed what in which revision?

UserRevisionLine numberNew contents of line
valentin__ 1:80d2a1719d10 1 #include "fonctions.h"
valentin__ 3:92661d767dd1 2
valentin__ 5:50ae659e47c1 3 void Affiche_Ingredients(int TAB_ingredients[])
valentin__ 5:50ae659e47c1 4 {
valentin__ 4:8f6e0ef3fffe 5 int i=0;
valentin__ 4:8f6e0ef3fffe 6 BSP_LCD_SetTextColor(LCD_COLOR_BLACK);
valentin__ 5:50ae659e47c1 7 for(i=0; i<3; i++) {
valentin__ 4:8f6e0ef3fffe 8 char Text[1];
valentin__ 4:8f6e0ef3fffe 9 sprintf((char*)&Text, "%d", TAB_ingredients[i]);
valentin__ 4:8f6e0ef3fffe 10 BSP_LCD_DisplayStringAt(162*i,37, (uint8_t *)&Text, LEFT_MODE);
valentin__ 5:50ae659e47c1 11 }
valentin__ 5:50ae659e47c1 12 for(i=3; i<6; i++) {
valentin__ 4:8f6e0ef3fffe 13 char Text2[1];
valentin__ 4:8f6e0ef3fffe 14 sprintf((char*)&Text2, "%d", TAB_ingredients[i]);
valentin__ 4:8f6e0ef3fffe 15 BSP_LCD_DisplayStringAt(162*i,149,(uint8_t *)&Text2, LEFT_MODE);
valentin__ 4:8f6e0ef3fffe 16 }
valentin__ 5:50ae659e47c1 17 }
valentin__ 1:80d2a1719d10 18
valentin__ 1:80d2a1719d10 19
valentin__ 5:50ae659e47c1 20 bool Bouton(uint16_t Xpos, uint16_t Ypos, uint16_t Xdim, uint16_t Ydim,uint16_t x,uint16_t y)
valentin__ 5:50ae659e47c1 21 {
valentin__ 5:50ae659e47c1 22 if((x >= Xpos) && (x<= Xpos+Xdim ) && (y <= Ypos + Ydim) && (y>= Ypos )) {
valentin__ 5:50ae659e47c1 23 return true;
valentin__ 2:3070bad3789b 24 }
valentin__ 5:50ae659e47c1 25 return false;
valentin__ 1:80d2a1719d10 26 }
valentin__ 1:80d2a1719d10 27
valentin__ 1:80d2a1719d10 28
valentin__ 1:80d2a1719d10 29
valentin__ 5:50ae659e47c1 30 void AfficheImage(uint32_t Xpos, uint32_t Ypos, uint32_t Largeur, uint32_t Hauteur, const unsigned long *img)
valentin__ 5:50ae659e47c1 31 {
valentin__ 5:50ae659e47c1 32
valentin__ 5:50ae659e47c1 33 uint8_t i=0;
valentin__ 5:50ae659e47c1 34 uint8_t j=0;
valentin__ 5:50ae659e47c1 35 for (i=0; i<=Hauteur; i++) {
valentin__ 5:50ae659e47c1 36 for (j=0; j<= Largeur; j++) {
valentin__ 5:50ae659e47c1 37
valentin__ 5:50ae659e47c1 38 BSP_LCD_DrawPixel(Xpos + j, Ypos + i, img[j + i*Largeur] + 0xFF000000); //j + i*Largeur
valentin__ 5:50ae659e47c1 39 }
valentin__ 5:50ae659e47c1 40 }
valentin__ 5:50ae659e47c1 41 }
valentin__ 5:50ae659e47c1 42
valentin__ 5:50ae659e47c1 43 void Page_Recette(int TAB_ingredients[])
valentin__ 5:50ae659e47c1 44 {
valentin__ 5:50ae659e47c1 45 BSP_LCD_Clear(LCD_COLOR_WHITE);
valentin__ 5:50ae659e47c1 46 BSP_LCD_SetFont(&Font12);
valentin__ 5:50ae659e47c1 47 AfficheImage(0,0,160,31,image10);
valentin__ 5:50ae659e47c1 48 AfficheImage(160,0,160,31,image11);
valentin__ 5:50ae659e47c1 49 AfficheImage(320,0,160,31,image10);
valentin__ 5:50ae659e47c1 50 if((TAB_ingredients[0] >= 1) && (TAB_ingredients[1] >= 2) && (TAB_ingredients[3] >= 1) && (TAB_ingredients[5] >= 1)){
valentin__ 5:50ae659e47c1 51 AfficheImage(150,32,163,27,imageCarbo);
valentin__ 5:50ae659e47c1 52 BSP_LCD_DisplayStringAt(0,80, (uint8_t *)"1/ Faire cuire les pates dans une grande casserole d'eau salee.", LEFT_MODE);
valentin__ 5:50ae659e47c1 53 BSP_LCD_DisplayStringAt(0,90, (uint8_t *)"2/ Pendant ce temps, casser les oeufs dans un recipient, melanger.", LEFT_MODE);
valentin__ 5:50ae659e47c1 54 BSP_LCD_DisplayStringAt(0,100, (uint8_t *)"3/ Faire cuire les lardons.", LEFT_MODE);
valentin__ 5:50ae659e47c1 55 BSP_LCD_DisplayStringAt(0,110, (uint8_t *)"4/ Une fois les pates cuites, les egoutter, mais pas trop", LEFT_MODE);
valentin__ 5:50ae659e47c1 56 BSP_LCD_DisplayStringAt(0,120, (uint8_t *)"5/ Ajouter les lardons, avec leur jus de cuisson, porter a feu doux.", LEFT_MODE);
valentin__ 5:50ae659e47c1 57 BSP_LCD_DisplayStringAt(0,130, (uint8_t *)"6/ Ajouter la preparation (oeuf, parmesan) en remuant sans arret.", LEFT_MODE);
valentin__ 5:50ae659e47c1 58 BSP_LCD_DisplayStringAt(0,140, (uint8_t *)"7/ Eteindre le feu avant que la preparation devienne trop seche !", LEFT_MODE);
valentin__ 5:50ae659e47c1 59 BSP_LCD_DisplayStringAt(0,150, (uint8_t *)"8/ Servir chaud, avec un peu de parmesan rape en plus.", LEFT_MODE);
valentin__ 5:50ae659e47c1 60 AfficheImage(150,170,190,99,Carbo);
valentin__ 5:50ae659e47c1 61 }
valentin__ 5:50ae659e47c1 62 else if((TAB_ingredients[2] >= 2) && (TAB_ingredients[4] >= 1) && (TAB_ingredients[0] >= 1)){
valentin__ 5:50ae659e47c1 63 AfficheImage(150,32,196,30,imageBolo);
valentin__ 5:50ae659e47c1 64 BSP_LCD_DisplayStringAt(0,80, (uint8_t *)"1/ Faire cuire le boeuf dans une casserole assez grande.", LEFT_MODE);
valentin__ 5:50ae659e47c1 65 BSP_LCD_DisplayStringAt(0,90, (uint8_t *)"2/ Remuez de facon a ce que la viande ne fasse pas de gros paquets.", LEFT_MODE);
valentin__ 5:50ae659e47c1 66 BSP_LCD_DisplayStringAt(0,100, (uint8_t *)"3/ Ajoutez les tomates prealablement coupees assez grossierement.", LEFT_MODE);
valentin__ 5:50ae659e47c1 67 BSP_LCD_DisplayStringAt(0,110, (uint8_t *)"4/ Laissez mijoter a couvert 1h", LEFT_MODE);
valentin__ 5:50ae659e47c1 68 BSP_LCD_DisplayStringAt(0,120, (uint8_t *)"5/ Faites cuire les spaghettis, puis mettez-les dans un plat.", LEFT_MODE);
valentin__ 5:50ae659e47c1 69 BSP_LCD_DisplayStringAt(0,130, (uint8_t *)"6/ Ajoutez la sauce bolognaise.", LEFT_MODE);
valentin__ 5:50ae659e47c1 70 AfficheImage(150,150,190,99,Bolo);
valentin__ 5:50ae659e47c1 71 }
valentin__ 5:50ae659e47c1 72 else{
valentin__ 5:50ae659e47c1 73 BSP_LCD_SetFont(&Font20);
valentin__ 5:50ae659e47c1 74
valentin__ 5:50ae659e47c1 75 BSP_LCD_DisplayStringAt(20,40, (uint8_t *)"Aucune recette disponible...", LEFT_MODE);
valentin__ 5:50ae659e47c1 76 AfficheImage(20,80,160,160,imageENSEA);
valentin__ 5:50ae659e47c1 77 AfficheImage(190,170,200,49,imageMarmiton);
valentin__ 5:50ae659e47c1 78 }
valentin__ 5:50ae659e47c1 79 BSP_LCD_SetFont(&Font20);
valentin__ 5:50ae659e47c1 80 }
valentin__ 1:80d2a1719d10 81
valentin__ 4:8f6e0ef3fffe 82 void Page_Ingredients()
valentin__ 1:80d2a1719d10 83 {
valentin__ 3:92661d767dd1 84 AfficheImage(0,0,160,90,image1);
valentin__ 3:92661d767dd1 85 AfficheImage(160,0,160,90,image2);
valentin__ 3:92661d767dd1 86 AfficheImage(320,0,160,90,image3);
valentin__ 5:50ae659e47c1 87
valentin__ 3:92661d767dd1 88 AfficheImage(0,90,160,90,image4);
valentin__ 3:92661d767dd1 89 AfficheImage(160,90,160,90,image5);
valentin__ 3:92661d767dd1 90 AfficheImage(320,90,160,90,image6);
valentin__ 5:50ae659e47c1 91
valentin__ 3:92661d767dd1 92 AfficheImage(0,180,160,90,image7);
valentin__ 3:92661d767dd1 93 AfficheImage(160,180,160,90,image8);
valentin__ 3:92661d767dd1 94 AfficheImage(320,180,160,90,image9);
valentin__ 5:50ae659e47c1 95
valentin__ 5:50ae659e47c1 96
valentin__ 1:80d2a1719d10 97 }
valentin__ 1:80d2a1719d10 98
valentin__ 5:50ae659e47c1 99 void AfficherPage(int NumeroPage, int TAB_ingredients[])
valentin__ 1:80d2a1719d10 100 {
valentin__ 1:80d2a1719d10 101
valentin__ 5:50ae659e47c1 102 if(NumeroPage==0) {
valentin__ 4:8f6e0ef3fffe 103 Page_Ingredients();
valentin__ 5:50ae659e47c1 104 } else if(NumeroPage == 1) {
valentin__ 5:50ae659e47c1 105 Page_Recette(TAB_ingredients);
valentin__ 5:50ae659e47c1 106 }
valentin__ 1:80d2a1719d10 107 }
valentin__ 1:80d2a1719d10 108
valentin__ 5:50ae659e47c1 109 void Page_Acceuil(){
valentin__ 5:50ae659e47c1 110 BSP_LCD_Clear(0xFFc62a5b);
valentin__ 5:50ae659e47c1 111 BSP_LCD_SetBackColor(0xFFc62a5b);
valentin__ 5:50ae659e47c1 112 AfficheImage(20,60,160,160,imageENSEA);
valentin__ 5:50ae659e47c1 113 int i =0;
valentin__ 5:50ae659e47c1 114 HAL_Delay(1000);
valentin__ 5:50ae659e47c1 115 for(i=0; i<5; i++){
valentin__ 5:50ae659e47c1 116 BSP_LCD_DisplayStringAt(240+i*10,60, (uint8_t *)".", LEFT_MODE);
valentin__ 5:50ae659e47c1 117 HAL_Delay(1000);
valentin__ 5:50ae659e47c1 118 }
valentin__ 5:50ae659e47c1 119 BSP_LCD_DisplayStringAt(240,100, (uint8_t *)"Bienvenue.", LEFT_MODE);
valentin__ 5:50ae659e47c1 120 HAL_Delay(2000);
valentin__ 5:50ae659e47c1 121 }