unless you wanted to, say, put -everything- onto another microcontroller. in which case you would try to do the PWM on the attiny2313 and have that controlled via i2c.
and the attiny2313 only has 2 timers by the way, whereas the atmega168 has 3, so you'd have to do the PWM in software which means tons of fun debugging that and i2c communication at the same time. especially difficult when the user wants 8-bit PWM is at >20khz!
also, where are you getting an attiny2313 for $1.45 in qty 1? and a 8-pos DIP switch for $0.75 in qty 1?
Futurlec. Cheap shipping too.In quantities of 100 the prices are $1.05 and $0.60 respectively.
i wont copy and paste a 5-page long email thread i've had regarding orders placed with 'em, suffice to say, the prices are good because you're unlikely to ever get the parts.
for example it would only increase the price by about 3 dollars.~$1.45 for a ATtiny2313 for the I2C interface and ~$0.75 for a DIP switch to select the address.
I just found a great example of a very simple solution here, Totally user configurable... with just a few wires.http://www.ladyada.net/make/eshield/wire.htmlI think the simple solutions are often the most elegant, kudos to you, ladyada.
ok, so I wasn't totally off on the I2C thing. It sounds like a great idea, but it definitely introduces added costs(however large or small) and requires some software for the 2313.Simple jumper wires don't seem to create any additional work other than in the PCB design, and add maybe a nickel to cost for the jumper wires.... kinda seems similar to my idea about jumpers, just easier to implement.I'm gonna play with some stacky headers this weekend too.... but they are also a bit pricey... Any other ideas?
Quotei wont copy and paste a 5-page long email thread i've had regarding orders placed with 'em, suffice to say, the prices are good because you're unlikely to ever get the parts.Heh. I've always gotten my stuff. Sometimes it takes a little while if you order one of their boards (waiting on a 3.3v switching regulator board atm) but the components come fast.
Isn't implementing an I2C "slave" difficult, though? Or was that SPI? There are a couple protocols where the master has it easy, but the slave has to be able to toggle a signal on a clock edge (or similar), which is tough to do in SW.