Subject:
|
Re: I2C device for the RCX
|
Newsgroups:
|
lugnet.robotics
|
Date:
|
Tue, 14 Jan 2003 08:05:48 GMT
|
Viewed:
|
1080 times
|
| |
| |
Dick Swan wrote:
>I don't understand your references to clock pulses. The I2C protocol
>is edge triggered with a data bit transferred as the clock signal
>transitions from a LOW to HIGH value. Where do clock pulses come into
>play?
OK, as a beginner, I should be more carefull whit what I'm saying whit
all these professionals around..
Whit clockpulses, I meant the signal which is on the SCL line. after
all, SCL line means Serial clock line, so clock puls seemed like a good
word for it to me. But allright, you are right, I shall call it clock
signal the next time.
> "Bastiaan v.Kesteren" * wrote in message
> news:H8nvnF.2rz@lugnet.com...
>
> > snip
> >
> >
> > At the maximum speed, whit a good (low) package lost, the program
> > takes 3750 ms, and has a package lost of 7. So the RCX has send 1
> > adress package,250 data-packages, and 7 adress and data packages(the
> > lost packages)
>
>
> A 3% error rates (7 out of 250 messages) is far too high. I would have
> expected error rates under 1 in 10 million range. Either your
> hardware/bus is extremely noisy or else you're experiencing some nasty
> software side effects / bugs. the serial link I2C bus should be far
> more reliable than your internet connection; how well would your ISP
> connection perform if every 35th byte was in error?*
Yep, that would be bad. I got a software problem here: generating
precise pulses on a sensor or motor port is very hard under brickos. To
get it more stable then i got it now, I got to 'hack into brickos'
And by the way, I can get this error rate lower (most of the times 0,
sometimes 1 is dropped), but that means lower speed. Whit this 7 out of
250, I got the best speed/error relation. At the best 'low error rate'
speed, the program takes 30180ms to execute. This is, by the way, still
faster than the original NQC version...
> *
> > snip
> > NQC max speed 27 bits/sec.
> > BrickOS max speed 636 bits/sec.
> >
> > snip
> > ...the maximum speed of the I2C bus at normal speed is 100Kbits/sec.
> > i got here 636 bits/sec, So it could go a LOT faster, but therefore
> > the pulses must be much more stable.
>
>
> You've achieved some good throughput but the RCX is more capable than
> that. An I2C bus is internally used in the RCX to interface to the
> LCD. I've measured its performance and RCX transfers data to the LCD
> at 75000 bits per second on this I2C bus.*<>*
> Your external I2C bus should be able to achieve similar rates; the
> internal LCD I2C bus uses bits 5 and 6 (clock and data) of I/O Port 6
> on the H8 CPU and the sensors 8 volt outputs are connected to bits 0,
> 1, and 2 on the same port.*
Is it? As far as I know the 3 sensors and the battery indicator are
connected to a multiplexer.(or so i've been told). Could he make such a
high speed? I doubt it, especially when it is used by all three sensors
and the battery indicator at the same time.
But I will check this out, about port 6 e.d.
BTW: what is the use of 75000 bits/sec? Wheter powering up a motor or
reading out a sensor takes 1 or 0.001ms (just piked some numbers here ,
no idea what the real speed would be). I think 636 bits/sec is already
quiet fast. especially when you see that the sensor port of the RCX was
never designed to produce clock signals, or something like it. I think
it would be a good idea to first use this device for a while, to make
some devices for it, and to see what can be done whit it, and if it
turns out to be to slow, than I can go into these software problems.
Now that we are talking about speed, what is the speed of the LepoMux?
The website seems to be down, so I can't check it out myself. You guys
made the clock signal at the motor port, and made it better by hacking
into BrickOS. What speed came out of it? (yust to know what can be done
whit it, and to see whether its worth all the trouble...)
|
|
Message has 1 Reply: | | Re: I2C device for the RCX
|
| (...) Lepomux works with a serial protocol (5 bit preamble, 8 bit data, parity) based on a halfbit-clockspeed of 1 kHz. So compared to your I2C-driver it is dead slow (about 33ms/byte = 30 bytes/s). This slow speed has two reasons: - it's possible (...) (22 years ago, 14-Jan-03, to lugnet.robotics)
|
Message is in Reply To:
| | Re: I2C device for the RCX
|
| "Bastiaan v.Kesteren" <b.van.kesteren53@zonnet.nl> wrote in message news:H8nvnF.2rz@lugnet.com... (...) takes (...) package, (...) A 3% error rates (7 out of 250 messages) is far too high. I would have expected error rates under 1 in 10 million (...) (22 years ago, 13-Jan-03, to lugnet.robotics)
|
24 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
This Message and its Replies on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|