This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Serial Driver + Multithreading
- To: "Chris C." <hksbtx at 2bzd dot com>
- Subject: Re: [ECOS] Serial Driver + Multithreading
- From: Jonathan Larmour <jlarmour at redhat dot com>
- Date: Thu, 06 Sep 2001 21:53:43 +0100
- Cc: ecos-discuss at sourceware dot cygnus dot com
- Organization: Red Hat UK Ltd.
- References: <2650020018329151513859@2bsure.com>
"Chris C." wrote:
>
> 1. only transmit to pc (in loop)
> 2. only receive from pc
> 3. transmit to (in loop) and receive from pc (hold on the enter key to send
> a block of data)
>
> In case 1 and 2, the serial driver can work fine but it can't work in case
> 3. The problem occured in case 3 was that it can work correctly within a
> short time and then it can't do the transmit and receive. I use the Ctrl+C
> to break the program, I always see it break in the idle_thread_main.
>
> What is the possible problem that cause the program run into this function?
You could look at the eCos at91 serial driver anyway for comparison
purposes. Without seeing your ISR/DSR it would be difficult to guess
anyway.
> What is the best way to do the debugging?
Use "info threads" to list other threads than the idle thread, and then the
"thread" command to switch GDB's view of threads. Type "help" to get more
information on GDB commands, or read the GDB manual.
Jifl
--
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine