void Timer_ISR(void){
	ReiniciarTimer();
	ToggleLED(LED);

	valor_adc = LeerADC();
	valor_dac = (uint16_t) valor_adc * Voutmax;
	setDAC(valor_dac);
}
Exemple #2
0
/*==================[internal functions definition]==========================*/
 	void Ejecuta_RIT(){
 		 /* Secuencia a ejecutar con la llamada de IRQ11 RIT*/

 	dataADC=LeerADC();
 	dataDAC=dataADC*ganancia;
 	if (dataDAC>1023) /*Ajusta la saturacion*/
 	    {
 		PrenderLed(LEDROJO); /* Si satura enciende el led rojo*/
 		dataDAC=1023;
 	    } else /* si no satura apaga el led rojo*/
 	       {
 	    	ApagarLed(LEDROJO);
 	       }

 	CargarValorDAC(dataDAC); /* Asigna el valor de salida al DAC*/
 	ConmutaLed(LEDVERDE);

 	BorraFlagRIT(); /* Borra el flag de la llamada a la interrupción*/

 	 }/*Ejecuta_RIT*/