Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Fork of ControlTemperatura_2_3 by
main.cpp
- Committer:
- davicone
- Date:
- 2015-04-09
- Revision:
- 0:ac833c85625c
- Child:
- 1:677ecfe29f10
File content as of revision 0:ac833c85625c:
// --------------------------------------------------------------------------- Inclusiones
#include "mbed.h"
#include "string.h"
using namespace std;
#define Si 1
#define No 0
// --------------------------------------------------------------------------- Variables y objetos
Serial pc(USBTX, USBRX); // Inicializo el puerto serie para comunicarme con la computadora
// La frecuencia por default es de 9600
// Variables
unsigned int tiempoFinal; // Variable para almacenar el tiempo máximo
float tempTrabajo; // Temperatura a la cual se debe mantener el sistema
float tempSen1; // Temperatura del sensor 1
float tempSen2; // Temperatura del sensor 2
float tempSen3; // Temperatura del sensor 3
float tempSen4; // Temperatura del sensor 4
Timer timmer; // Timer para medir el tiempo transcurrido
bool inicioProceso = No; // Variable para determinar si el proceso se inicia
bool pausaProceso = No; // Variable para pausar
bool finProceso = No; // Variable finalizar el proceso
char comando; // Variable para leer el comando a ejecutar en el proceso
char sTiempo[10];
char sTemperatura[10];
//Pines de Salida
DigitalOut reflector1(p26); // Salida para controlar el reflector 1
DigitalOut reflector2(p25); // Salida para controlar el reflector 2
DigitalOut reflector3(p24); // Salida para controlar el reflector 3
DigitalOut reflector4(p23); // Salida para controlar el reflector 4
DigitalOut ventilador1(p22); // Salida para controlar el ventilador 1
DigitalOut ventilador2(p21); // Salida para controlar el ventilador 2
// Pines de Entrada
AnalogIn pinSen1(p16); // Entrada para leer la temperatura del sensor 1
AnalogIn pinSen2(p17); // Entrada para leer la temperatura del sensor 2
AnalogIn pinSen3(p18); // Entrada para leer la temperatura del sensor 3
AnalogIn pinSen4(p19); // Entrada para leer la temperatura del sensor 4
// --------------------------------------------------------------------------- Prototipos
void LeerSerie (void); // Función para leer el puerto serie
// --------------------------------------------------------------------------- Programa principal
int main()
{
pc.baud(9600);
pc.printf("Iniciando\n\r"); // Se imprime y se da enter
pc.attach(&LeerSerie);
while(inicioProceso == No)
{
wait(0.1);
//pc.printf("y");
}// Espera a recibir comando
pc.printf("Proceso Iniciado\r\n");
// --------------------------------------------------------------------------- PROCESO
while(finProceso == No)
{
while(pausaProceso == Si) // ---------------------------------------- Proceso Pausado
{
pc.printf("Proceso Puasado\r\n");
wait(0.1);
}
}
pc.printf("Proceso Terminado\r\n");
}
// --------------------------------------------------------------------------- Funciones
// --------------------------------------------------------------------------- LeerSerie
void LeerSerie(void)
{
comando = pc.getc();
switch(comando)
{
case 'I':
inicioProceso = Si;
// Guardar Tiempo
// Guardar Temperatura
pc.scanf("%s %s",sTiempo, sTemperatura);
pc.printf("\r\n");
pc.printf(sTiempo);
pc.printf("\r\n");
pc.printf(sTemperatura);
pc.printf("\r\n");
tiempoFinal = atoi(sTiempo);
tempTrabajo = atoi(sTemperatura);
break;
case 'P':
pausaProceso = Si;
break;
case 'F':
finProceso = Si;
break;
case 'R':
pausaProceso = No;
break;
}
}
