Project

General

Profile

Statistics
| Branch: | Revision:

pse-2015-16-grupo-3 / tpf / mainTest.c @ 8e491bdf

History | View | Annotate | Download (3.57 KB)

1
#include "tempo.h"
2
#include "display.h"
3
#include "config.h"
4
#include "io.h"
5
#include <stdio.h>
6
#include <stdlib.h>
7

    
8
#define testing
9

    
10

    
11

    
12
int timeSet = 0;        //Apenas quando estas duas variáveis
13
int powerSet = 0;        //estiverem a 1 é que se pode dar Start
14

    
15
// Power Settings
16
uint32_t powerSettings[] = {150, 350, 500, 750};
17
uint32_t currentPower; //vai indice do array com o tempo atual de power
18

    
19
//1 enquanto estiver a funcionar(start), 0 se estiver parado(stop);
20
int isRunning = 0;
21

    
22
//Classe q vai controlar o display
23
//Display disp;
24

    
25
//Ciclo de vida do sistema
26
int main()
27
{
28
    
29
#ifndef testing
30
        pse_time_t tempo;
31
        tempo.segundos = 0;
32
        tempo.minutos = 0;
33
        tempo.horas = 0;
34
        setTime(tempo);
35
        char c;
36
        
37

    
38
        while(1)
39
        {
40
            
41
                
42
                printf("t-Escolher tempo\n p-Escolher power\n s-Start/Stop\n");
43
                c = '0';
44
                do{c=getchar();}while(isspace(c));
45
                if(c == 't')
46
                {
47
                        c = '0';
48
                        printf("Escolha de tempo\n");
49
                        while(c != 't') //Enquanto não pressionar o botão Time novamente, fica na janela de regulação do tempo
50
                        {
51
                                //disp.setDisplay(time.getTime());        //Mostra o tempo atualmente escolhido no visor
52
                                printf("t-Sair de escolha de tempo\n +Aumentar tempo\n -Diminuir tempo\n");
53
                                pse_time_t atual;
54
                                getTime(&atual);
55
                                printf("Tempo atual = %d:%d:%d\n", atual.horas, atual.minutos, atual.segundos);
56
                                c = '0';
57
                                do{c=getchar();}while(isspace(c));
58
                                if(c == '+')
59
                                {
60
                                        //if(time.increase());        //Se o botão "+" for pressionado é chamada a função para incrementar o tempo
61
                                        increase();
62
                                        printf("Tempo Aumentado\n");
63
                                        pse_time_t atual;
64
                                        getTime(&atual);
65
                                }
66
                                if(c == '-')
67
                                {
68
                                        //if(time.decrease());        //Se o botão "-" for pressionado é chamada a função para decrementar o tempo
69
                                        decrease();
70
                                        printf("Tempo Decrementado\n");
71
                                        pse_time_t atual;
72
                                        getTime(&atual);
73
                                }
74
                                
75
                        }
76
                        timeSet = 1;        
77
                }
78
                else if(c == 'p')
79
                {
80
                        c='0';
81
                        printf("Modo de escolha de power\n");
82
                        
83
                        
84
                        //Caso o microondas esteja a funcionar, apenas mostra o valor do power durante 2 segundos
85
                        if(isRunning)
86
                                printf("Microondas em execucao\n");
87
                                //disp.setDisplay(powerSettings[currentPower]);        //mostrar isto durante 2 segundos
88
                        
89
                        //Caso não esteja a funcionar, permite ao utilizador escolher o power pretendido
90
                        else
91
                        {
92
                                printf("p-Sair de escolha de power\n +Aumentar power\n -Diminuir power\n");
93
                                while(c != 'p')
94
                                {
95
                                        
96
                                        printf("Power atual:%d \n",powerSettings[currentPower]);
97
                                        c = '0';
98
                                        do{c=getchar();}while(isspace(c));
99
                                        //disp.setDisplay(powerSettings[currentPower]);
100
                                        if(c == '+')
101
                                        {
102
                                                if(currentPower < 3)
103
                                                currentPower++;
104
                                        }
105
                                        if(c == '-')
106
                                        {
107
                                                if(currentPower > 0)
108
                                                currentPower--;
109
                                        }
110
                                }
111
                                powerSet = 1;        
112
                        }
113
                }
114
                else if(c == 's')
115
                {
116
                        if(!isRunning)
117
                        {
118
                                //Verifica se as condicoes estao definidas
119
                                if(powerSet && timeSet)
120
                                {        
121
                                        printf("MICROONDAS LIGADO\n");
122
                                        isRunning = 1;
123
                                        //Liga o microondas com o tempo e potencia configuradas
124
                                        /*powerOven(time.getTime(),powerSettings[currentPower];
125
                                        switchLight(ON);
126
                                        switchTurnMotor(ON);*/
127
                                }
128
                                else printf("Tempo ou Power não definido\n");
129
                        }
130
                        else printf("MICROONDAS DESLIGADO\n");                        
131
                        
132
                }
133
        }
134
        
135
#endif
136
#ifdef testing
137
        char c;
138
        uint8_t state;
139
        initBoard();
140
        
141
        while(1)
142
        {
143
            (uint8_t) IsDoorOpen(&state);
144
            
145
            if(state==1)
146
        }
147
        (u_int8_t) turnOnLight();
148
        
149
        printf("t-Escolher tempo\n p-Escolher power\n s-Start/Stop\n");
150
        c = '0';
151
        c=getchar();
152
        
153
        
154
        (u_int8_t) turnOffLight();
155
#endif
156

    
157
}