Week 6 of HTMAA focussed on application of the basic circuit expereince that was developed earlier in the class. I've designed a circuit before using seven segment displays and basic logic gates, so most of my investment this week was in learning the Eagle software recommended in the class. Previously I'd used multisim and xylinx.
We were tasked with taking an existing board, and adding an LED and push button to two of the four availble pins on the ATTTiny44 IC. This would require a current limitting resistor to protect the LED. Using the data sheet available on digikey.com, I saw that the LED wanted 40mA nominal. This translated to a 130 ohm resistor, but I decided to use a 499 ohm just in case. I decided to add two more breakout pins while I was at it for later expansion of the board.
Below is my "rats nest" or circuit schematic
Eagle has a very good system for taking this schematic and developing traces using libraries of parts. the fab.lib was available online, and served as the basis for this project. When the schematic was opened as a board, helpful yellow lines appeared showing all of the pads that needed to be connected by traces. It was quite an enjoyable puzzle trying to optimize the connections while minimizing jumpers. At the end, I did need one, but the rest of the board fit into a fairly small package size.
It was important to consider minimum acheivable feature size. The endmill we were using was 1/64" in diameter. therefore minimum spacing between traces and pads was 0.016" I ended up using 0.02 which probably inreased cut time but provided a safety margin.
Milling and stuffing the board was largely uneventful. The only real issue was one location where minimum feature size was missed, and the pad was shorted with the adjacent wire. Some surgery with a multitool soleved this, and the board was ready to use. At this point I have not yet tested functionality, but I don't expect there to be an issue
I'd like to see if I can build a seven segment display watch, with a ribbon cable strap. I just need to figure out how to rout the requisite number of pins.