Académique Documents
Professionnel Documents
Culture Documents
h"
#include "DSP2833x_Examples.h"
#include "math.h"
#include "lab4.h"
long int i,k;
long int delay= 5000000;
const float pi=3.1415926535897932384;
void main(void) {
DINT;
//deshabilita interrupciones
DRTM;
//deshabilita interrupciones real time mode
InitSysCtrl();
//inicializa el sistema como PLL,clocks,watcgdog
InitPieCtrl();
//inicializa el apoyo de interrupcin de perifricos
IER = 0x0000;
//limpia mscara de interrupciones
IFR = 0x0000;
//limpia bandera de interrupciones
InitPieVectTable(); //inicializa tabla de interrupciones por defecto
EINT;
//habilita interrupciones
ERTM;
EALLOW;
//****************** CONFIGURACION VALVULAS DE LLENADO A, B, C ***********************
//GPIO30 - Valvula A
GpioCtrlRegs.GPAPUD.bit.GPIO30 = 0; //habilitar resistencia pullup
GpioCtrlRegs.GPAMUX2.bit.GPIO30 = 0; // activa GPIO30 como entrada o salida digital
GpioCtrlRegs.GPADIR.bit.GPIO30 = 1; // activa la direccion de GPIO30 como salida
//GPIO31 - Valvula B
GpioCtrlRegs.GPAPUD.bit.GPIO31 = 0; //habilitar resistencia pullup
GpioCtrlRegs.GPAMUX2.bit.GPIO31 = 0; // activa GPIO31 como entrada o salida digital
GpioCtrlRegs.GPADIR.bit.GPIO31 = 1; // activa la direccion de GPIO31 como salida
//GPIO31 - Valvula C
GpioCtrlRegs.GPBPUD.bit.GPIO32 = 0; //habilitar resistencia pullup
GpioCtrlRegs.GPBMUX1.bit.GPIO32 = 0; // activa GPIO32 como entrada o salida digital
GpioCtrlRegs.GPBDIR.bit.GPIO32 = 1; // activa la direccion de GPIO32 como salida
//**************************************************************************************
GpioDataRegs.GPBCLEAR.bit.GPIO33 = 1;
break;
}
}
}
}
else{ // si el Nivel N0==1 (sensor marca contenido)
GpioDataRegs.GPBSET.bit.GPIO33 = 1; // vacia el contenido
while(1){ //Valvula V4, Vaciado
if(GpioDataRegs.GPBDAT.bit.GPIO35==0){
// si se ha vaciado completamente, el sensor N0 marca vacio
// Cierra la valvula V4, vaciado de la mescla
GpioDataRegs.GPBCLEAR.bit.GPIO33 = 1;
break;
}
}
}
}// end
} // end while(1)
}