Example #1
0
//Hwi to handle adc14 interript
void ADC14_IRQHandler(void)
{
    uint64_t status;

    AdcObj adc_message;
    adc_message.x = 0;
    adc_message.y = 0;
    adc_message.z = 0;

    MAP_Interrupt_disableInterrupt(INT_ADC14);
    status = MAP_ADC14_getEnabledInterruptStatus();
    MAP_ADC14_clearInterruptFlag(status);

    /* ADC_MEM2 conversion completed */
    if(status & ((uint32_t)0x00000004))
    {
        /* Store ADC14 conversion results */
        adc_message.x = ADC14_getResult(ADC_MEM0);
        adc_message.y = ADC14_getResult(ADC_MEM1);
        adc_message.z = ADC14_getResult(ADC_MEM2);
        adc_message.z = ADC14_getResult(ADC_MEM2);

        Mailbox_post(ADC_Mbx, &adc_message, BIOS_WAIT_FOREVER);
    }

}
/* This interrupt is fired whenever a conversion is completed and placed in
 * ADC_MEM0 */
void adc_isr(void)
{
    uint64_t status;
    MAP_Timer_A_clearTimer(TIMER_A0_MODULE);

    status = MAP_ADC14_getEnabledInterruptStatus();
    MAP_ADC14_clearInterruptFlag(status);


    if (status & ADC_INT0)
    {
        resultsBuffer[resPos++] = MAP_ADC14_getResult(ADC_MEM0);
    }

}
Example #3
0
void ADC14_IRQHandler(void)
{
  uint64_t status;

    //AdcObj adc_message;
    //adc_message.x = 0;
    //adc_message.y = 0;
    //adc_message.z = 0;

    status = MAP_ADC14_getEnabledInterruptStatus();
    MAP_ADC14_clearInterruptFlag(status);

    /* ADC_MEM2 conversion completed */
    if(status & ((uint32_t)0x00000004))
    {
        step_track_and_alert(ADC14_getResult(ADC_MEM0),
                             ADC14_getResult(ADC_MEM1),
                             ADC14_getResult(ADC_MEM2));
    }
}