prog

Dependencies:   SRF08 TS_DISCO_F746NG mbed LCD_DISCO_F746NG BSP_DISCO_F746NG

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "TS_DISCO_F746NG.h"
00003 #include "LCD_DISCO_F746NG.h"
00004 #include "SRF08.h"
00005 
00006 
00007 TS_DISCO_F746NG ts;
00008 LCD_DISCO_F746NG lcd;
00009 SRF08 srf08(PB_9, PB_8, 0xE0);
00010 DigitalOut led1(LED1);
00011 
00012 
00013 int main()
00014 {
00015     TS_StateTypeDef TS_State;
00016 
00017     ts.Init(420, 272);
00018     bool flag = 0,flag1=0;
00019     char machaine[50] = {0};
00020     float capteur_f = 0;
00021 
00022     while(1) {
00023 
00024         lcd.SetBackColor(LCD_COLOR_BLACK);
00025         lcd.SetTextColor(LCD_COLOR_WHITE);
00026         lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"CAPTEUR ULTRASON", CENTER_MODE);
00027         lcd.DisplayStringAt(0, LINE(9), (uint8_t *)"ALARM   JEU   VALEUR CAPTEUR", CENTER_MODE);
00028         ts.GetState(&TS_State);
00029         if ((TS_State.touchDetected) && (TS_State.touchX[0] > 320)) {
00030             wait(1);
00031             led1 = 1;
00032             flag=1;
00033             lcd.Clear(LCD_COLOR_BLACK);
00034             while(flag!=0) {
00035                 ts.GetState(&TS_State);
00036                 capteur_f = srf08.read();
00037                 sprintf(machaine,"valeur %f", capteur_f);
00038                 lcd.DisplayStringAt(0, LINE(5), (uint8_t *)machaine, CENTER_MODE);
00039                 lcd.DisplayStringAt(0, LINE(9), (uint8_t *)"Retour MENU", CENTER_MODE);
00040                 if (TS_State.touchDetected) {
00041                     flag=0;
00042                     lcd.Clear(LCD_COLOR_BLACK);
00043                 }
00044                 wait(0.1);
00045             }
00046         }
00047         if ((TS_State.touchDetected) && (TS_State.touchX[0] < 240) && (130 < TS_State.touchX[0])) {
00048             wait(1);
00049             flag1=1;
00050             lcd.Clear(LCD_COLOR_BLACK);
00051             while(flag1!=0) {
00052                 ts.GetState(&TS_State);
00053                 capteur_f = srf08.read();
00054                 if(capteur_f<4) {
00055                     lcd.Clear(LCD_COLOR_BLUE);
00056                 }
00057                 if((4<=capteur_f)&&(capteur_f<=6)) {
00058                     lcd.Clear(LCD_COLOR_GREEN);
00059                 }
00060                 if((7<=capteur_f)&&(capteur_f<8)) {
00061                     lcd.Clear(LCD_COLOR_RED);
00062                 }
00063                 if((8<=capteur_f)&&(capteur_f<10)) {
00064                     lcd.Clear(LCD_COLOR_CYAN);
00065                 }
00066                 if((10<=capteur_f)&&(capteur_f<=12)) {
00067                     lcd.Clear(LCD_COLOR_MAGENTA);
00068                 }
00069                 if(12<capteur_f) {
00070                     lcd.Clear(LCD_COLOR_YELLOW);
00071                 }
00072                 lcd.DisplayStringAt(0, LINE(9), (uint8_t *)"Retour MENU", CENTER_MODE);
00073                 if (TS_State.touchDetected) {
00074                     flag1=0;
00075                     lcd.Clear(LCD_COLOR_BLACK);
00076                 }
00077                 wait(0.1);
00078             }
00079 
00080         }
00081         if ((TS_State.touchDetected) && (TS_State.touchX[0] < 100)) {
00082             wait(1);
00083             led1 = 0;
00084             flag=0;
00085             lcd.Clear(LCD_COLOR_BLACK);
00086             while(flag!=1) {
00087                 ts.GetState(&TS_State);
00088                 capteur_f = srf08.read();
00089                 lcd.DisplayStringAt(0, LINE(9), (uint8_t *)"Retour MENU", CENTER_MODE);
00090                 if(capteur_f<10 && capteur_f!=0) {
00091                     lcd.SetBackColor(LCD_COLOR_RED);
00092                     lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"ALERTE INTRUSION", CENTER_MODE);
00093                 }
00094                 if (TS_State.touchDetected) {
00095                     lcd.SetBackColor(LCD_COLOR_BLACK);
00096                     flag=1;
00097                     lcd.Clear(LCD_COLOR_BLACK);
00098                 }
00099                 wait(0.1);
00100 
00101 
00102             }
00103         }
00104 
00105         wait(0.1);
00106     }
00107 }