This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
RE: Question about system bus
- To: "eCos" <ecos-discuss at sources dot redhat dot com>,<harri dot siirtola at vtt dot fi>
- Subject: RE: [ECOS] Question about system bus
- From: "HuangQiang" <jameshq at liverpool dot ac dot uk>
- Date: Tue, 19 Jun 2001 09:32:51 +0100
-----Original Message-----
From: harri.siirtola@vtt.fi [mailto:harri.siirtola@vtt.fi]
Sent: 19 June 2001 08:36
To: HuangQiang; eCos
Subject: Re: [ECOS] Question about system bus
At 17:31 18.6.2001 +0100, HuangQiang wrote:
>Hi all:
>...
>e.g.
> reading from the ext IO
>
> int k;
> *EXTIOBANK0 = 1;
> k = *EXTIOBANK0;
> // now k is not the same as what I have written to ('1'). why ?
>I don't know of EB7T exactly but in many processors, an I/O port defined as
>an output is write-only. So you must maintain a static variable to hold the
>last value written to the port. You said you're getting proper select
>signals so I suppose your EXTIOBANK0 declaration is ok (otherwise the first
>thing to check).
But in the source code there "k!=1" ( I check it using the debuger). So if I
want to read a data from a memory location how can I use it?
by "k = *EXTIOBANK0" or other means?
When I write the data to the external memory location by "*EXTIOBANK0 = 1" ,
I can get the CS signal for ext io bank0, while read I can't get the CS
signal, why? Thank you
huang
>
>Thank you
>
>huang
Harri