Tim Holloway wrote:Yikes. Arduino and the Arduino IDE are "too easy".
A friend of mine was big into PIC and Basic Stamp before Arduino came along. He seemed to like them. I've never tried myself. I like "too easy".
Tim Holloway wrote:I2C and SPI are two different protocols, so you'll need separate pins for them (up to 4 for SPI and 2 for I2C). And I hope you're at least allowed libraries. After a while peeking and poking get old.
Tim Holloway wrote:
I buy my components on Ebay. Quite a few "Arduino" stores there are actually little short of on-shore warehouses for China, so the prices are good and the service is fast - generally within a week of the order. If you order from China direct, you'll get a lot better price, but it may take more than a month to arrive. And that's when we're not having a trade war with them. I'll settle for dealing with the Vietnamese folks in Atlanta.
Tim Holloway wrote:Yes. Pull-ups and voltage limits are 2 different things. Without a pull-up, an open-collector circuit has no natural "high" voltage when it's turned off. It's not built into the transistor. After all, I think 2N2222's can handle at least 35v as long as current limits are observed, but if you don't connect a voltage to the collector, the collector voltage is more or less unknown. Probably a little above 0.6v when "high", due to leakage from the base-emitter junction, but that's far less than the necessary voltage to register as a logic "1" on even 3.3V circuits. Plus, the impedance is so high, that if conditions are right, circuit connections can pick up random radio signals and add them in, causing instability. A pull-up eliminates that by providing a relatively strong current into the collector, and since E=IR, that shows up as a stable voltage on the AVR input.
An AVR whose inputs aren't 5V tolerant simply means that feeding a 5V logic level to a 3V3 input risks frying the chip and letting the smoke out.