Всем привет
есть такой код
alt_int_global_init();
alt_int_cpu_init();
if (alt_int_dist_target_set(ALT_INT_INTERRUPT_F2S_FPGA_IRQ0, TARGET_CPU) != ALT_E_SUCCESS) { \
printf("Sync IRQ target cpu set failed\n");
} else {
if (alt_int_dist_trigger_set(ALT_INT_INTERRUPT_F2S_FPGA_IRQ0, ALT_INT_TRIGGER_EDGE) != ALT_E_SUCCESS) { \
printf("Sync IRQ trigger set failed\n");
} else {
if (alt_int_dist_enable(ALT_INT_INTERRUPT_F2S_FPGA_IRQ0) != ALT_E_SUCCESS) { \
printf("Sync IRQ could not be enabled in the distributor\n");
}
}
}
alt_int_isr_register(ALT_INT_INTERRUPT_F2S_FPGA_IRQ0, fpga_isr_callback, NULL);
alt_int_cpu_enable();
alt_int_global_enable();
после включения платы и первом запуске debug прерывания идут
если же я запущу второй раз отладку их уже нет
заметил что во второй раз прерывание активно.... (alt_int_dist_is_active возвращает true)
что я не так делаю?