1
\$\begingroup\$

I've been playing around with an idea for a little hand-held gaming device using a Nokia 5110 screen and an ATtiny85.

The ATtiny is programmed using my Genuino UNO as ISP.

I was wondering if it's possible/sensible to include a breakout connector on the attiny pins so I can just plug it in whenever I want to update the code, rather than having to remove it from the gaming device? I'm worried about how signals from the ISP would interfere with the other devices connected?

I used Fritzing for the very first time to create a diagram of what I'm thinking of so far (I've breadboarded parts of it with the UNO instead of the ATtiny, and I haven't actually tested sharing the clock & data pins with the 3 controllers yet! The real thing would have more buttons and LEDs!)

enter image description here

\$\endgroup\$
2
\$\begingroup\$

Yes, it is very common to put a 6-pin ISP header on your board to allow the AVR to be reprogrammed in place. Even the Arduino has one of these on it.

Here is a nice application note from Atmel describing the typical pinout of the header along with some suggestions on how to make sure there will not be conflicts with the normal operation of the programming pins...

http://www.atmel.com/images/doc0943.pdf

If you plan on mass producing the board, you can even avoid needing the header by using this handy connector...

http://dangerousprototypes.com/2012/12/10/isptouch-header-less-isp-connector-for-avrs/

...or this one...

http://www.tag-connect.com/

Finally, you can connect directly to the chip itself using a chip clip like this ...

http://www.amazon.com/8-Pin-Gold-Plated-SOIC-Spacing/dp/B00DDE7N3C

\$\endgroup\$
  • \$\begingroup\$ You haven't addressed the central question \$\endgroup\$ – Chris Stratton Dec 1 '15 at 15:27
  • \$\begingroup\$ Only question is see in the OP:"I was wondering if it's possible/sensible to include a breakout connector on the attiny pins so I can just plug it in whenever I want to update the code, rather than having to remove it from the gaming device? I'm worried about how signals from the ISP would interfere with the other devices connected?" My answer: "basically yes, and here are things to think about and suggestions on how you might want to do it." What am I missing? \$\endgroup\$ – bigjosh Dec 1 '15 at 15:29
  • \$\begingroup\$ This does indeed answer my question, thank you. The document recommends series resistors on the 3 pins I'm using for latch commands on the 3 'shift registers'. And since they are all used as outputs during normal operation, 1 or 10k should suffice there I would think? It's only reading that first document that I realised what I'm looking for is what In System Programming actually means! It also suggests that I should probably tie the RESET pin to Vcc for normal operations. I just need to test that I can actually share the CLK and DATA lines on all 3 shift regs now! \$\endgroup\$ – MalphasWats Dec 1 '15 at 16:10
  • \$\begingroup\$ It should be all fine. You just need to make sure that the pins used for programming are not tied directly to ground or power. It's ok to have them pulled up/down with weaker resistors than the programmer's. \$\endgroup\$ – Nazar Dec 1 '15 at 16:12
  • \$\begingroup\$ Now I'm not sure how I'd get RESET to go low when the programmer is connected if it's connected to Vcc on the board?would it be as simple as putting a resistor in series with Vcc on the board? \$\endgroup\$ – MalphasWats Dec 1 '15 at 16:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.