Project

General

Profile

Statistics
| Branch: | Revision:

pse-2015-16-grupo-3 / tpf / mainTest.c @ 78c254a7

History | View | Annotate | Download (3.06 KB)

1
#include "tempo.h"
2
#include "display.h"
3
#include <stdio.h>
4

    
5

    
6

    
7

    
8
int timeSet = 0;        //Apenas quando estas duas variáveis
9
int powerSet = 0;        //estiverem a 1 é que se pode dar Start
10

    
11
// Power Settings
12
uint32_t powerSettings[] = {150, 350, 500, 750};
13
uint32_t currentPower; //vai indice do array com o tempo atual de power
14

    
15
//1 enquanto estiver a funcionar(start), 0 se estiver parado(stop);
16
int isRunning = 0;
17

    
18
//Classe q vai controlar o display
19
//Display disp;
20

    
21
//Ciclo de vida do sistema
22
int main()
23
{
24
        pse_time_t tempo;
25
        tempo.segundos = 0;
26
        tempo.minutos = 0;
27
        tempo.horas = 0;
28
        setTime(tempo);
29
        char c;
30
        while(1)
31
        {
32
                
33
                printf("t-Escolher tempo\n p-Escolher power\n s-Start/Stop\n");
34
                c = '0';
35
                do{c=getchar();}while(isspace(c));
36
                if(c == 't')
37
                {
38
                        c = '0';
39
                        printf("Escolha de tempo\n");
40
                        while(c != 't') //Enquanto não pressionar o botão Time novamente, fica na janela de regulação do tempo
41
                        {
42
                                //disp.setDisplay(time.getTime());        //Mostra o tempo atualmente escolhido no visor
43
                                printf("t-Sair de escolha de tempo\n +Aumentar tempo\n -Diminuir tempo\n");
44
                                pse_time_t atual;
45
                                getTime(&atual);
46
                                printf("Tempo atual = %d:%d:%d\n", atual.horas, atual.minutos, atual.segundos);
47
                                c = '0';
48
                                do{c=getchar();}while(isspace(c));
49
                                if(c == '+')
50
                                {
51
                                        //if(time.increase());        //Se o botão "+" for pressionado é chamada a função para incrementar o tempo
52
                                        increase();
53
                                        printf("Tempo Aumentado\n");
54
                                        pse_time_t atual;
55
                                        getTime(&atual);
56
                                }
57
                                if(c == '-')
58
                                {
59
                                        //if(time.decrease());        //Se o botão "-" for pressionado é chamada a função para decrementar o tempo
60
                                        decrease();
61
                                        printf("Tempo Decrementado\n");
62
                                        pse_time_t atual;
63
                                        getTime(&atual);
64
                                }
65
                                
66
                        }
67
                        timeSet = 1;        
68
                }
69
                else if(c == 'p')
70
                {
71
                        c='0';
72
                        printf("Modo de escolha de power\n");
73
                        
74
                        
75
                        //Caso o microondas esteja a funcionar, apenas mostra o valor do power durante 2 segundos
76
                        if(isRunning)
77
                                printf("Microondas em execucao\n");
78
                                //disp.setDisplay(powerSettings[currentPower]);        //mostrar isto durante 2 segundos
79
                        
80
                        //Caso não esteja a funcionar, permite ao utilizador escolher o power pretendido
81
                        else
82
                        {
83
                                printf("p-Sair de escolha de power\n +Aumentar power\n -Diminuir power\n");
84
                                while(c != 'p')
85
                                {
86
                                        
87
                                        printf("Power atual:%d \n",powerSettings[currentPower]);
88
                                        c = '0';
89
                                        do{c=getchar();}while(isspace(c));
90
                                        //disp.setDisplay(powerSettings[currentPower]);
91
                                        if(c == '+')
92
                                        {
93
                                                if(currentPower < 3)
94
                                                currentPower++;
95
                                        }
96
                                        if(c == '-')
97
                                        {
98
                                                if(currentPower > 0)
99
                                                currentPower--;
100
                                        }
101
                                }
102
                                powerSet = 1;        
103
                        }
104
                }
105
                else if(c == 's')
106
                {
107
                        if(!isRunning)
108
                        {
109
                                //Verifica se as condicoes estao definidas
110
                                if(powerSet && timeSet)
111
                                {        
112
                                        printf("MICROONDAS LIGADO\n");
113
                                        isRunning = 1;
114
                                        //Liga o microondas com o tempo e potencia configuradas
115
                                        /*powerOven(time.getTime(),powerSettings[currentPower];
116
                                        switchLight(ON);
117
                                        switchTurnMotor(ON);*/
118
                                }
119
                                else printf("Tempo ou Power não definido\n");
120
                        }
121
                        else printf("MICROONDAS DESLIGADO\n");                        
122
                        
123
                }
124
        }
125

    
126
}