Can I call function outside of ISR,from inside of an ISR which is call by other function(eg. from MAIN) in AT89S52 using C?
I'd, basically, say no. the complexity of doing this is way beyond what it is worth. in cases like this I duplicate the code and have one code for main and another for the ISR.
not only complexity, but also risk. there is in such legio possibilities for having some minuscule oversight that will lead to the dreaded once a week failure
I just wonder which answer the OP will go for. Probably a trick question from his tutor.