Problemik z którym nie moge sobie poradzić
fioletowy to przebieg z detektora fazy
detektor fazy podpięty jest i skonfigurowany jako przerwanie do portu 3.1
żółty to zmiana stanu w przerwaniu (p3.1) wystawiona na P3.4
w programie mam uruchomiony RS232, ADC, Timer32, timer16, sisttick,
i priorytety przerwań:
zdjęcia obrazujące nie deterministyczny w wywołaniu przerwania
jeżeli ktoś potrafi tak skonfigurować procesor co by była w tym jakaś regularność byłbym szczęśliwy
dzięki za pomoc.
fioletowy to przebieg z detektora fazy
detektor fazy podpięty jest i skonfigurowany jako przerwanie do portu 3.1
żółty to zmiana stanu w przerwaniu (p3.1) wystawiona na P3.4
w programie mam uruchomiony RS232, ADC, Timer32, timer16, sisttick,
void PIOINT3_IRQHandler(void)
{
uint32_t regVal;
gpio3_counter++;
regVal = GPIOIntStatus( PORT3, 1 );
if ( regVal )
{
if(GPIOGet(3,4)) //debug mode
GPIOSetValue( 3, 4, 0 ); //debug mode
else GPIOSetValue( 3, 4, 1 ); //debug mode
// UARTSend((uint8_t *)"dn", 2 );//debug
// setMatch_timer32PWM (1, 0, 512);//debug
AC_OK_Tick++;
p3_1_counter++;
GPIOIntClear( PORT3, 1 );
}
return;
}
i priorytety przerwań:
NVIC_SetPriority(UART_IRQn, 5);
NVIC_SetPriority(ADC_IRQn, 5);
NVIC_SetPriority(TIMER_16_1_IRQn, 4);
NVIC_SetPriority(TIMER_32_0_IRQn, 4);
NVIC_SetPriority(SysTick_IRQn, 2);
NVIC_SetPriority(EINT3_IRQn, 1);
zdjęcia obrazujące nie deterministyczny w wywołaniu przerwania
jeżeli ktoś potrafi tak skonfigurować procesor co by była w tym jakaś regularność byłbym szczęśliwy
dzięki za pomoc.