Ejemplo n.º 1
0
/***************************************************************************//**
 * @brief
 *   RxTimer, Timer0 IRQHandler.
 ******************************************************************************/
void TIMER0_IRQHandler(void)
{
	uint32_t irqFlags;

  irqFlags = TIMER_IntGet(HIJACK_RX_TIMER);
  TIMER_IntClear(HIJACK_RX_TIMER, irqFlags);
	
 	if (TIMER_IF_CC0 & irqFlags)
  {
		cur_stamp = TIMER_CaptureGet(HIJACK_RX_TIMER, 0);

		/* Check what transition it was. */
    if(ACMP0->STATUS & ACMP_STATUS_ACMPOUT)
    {
    	cur_edge = rising;
			//BSP_LedSet( 0 );
      GPIO_PinOutSet(gpioPortD, 5);
			//Debug_Print( "%d ", cur_stamp ) ;
    }
    else
    {
    	cur_edge = falling;
			//BSP_LedClear( 0 );
      GPIO_PinOutClear(gpioPortD, 5);
			//Debug_Print( "%d ", cur_stamp ) ;
    }
		decode_machine();
  }
}
Ejemplo n.º 2
0
/***************************************************************************//**
 * @brief
 *   RxTimer, Timer0 IRQHandler.
 ******************************************************************************/
void TIMER0_IRQHandler(void)
{
  uint32_t irqFlags;

  irqFlags = TIMER_IntGet(HIJACK_RX_TIMER);
  TIMER_IntClear(HIJACK_RX_TIMER, irqFlags);

  if (TIMER_IF_CC1 & irqFlags)
  {
	cur_stamp = TIMER_CaptureGet(HIJACK_RX_TIMER, 1);
	TIMER_CounterSet(HIJACK_RX_TIMER, 0);	
	edge_occur = true;
	/* Check what transition it was. */
    if (GPIO_PinInGet(HIJACK_RX_GPIO_PORT, HIJACK_RX_GPIO_PIN))
    {
       	cur_edge = rising;
		BSP_LedSet( 0 );
    }
    else
    {
      	cur_edge = falling;
	 	BSP_LedClear( 0 );
    }
  }
}
Ejemplo n.º 3
0
void TIMER3_IRQHandler(void) {
    uint32_t timer_if = TIMER_IntGet(TIMER3) & (TIMER_IF_CC1 | TIMER_IF_OF);
    TIMER_IntClear(TIMER3, TIMER_IF_CC1 | TIMER_IF_OF);

    if (timer_if & TIMER_IF_OF) {
        GPIO_PinOutSet(LED5_PORT_PIN);
    } else {
        GPIO_PinOutClear(LED5_PORT_PIN);
    }
}
Ejemplo n.º 4
0
/**
 *    \brief    Timer1 interrupt handler.
 */
void TIMER1_IRQHandler()
{
    uint32_t flags;
    INT_Disable();

    flags = TIMER_IntGet( TIMER1 );
    _hal_tcCb();
    TIMER_IntClear( TIMER1, flags );

    INT_Enable();
}
Ejemplo n.º 5
0
void TIMER_IRQHandler( void )
{
  uint32_t flags;

  flags = TIMER_IntGet( TIMER );

  if ( flags & TIMER_IF_CC0 )
  {
    TIMER_IntClear( TIMER, TIMER_IFC_CC0 );
    TIMER_CompareSet( TIMER, 0, TIMER_CaptureGet( TIMER, 0 ) + ticksPrMs );
    TimerTick();
  }
}
Ejemplo n.º 6
0
/***************************************************************************//**
 * @brief
 *   Timer1 IRQHandler.
 ******************************************************************************/
void TIMER1_IRQHandler(void)
{
  uint32_t irqFlags;

  /* Clear all pending IRQ flags. */
  irqFlags = TIMER_IntGet(HIJACK_TX_TIMER);
  TIMER_IntClear(HIJACK_TX_TIMER, irqFlags);

  /* Reset the counter and the compare value. */
  TIMER_CounterSet(HIJACK_TX_TIMER, 0);
  TIMER_CompareSet(HIJACK_TX_TIMER, 0, HIJACK_NUM_TICKS_PER_HALF_CYCLE);

}
Ejemplo n.º 7
0
/***************************************************************************//**
 * @brief
 *   Timer1 IRQHandler.
 ******************************************************************************/
void TIMER1_IRQHandler(void)
{
  //static volatile uint8_t currentPin = 1;
  //static volatile uint8_t currentSym = 1;
  static volatile uint8_t txParity = 0;
  uint32_t irqFlags;

  /* Clear all pending IRQ flags. */
  irqFlags = TIMER_IntGet(HIJACK_TX_TIMER);
  TIMER_IntClear(HIJACK_TX_TIMER, irqFlags);

  ticker++;

  /* Reset the counter and the compare value. */
  TIMER_CounterSet(HIJACK_TX_TIMER, 0);
  TIMER_CompareSet(HIJACK_TX_TIMER, 0, 500ul*HIJACK_NUM_TICKS_PER_1US*HIJACK_ENC_CARRIER_FREQ_1KHZ/HIJACK_ENC_CARRIER_FREQ_CONF);
  //BSP_LedToggle(0);

  encode_machine();
}
Ejemplo n.º 8
0
void TIMER0_IRQHandler(void)
{
  //int32_t bmp180_raw;
  /* Store the interrupt flags before clearing */
  uint16_t intFlags = TIMER_IntGet(TIMER0);

  /* Clear the interrupt flags. Only clear the flags that were stored in */
  /* intFlags in case other flags have been set since then */
  TIMER_IntClear(TIMER0, intFlags);

  /* Overflow interrupt occurred */
  if(intFlags & TIMER_IF_OF)
  {
	  GPIO_PinOutToggle(LED_PORT, LED0_PIN );                             // turn on LED0
	  GPIO_PinOutToggle(LED_PORT, LED1_PIN );                             // turn on LED0
	 //GPIO_PinOutToggle(EXT_LED, YEL_LED);
	 // GPIO_PinOutToggle(LED_PORT, LED1_PIN );
	 // GPIO_PinOutToggle(LED_PORT, OPLED_PIN);

	  timeout++;

	  counter = counter + 1;
	  if(counter > 10) {		//count to 10. then check to see how many fix vals have occured.
		  if(fix_val < 3) {		//if fix_val is greater than 2, then no fix. If less than 2, then solid fix
		  		  fix_val = 0;
		  		  satfix = 1;		//solid fix, so notify
		  	  }
		  else {
			  satfix = 0;
		  }
		  counter = 0;		//reset counter
	  }

  }

}