capteur de mouvement
Dependencies: TS_DISCO_F746NG mbed LCD_DISCO_F746NG BSP_DISCO_F746NG
main.cpp@6:a9edcc4a0140, 2019-06-07 (annotated)
- Committer:
- larvemouse
- Date:
- Fri Jun 07 06:53:39 2019 +0000
- Revision:
- 6:a9edcc4a0140
- Parent:
- 5:f7aa04075cb8
capteur de mouvement
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bcostm | 0:b045ca817e2c | 1 | #include "mbed.h" |
bcostm | 0:b045ca817e2c | 2 | #include "LCD_DISCO_F746NG.h" |
larvemouse | 5:f7aa04075cb8 | 3 | #include "TS_DISCO_F746NG.h" |
bcostm | 0:b045ca817e2c | 4 | |
bcostm | 0:b045ca817e2c | 5 | LCD_DISCO_F746NG lcd; |
larvemouse | 5:f7aa04075cb8 | 6 | TS_DISCO_F746NG boutton; |
bcostm | 0:b045ca817e2c | 7 | |
bcostm | 0:b045ca817e2c | 8 | DigitalOut led1(LED1); |
larvemouse | 5:f7aa04075cb8 | 9 | DigitalIn detecteur(D1); // sortie du capteur PIR |
larvemouse | 5:f7aa04075cb8 | 10 | |
larvemouse | 5:f7aa04075cb8 | 11 | int x,y; |
bcostm | 0:b045ca817e2c | 12 | |
bcostm | 0:b045ca817e2c | 13 | int main() |
larvemouse | 5:f7aa04075cb8 | 14 | { |
larvemouse | 5:f7aa04075cb8 | 15 | while(1) { |
larvemouse | 5:f7aa04075cb8 | 16 | int idx = 0; |
larvemouse | 5:f7aa04075cb8 | 17 | bool fini = true; |
larvemouse | 5:f7aa04075cb8 | 18 | //uint8_t init; |
larvemouse | 5:f7aa04075cb8 | 19 | //init = boutton.Init(lcd.GetXSize(),lcd.GetYSize());//initialisation du bouton |
larvemouse | 5:f7aa04075cb8 | 20 | TS_StateTypeDef TS_State;//etat du tacticle |
larvemouse | 5:f7aa04075cb8 | 21 | lcd.DisplayStringAt(0, LINE(1), (uint8_t *)"ALARME", CENTER_MODE); |
bcostm | 0:b045ca817e2c | 22 | |
larvemouse | 5:f7aa04075cb8 | 23 | while(fini) { |
larvemouse | 5:f7aa04075cb8 | 24 | if (detecteur.read()== 0) { |
larvemouse | 5:f7aa04075cb8 | 25 | lcd.Clear(LCD_COLOR_BLACK);//effacer l'ecran |
larvemouse | 5:f7aa04075cb8 | 26 | lcd.SetTextColor(LCD_COLOR_RED); |
larvemouse | 5:f7aa04075cb8 | 27 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"Aucun Mouvement Detecte", CENTER_MODE); |
larvemouse | 5:f7aa04075cb8 | 28 | wait(1); |
larvemouse | 5:f7aa04075cb8 | 29 | lcd.SetTextColor(LCD_COLOR_GREEN); //affichage rond vert |
larvemouse | 5:f7aa04075cb8 | 30 | lcd.FillCircle(50, 50, 40); |
larvemouse | 5:f7aa04075cb8 | 31 | wait(1); |
larvemouse | 5:f7aa04075cb8 | 32 | lcd.Clear(LCD_COLOR_BLACK); |
larvemouse | 5:f7aa04075cb8 | 33 | |
larvemouse | 5:f7aa04075cb8 | 34 | } else { |
larvemouse | 5:f7aa04075cb8 | 35 | lcd.Clear(LCD_COLOR_BLACK); |
larvemouse | 5:f7aa04075cb8 | 36 | lcd.SetTextColor(LCD_COLOR_RED); |
larvemouse | 5:f7aa04075cb8 | 37 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"Mouvement Detecte", CENTER_MODE); |
larvemouse | 5:f7aa04075cb8 | 38 | wait(1); |
larvemouse | 5:f7aa04075cb8 | 39 | |
larvemouse | 5:f7aa04075cb8 | 40 | lcd.SetTextColor(LCD_COLOR_RED);//affichage rond rouge |
larvemouse | 5:f7aa04075cb8 | 41 | lcd.FillCircle(50, 50, 40); |
larvemouse | 5:f7aa04075cb8 | 42 | wait(1); |
bcostm | 0:b045ca817e2c | 43 | |
larvemouse | 5:f7aa04075cb8 | 44 | |
larvemouse | 5:f7aa04075cb8 | 45 | lcd.Clear(LCD_COLOR_BLACK); |
larvemouse | 5:f7aa04075cb8 | 46 | lcd.SetBackColor(LCD_COLOR_BLACK); |
larvemouse | 5:f7aa04075cb8 | 47 | lcd.SetTextColor(LCD_COLOR_WHITE); |
larvemouse | 5:f7aa04075cb8 | 48 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"Arret alarme", CENTER_MODE);//demande d'arret alarme |
larvemouse | 5:f7aa04075cb8 | 49 | |
larvemouse | 5:f7aa04075cb8 | 50 | lcd.SetTextColor(LCD_COLOR_WHITE); |
larvemouse | 5:f7aa04075cb8 | 51 | lcd.DrawRect(150,150,180,50); |
larvemouse | 5:f7aa04075cb8 | 52 | lcd.DisplayStringAt(3, LINE(7), (uint8_t *)"Stop", CENTER_MODE);//bouton stop |
larvemouse | 5:f7aa04075cb8 | 53 | wait(1); |
bcostm | 0:b045ca817e2c | 54 | |
larvemouse | 5:f7aa04075cb8 | 55 | boutton.GetState(&TS_State); |
larvemouse | 5:f7aa04075cb8 | 56 | if (TS_State.touchDetected) { |
larvemouse | 5:f7aa04075cb8 | 57 | x = TS_State.touchX[idx];//position du touché tactile |
larvemouse | 5:f7aa04075cb8 | 58 | y = TS_State.touchY[idx]; |
larvemouse | 5:f7aa04075cb8 | 59 | lcd.SetTextColor(LCD_COLOR_GREEN);//affichage rond vert si arret alarme |
larvemouse | 5:f7aa04075cb8 | 60 | lcd.FillCircle(50,50, 40); |
larvemouse | 5:f7aa04075cb8 | 61 | wait(1); |
larvemouse | 5:f7aa04075cb8 | 62 | lcd.Clear(LCD_COLOR_BLACK); |
larvemouse | 5:f7aa04075cb8 | 63 | fini = false; |
larvemouse | 5:f7aa04075cb8 | 64 | } |
larvemouse | 5:f7aa04075cb8 | 65 | } |
larvemouse | 5:f7aa04075cb8 | 66 | fini = true; |
bcostm | 0:b045ca817e2c | 67 | |
larvemouse | 5:f7aa04075cb8 | 68 | } |
larvemouse | 5:f7aa04075cb8 | 69 | |
bcostm | 0:b045ca817e2c | 70 | } |
larvemouse | 5:f7aa04075cb8 | 71 | |
bcostm | 0:b045ca817e2c | 72 | } |
larvemouse | 5:f7aa04075cb8 | 73 |