Did you get it?
The problem is you don't get it. I wrote why your code doesn't work. In this case it has nothing to do with SoftwareSerial (although that is a horrible piece of code that should never be used) but it simply has to do with the fact that you're using interrupt based code without knowing anything about interrupt contexts and interrupt handling in general.
Remove the three lines I posted in my first answer and your communication will work again.
And the code that you're hiding from us makes a difference because you probably have errors there too.
Arduino uno, but im using local variable, so thats enough memory for this (that why its working if i dont put the function "calculos").
The Arduino UNO has 2kB of RAM, so it definitely doesn't have enough memory for this.