Editing Arduino/Raspberry Pi based Dancing Clock

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 140: Line 140:
  
 
===== Processor Schematic and Board =====
 
===== Processor Schematic and Board =====
 +
 +
Single sided, for toner transfer, in Eagle ( semi-final, less ground plane, files may be more up to date )  To get a readable copy download the Eagle files and open in Eagle, see: [[Techniques#Software_design_tools | Techniques, Software Design Tools]]
 +
 +
[[Image:ProcessorBoardSch.png  | Power Supply Schematic ]]
 +
 +
[[Image:ProcessorBoardBrd.png  | Power Supply Board ]]
 +
 +
 +
Parts
 +
 +
{| class="wikitable"
 +
|-valign="top"
 +
|Part
 +
|Details
 +
 +
|-valign="top"
 +
|Wall Wart
 +
|You need one with AC output to get the 60 Hz timing signal from the power line.  Mine is a 9 v 800 ma unit.  I found it somewhere.  The output voltage, when rectified, needs to be enough to drive the motor, the PIC runs off a regulator so it does not care much about the input voltage.
 +
<!-------------------------------->
 +
 +
|-valign="top"
 +
|PIC16F877A
 +
|My favorate 16 series part, relatively lots of memory and pins.  Bigger than you need, but only about 8 bucks.  Try with an 18 series part, should not be hard and will leave you more up to date.  Let me know.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|MODE_1...MODE_6 = Rotory Switch connections
 +
|I used an old Radio Shack 12 position switch only 6 of them are used here.  You could use seperate pushbuttons, the advantage is that the position of the rotory switch indicates which mode you are in, else you may want an led for each one, perhaps using another bunch of ports.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|Single Pole double throw Momentry Switch
 +
|( or could be 2 momentary push buttons ) one moves the hands up, the other down, in the set and adjust modes.  From my junk box.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|Pull Up/Down Resistors
 +
|10k more or less
 +
<!-------------------------------->
 +
|-valign="top"
 +
|CQ1, CQ2 = capicators for the crystal
 +
|about 20 pf seems to work, see the PIC16F877A manual
 +
<!--------------------------------
 +
|-valign="top"
 +
|xx
 +
|
 +
<!--------------------------------
 +
|-valign="top"
 +
|xx
 +
|
 +
<!-------------------------------->
 +
|-valign="top"
 +
|Q = crystal
 +
|4 meg Hz is what I used.  May be quite a bit faster than needed, I have not looked into this.  The 4 meg crystal seems to work ok on a proto board.  Note that some of the code is dependent on this frequency, but could be fairly easily changed.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|RA4, RA5 = Pull up resistors
 +
|10K more or less
 +
<!-------------------------------->
 +
|-valign="top"
 +
|RB1 ... RB6 = Pull up resistors
 +
|10K more or less
 +
<!-------------------------------->
 +
|-valign="top"
 +
|RRA2, RRA3  = Pull up resistors
 +
|10K more or less
 +
<!-------------------------------->
 +
|-valign="top"
 +
|C_BP  = By Pass Cap.
 +
|.01 to .1 mfd mica or other by pass cap, good at high frequency seems good.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|RRA1 = Pull Up resistor
 +
|10K more or less
 +
<!--------------------------------
 +
|-valign="top"
 +
|
 +
|
 +
<!-------------------------------->
 +
|-valign="top"
 +
|DRIVER  = Driver
 +
|Driver chip for stepper.  ULN2803.  Good for up to .5 amp 35 volts I think.  Could use discrete transistors ( possibly darlingtons ) if you want higher current.  You should not need more current unless you make a really big clock.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|RMC  = Pull up resistor for master clear ( pull down with push button switch to reset ).
 +
|10k more or less
 +
<!-------------------------------->
 +
|-valign="top"
 +
|PUSH_BUTTON_SWITCH  = Reset
 +
|Push to reset the processor.  Mine was from salvage.
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!-------------------------------->
 +
|-valign="top"
 +
|CLOCK  = Clock input signal
 +
|Connect to CLOCK_OUT on power supply.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|VDD = Positive Power
 +
|5 volts from power supply.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|G1  = Ground Connection
 +
|To the power supply.
 +
<!-------------------------------->
 +
|-valign="top"
 +
|SW_UP, SW_DOWN = Setting switch
 +
|I used a momentary double throw, single pole, you could use 2 momentary push buttons.
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!-------------------------------->
 +
|-valign="top"
 +
|MOUNT_1...4
 +
|Mounting holes.
 +
<!--------------------------------
 +
|-valign="top"
 +
|  =
 +
|
 +
<!-------------------------------->
 +
 +
|}
  
 
=== Program ===
 
=== Program ===

Please note that all contributions to OpenCircuits may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see OpenCircuits:Copyrights for details). Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)