[ECOS] Serial buffer overrun
Sat Jan 18 02:11:00 GMT 2003
On Friday, January 17, 2003, at 03:27 PM, Jonathan Larmour wrote:
> Have you enabled the serial driver for that serial port as well?
> It occurred to me belatedly that if you're looking for the output in
> GDB you wouldn't see it - you'd have to connect direct to the serial
> port with a terminal program. Should have said that before :-|.
I thought I did enable the driver, but I may have not done so correctly.
I did at one point check with a terminal app, but I didn't do so with
the final change I had made. What is different such that the output
won't appear on gdb? Does the haldiag driver understand when it's
connected to gdb and send console messages in a gdb happy form? (I do
regularly download and run the code from a terminal app and then I get
console output as well, so I presume it understands the two modes?).
I did finally get some more time to work on this today - toggled a bunch
of PIO lines in my code and then looked at it on the logic analyzer.
Found some things I knew were bad (just wanted to verify them before I
fixed them) and some others I didn't know about. Net result of an hours
work was going from being able to process 20 samples/second to 1,800 so
things are much better now.
Mostly I moved a bunch of lcd update code to a different thread - saving
tons of time in the main loop and making the display scroll much more
I'll probably move all of my packet code to a separate thread as well -
this will enable me to handle hiccups in data rate/gui update much
better. And, I can bump up my serial IO rate since 19,200 baud gives me
a max packet rate (12 bytes/packet) of 160 samples/second!
Thanks again everyone for your help!
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss
More information about the Ecos-discuss