| | Re: Brainstorms
|
|
(...) I did a project with the Philips chips several years ago. I2C worked very well, the smallest chip I used was a 87C751. A little bit bigger than an 8-pin chip, but available in surface mount packages. Also, a friend of mine used a 751 as an I2C (...) (22 years ago, 12-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
(...) [snip Philips uC] (...) The I2C bus is not really designed to support a bus scan. I'm not saying it can't be done, but I certainly haven't figured out how to do it. Until I see somebody who gives an extremely detailed description of how they (...) (22 years ago, 13-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
Matt Lawrence wrote: > I think the addressing problem can be solved with random numbers and some > serious bus scanning. Failing that, burning a serial number into each > chip isn't that hard either. It would still require quite a bit of bus > (...) (22 years ago, 13-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
(...) Since I had to support hot-pluggable devices on the bus (not my idea), I had to continually scan the bus. Unfortunately, that was several years ago and I don't remember all of the details. It took either a zero-length read or a zero-length (...) (22 years ago, 13-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
Hi, (...) Weird idea ... (...) It's way simpler: You just send the address and wait for the acknowledged via the data line. Then you just don't continue ... you don't even need read access to the clock line for this. IMHO something that can carry (...) (22 years ago, 13-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
(...) [snip hot pluggable] (...) That is only a partial bus scan. It does not tell you what is at each address. A full bus scan allows people to plug arbitrary devices into the bus and allows the bus master to to reliably figure out what has been (...) (22 years ago, 13-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
(...) I have read this dicsussion, and have been most interested. From what I can understand (I have no current desire to read the I2C spec) the random ID number will identify that device on the bus once it is detected (or the permenant number, (...) (22 years ago, 13-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
(...) I thought Philips kept a master registry of all the hardwired I2C addresses allocated to each chip vendor? That should mean that just reading the hardwired address is enough to tell you what *kind* of device you've found. ---...--- Steve Baker (...) (22 years ago, 13-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
(...) There are only 1024 maximum addresses. There are more than 1024 I2C chips out there. Ergo, there are address conflicts between some of the chips out there. Unfortunately, there is no requirement that 2 chips at the same address implement the (...) (22 years ago, 13-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms -- A Simple Unique Addressing Scheme
|
|
There's been a lot of messages on how to determine unique addressing for intelligent peripherals. Model railroading has solved this problem in a fairly easy way. THe NMRA (National Model Railroading Association) defined the DCC (Digital Command (...) (22 years ago, 14-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms
|
|
(...) Andy: I can understand not wanting to read the I2C spec., I haven't done it in a while myself. However, you are going to have to do a little homework on I2C. There is no real way around it, the bus is sufficiently complex that one's intuition (...) (22 years ago, 14-Aug-02, to lugnet.robotics)
|
|
| | Re: Brainstorms -- A Simple Unique Addressing Scheme
|
|
(...) [snip DCC references] (...) That might be workable. I2C does not really have a broadcast message (General Call is close, but not quite). However, just scanning the I2C bus for 1024 addresses to find what the current address of the module is (...) (22 years ago, 14-Aug-02, to lugnet.robotics)
|