網頁

2011年1月9日 星期日

ISR

You must be asked questions about ISR in every firmware or embedded system interview!

Interrupt Service Routine
Difference between ISR and normal function
1) ISR has no parameter
2) ISR has no return value
3) ISR is asynchronous to instruction flow
4) ISR is triggered by hardware event
5) ISR can't call blocking function or non-reentrant function, such as printf()
6) ISR should be as short as possible, shouldn't call function which require long time to execute, such as printf(), floating point function…
7) ISR can't be blocked, can't wait on semephor, but can signal
Debugging ISR

沒有留言:

張貼留言