This Forum is Dedicated For all The Object Oriented PIC Lovers .......... The concept behind OOPic is straight forward. Use preprogrammed multitasking Objects from a library of highly optimized Objects to do all the work of interacting with the hardware. Then write small scripts in Basic, C, or Java syntax styles to control the Objects. During operation, the Objects run continuously and simultaneously in the background while the scripts run in the foreground telling the objects what to do.

Tuesday, September 11, 2007

Re: [oopic] Re: Digital Potentiometers

Well coding in C is a little over my head. What I was hoping to do is activate a sequence of pot adjustments and other external devices and switches with a single external button. 5ms might just do it. I was hoping it would be similar to the oServo programing format. Since that is very similar to what I am doing.

Sounds like it is time to make a Resistive Digital-to-Analog Converter object. I think it would be really useful. Basically it would mean that any analog device could be easily hacked and then manipulated by the oopic.

Do you think I could look at an example of the I2C code for the max5477?

Thanks again,

Carson


rtstofer <rstofer@pacbell.net> wrote: --- In oopic@yahoogroups.com, carson hoyt <carr6565@...> wrote:
>
> Thanks Richard that is exactly the kind of information I'm looking
for. Another thing, I'm really looking to use multiple digipots, if I
am making a lot of adjustments to the digipots is there going to be a
lag time since the connection is I2C? Also can I control the pots
individually on the I2C line if they are daisy chained together?
> Concerning resolution: I'm going to be using these pots in an audio
device. Should I be concerned about resolution. Right now I'm looking
at pots with 1000+ resolution but these are kind of expensive and not
available through my usual part supplier. I guess I'll just start
small and work my way. I really appreciate the help.
>
> Carson

There will be a way to have unique I2C addresses for quite a few
devices. At least 8 in the case of the Maxim MAX5477..MMAX5479.
Beyond that, things get complicated. Remember to divide the address
by 2 when using the OOPic. Why? Well, the least significant bit is
the R/W' bit and only the most significant 7 bits are address bits.

The lag time for an OOPic will vary because the OOPic has to read the
Basic code, interpret what needs to be done and then bit-bang the I2C
message. Then it starts on the next 'pot. I would expect 5 mS
between 'pot adjustments but that is just a wild guess. I have never
timed it. It could be much more...

If speed is your requirement, the OOPic isn't the way to get there.
The 'pots can handle a 400 kHz clock rate and, if each command takes 3
bytes, you would be looking at changing them at more than 10,000 times
a second. Or all 8 in about a mS! But that would be with a more
capable uC and coding in C.

Richard




---------------------------------
Shape Yahoo! in your own image. Join our Network Research Panel today!

[Non-text portions of this message have been removed]


Yahoo! Groups Links

<*> To visit your group on the web, go to:

http://groups.yahoo.com/group/oopic/

<*> Your email settings:
Individual Email | Traditional

<*> To change settings online go to:

http://groups.yahoo.com/group/oopic/join

(Yahoo! ID required)

<*> To change settings via email:
mailto:oopic-digest@yahoogroups.com
mailto:oopic-fullfeatured@yahoogroups.com

<*> To unsubscribe from this group, send an email to:
oopic-unsubscribe@yahoogroups.com

<*> Your use of Yahoo! Groups is subject to:

http://docs.yahoo.com/info/terms/

No comments: