Don't know, never used the DS1307, can you send a linkt to a datasheet? The drawing looks very nice.I believe you have the right arduino pins (or at worst they are swapped).

For push buttons, why not use the internal pullups and switch to ground instead? Save on a few parts.Which pins are PC0 & PC5? Aren't those the analog pins?You already have A5 committed to SCL above, so that wouldn't be a good choice for an input pin.

Sounds Very good, i guess i will stick with the 2 push up buttons to set the hours and the minutes, it is much easier for me to understand, the newbee as i am I guess my hardware part is done .. thanks for a big help, i learned a lot.

now i have to move to the coding part, and i guess i will read the earlier post you answered earlier, i should learned something from there, since i guess it will fit with what i am doing.

i will surely ask for more help ... and i will publish my steps so others can learn something too

Need to declare your time set buttons as pinMode inputs. (just good coding practice - may work as is with the default after a reset being to put the pins into input state I believe).

You declare a bunch of stuff in setup that belongs prior to setup. May work as is, again just good coding practiceeverything from int hours_display[13];down to number_to_display[12] = 0011111100111111;

Okay, this part will be a gotcha:You have void loop, void setup, and then void loop again. I would probably take the button reading stuff in the first void loop and insert it before } that ends the 2nd void loop.I'm not sure how fast the 2nd void loop goes thru, probably pretty darn fast since the 2 if conditions are only met once/hour and once/minute.

You likely need some debounce code with the button press to avoid multiple changes with each press.You have access to seconds with time.h? Maybe ensure that digits only change once a second or something.

int buttonState; // the current hourstate from the input pinint lastButtonState = LOW; // the previous hourstate from the input pinint buttonState2; // the current hourstate from the input pinint lastButtonState2 = LOW; // the previous hourstate from the input pin

long lastDebounceTime = 0; // the last time the output pin was toggledlong debounceDelay = 50; // the debounce time; increase if the output flickers

//Hour adjustment// if the button is pressed// 1) reset the debouncing timer// 2) take the debounce delay as the current state// 3) Set time// 4) save the hourstat

i just tried to make the setup .. i can flip the dot one way, but nit the other way ! .. i guess that i have to use a H-brigde anyways. i've looking around at the internet and i guess i will use "L293D"

it can only run 2 stepmotors / electromagnets at a time ... my question is what is the smartest to do, one H-bridge for every single electromagnet ? and please how can i connect these to my shift registers ?