John,
One thing that struck me from your description is that you "clear" the
IFLAG register. Do you mean that you clear just the one bit representing
the empty Tx buffer? If you're clearing the entire register, that may be
your problem. (You could be missing an Rx interrupt.)
Also, I don't understand how your Tx side can work. You respond
asynchronously to a Tx interrupt by simpling clearing the flag.
Synchronously, what condition are you polling for to tell you it's OK to
transmit?
Finally, how many MBs are you using as Tx, how many as Rx, and which MB
numbers for which? Is any of your Rx buffers filtering in a way that it
could receive your own transmissions?
Jeff
"agawam1964" <agawam1964@...>
10/23/2003 05:05 AM
Please respond to 68300
To: 68300@yahoogroups.com
cc:
Subject: [68300] TouCAN Dropping Messages
I have five MC68376 systems communicating with a host PC via CAN
using a proprietary protocol. We're running at 125Kbaud. One
channel is Rx, one channel is Tx. The Tx we more or less use in a
syncronous (polled) mode, with the Tx interrupt basically just
clearing the IFLAG register. The Rx is normal interrupt driven.
For the most part everything is running smoothly. Most of the CAN
traffic occurs in bursts separated by several seconds, which all five
systems weather without incident. However, the host (Dell XP system)
needs to poll one system at a rate of about 10 hz, and every 100
seconds or so I'll get the Rx Buffer overrun error on that system.
I instrumented the ISRs to toggle an I/O pin and found that the Rx
ISR is 500 usec. The Rx ISR where the error is dectected doesn't
seem to occur in heavy traffic; typically the prior ISR occurs a few
msec before - definately no overlap with prior Rx or Tx ISRs.
To help debug this I moved all other ISRs to a lower priority INT,
including the heartbeat PIT, with no noticeable effect. My past
experience suggests to me I'm not locking-reading-clearing the
buffers and registers correctly, but I've reread the manual about n
hundred times and can't see where I'm going wrong. Is there some
subtlety about reading the TouCAN registers and buffers that isn't in
the manual?
--John
---------------------------------------------------
To unsubscribe from this group, send an email to:
68300-unsubscribe@yahoogroups.com
To learn more about Motorola Microcontrollers, please visit
http://www.motorola.com/mcu
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
[Non-text portions of this message have been removed]Message
Re: [68300] TouCAN Dropping Messages
2003-10-23 by jeffrey.tenney@gm.com
Attachments
- No local attachments were found for this message.