Thanks mackrackit! I modified the program and just put a flag that i created inside of the interrupt routine. So the interrupt set that flag = 1 and go back to Loop and then if this flag = 1, the program goto to another routine and do all the processing. But don't solve the problem.
I did a test that I remove the SERIN2 and leave all the IF's, CASE and WHILE inside the interrupt routine, then the problem was solved, I can interrupt normally. But i need to receive the data with 10 bytes when interrupt happens.
So, I'm stuck on that problem. =/