[ECOS] serial line ISR problem -- again:(
Piotr Trojanek
ptroja@elproma.com.pl
Wed Sep 10 11:11:00 GMT 2003
On Wed, Sep 10, 2003 at 10:17:06AM +0100, Robert Cragie wrote:
> It would help if you post truly representative code, i.e the most basic set
> which exhibits the problems. Anything else confuses the issue considerably.
you're right, so here it goes...
the output from my program is:
iid = 0x00, c = 0
msr = 0x88, c = 0
iid = 0x00, c = 0
msr = 0x08, c = 0
... [this loops forever, and this sequence takes about 1 second
(DCD is high for 0.2 second), which coresponds to signal I can see
on osciloscope and my test LED diode]
as you can see, I read Interrupt Identification Register (iid) in UART, and
when it says there is a pending interrupt (iid = 0x00, which also means
that it was interrupt was caused by change on input signal lines) I
simoply reads modem status register to reenable interrupts from UART.
values 0x08 and 0x88 coresponds to signal change on DCD line.
so, there is a proof, that my hardware works fine and exactly as I
expect. all works just fine in polling mode.
now I need to make it works in interrupt mode, but my ISR is not executed
by ECOS. under both Linux and FreeBSD COM1 works fine under IRQ4.
--
Piotr Trojanek
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pollintr.c
Type: text/x-csrc
Size: 1884 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/ecos-discuss/attachments/20030910/f05dc688/attachment.bin>
-------------- next part --------------
--
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
mailing list