??? 12/01/04 13:25 Read: times |
#82284 - ok Michael Responding to: ???'s previous message |
On another note: a 6ms ISR will likely give you heaps of trouble, not only with IIC.
I am sure you will agree with the he general statement "keep your ISRs short and sweet". The issue with lenghty ISRs is that they tend to interfere with other actions e.g. a 6ms ISR for e.g. EI0 may create trouble if the UART is running 19k2 or faster and you do not use a double buffered derivative. Another aspect, that I have seen in a few cases is that a long ISR actually interfered with the main in such a way that the main got overrun with "ISR results" after a while because it simply did not have enough non-ISR time to process them. Ok, maybe i was "too generic" but I would never allow a 6ms ISR in any of my products simply because the effects of a long/bad ISR tend to show up "once amonth in a released product" The darn thing about ISRs is that there is no way in hades to verify that they do not cause "rarely occuring problems" and thus, while a long ISR may be OK there is no way to verify that it is. I have found ISR length problems that showed up units less than once a month in any one of 100 units, thus I always "globalize" the statement I made. If you, Michael, have a means of verifying (not testing - that is worthless) that a lenghty ISR will not cause problems in a given design Please, pretty please, post it. Erik |
Topic | Author | Date |
soft I2C and interrupts. | 01/01/70 00:00 | |
Interrupt Issue with I2C | 01/01/70 00:00 | |
Interrupts & I2C | 01/01/70 00:00 | |
I2C or SMBus | 01/01/70 00:00 | |
Not SMBus PHILIPS I2C | 01/01/70 00:00 | |
a possible fix | 01/01/70 00:00 | |
Generic answer that is not true | 01/01/70 00:00 | |
ok Michael | 01/01/70 00:00 | |
Easy as pie. | 01/01/70 00:00 | |
Polarised view | 01/01/70 00:00 | |
no, Donald | 01/01/70 00:00 | |
" | 01/01/70 00:00 | |
Burned Fingers | 01/01/70 00:00 | |
Donald, Michael | 01/01/70 00:00 | |
Erik | 01/01/70 00:00 | |
100% Agree | 01/01/70 00:00 | |
Ok![]() | 01/01/70 00:00 | |
Lazy | 01/01/70 00:00 |