Hi:
Actually, if I don’t want to change original BSP code, I think we could use new isr to replace old isr, and implement your ISR code here, just like mqx\examples\isr demonstrated:
isr_ptr->TICK_COUNT = 0;
isr_ptr->OLD_ISR_DATA =
intget_isr_data(BSP_TIMER_INTERRUPT_VECTOR);//get back old isr data and save
isr_ptr->OLD_ISR =
intget_isr(BSP_TIMER_INTERRUPT_VECTOR);//get back old isr and save
intinstall_isr(BSP_TIMER_INTERRUPT_VECTOR, new_tick_isr,
isr_ptr);
void new_tick_isr
(
pointer user_isr_ptr
)
{
MY_ISR_STRUCT_PTR isr_ptr;
isr_ptr = (MY_ISR_STRUCT_PTR)user_isr_ptr;
isr_ptr->TICK_COUNT++;//do your code
/* Chain to the previous notifier */
(*isr_ptr->OLD_ISR)(isr_ptr->OLD_ISR_DATA);// call old isr routinue;
}
Dawei You(尤大为);