In SX Microcontrollers, SX/B Compiler and SX-Key Tool, JonnyMac wrote: I'm going to assume (we know what that does, don't we?) that SEND_BYTE is a shell for SEROUT of some sort -- this is getting hosed up by the interrupt. You see, you can't just drop the ISR code in willy-nilly; anything timing oriented (SEROUT, SERIN, PAUSE) will be affected by it. I've attached an update of the program I wrote for you. Where you once used SEROUT, use TX_BYTE; replace SERIN with RX_BYTE, and PAUSE with DELAY_MS. This should help. When you need the last RPM update (which happens every 0.6 seconds) you do this: someVariable = GET_RPM The SX/B 2.00.16 allows us to update the EEPROM routines so they're as easy to use with a byte address as with a word (the program now works with both). At some point you will look back and say, "Wow, that's pretty cool and wasn't too hard -- once everything made sense!" ---------- End of Message ---------- You can view the post on-line at: http://forums.parallax.com/forums/default.aspx?f=7&p=1&m=335717#m335758 Need assistance? Send an email to the Forum Administrator at forumadmin@parallax.com The Parallax Forums are powered by dotNetBB Forums, copyright 2002-2009 (http://www.dotNetBB.com)