After purchasing a Roboduino Duemilanove from Mike at Earthshine Design, I wanted to dig straight in!
So I did, and with the help of a breadboard, a bundle of wires, and some loose parts, I quickly found out that my electronics knowledge was buried under a big pile of dust
All in all, even before I ordered it, I knew what I wanted to make.
Snake on a dotmatrix
And to my own surprise, I did!
The colors are really bad with the current lighting, together with my MacBook camera, but perhaps I can post a better video when daylight returns
The snake is red, the head is orange (so you know which way is front) and the goal is to catch the green apple.
Everyone probably knows the game, but just to be sure:
If you hit yourself, you lose. If you eat the apple, you get 1 bodypart longer, and a new apple appears randomly. When hitting a wall, you appear on the other side (some versions, hitting the wall kills you, found that boring :P)
Any feedback is welcome!
Will try to post up my code as well, even though it's not that high-tech.
Oh and before I forget, the partslist:
Roboduino Duemilanove
8x8 red/green led matrix
3x 74hc595 shift register
100nF capacitors on the vcc of the registers
2x uln2803 darlington array (current sinks for the cathodes)
Cool! I ordered some dotmatrices (?) from sparkfun, i'm still waiting for something in the order to come in stock.
I got two dotmatrices and the electronics to drive them, and I found a convenient box at staples that can perfectly fit these in the lid, along with a little space for buttons, etc.
You have a bunch of shift registers and drivers but, in the end, you're scanning one row at a time - right? So the leds have a maximum 1/8 duty cycle?
Indeed they have a 1/8 duty cycle max, so the darlington arrays are probably a bit overkill for the situation. Why I did it is because of 2 things.
Errors are easily made, and in this situation it will not hurt the setup if I decide to light them all at once by accident. And I am good at accidents
These shift registers can sink a little bit of current, but their real job is to do the logic part. I feel that I shouldn't use parts for things they aren't meant to do. (see point 1 again :P)
secret 3) To learn. It's my first build in a long time, so a big part of it was curiosity
Haha you're thinking about a side-scrolling shooter? or the game where you have to avoid incoming rocks?
Might just do that.. although I can't really add a second display to this pcb, so would have to create a new one, or at least move the display to a new pcb.
How about a snake game with a specific goal
you have the snake game on one screen, and the plane on the other. As you collect food, you move through the plane til you get to the cockpit. Muahahahaha.
Thats great it reminds me of learning to program with "snakes.bas" (and modifying "gorillas.bas" to have nuclear bananas ) silly basic programs that came with windows 3.1
Thats great it reminds me of learning to program with "snakes.bas" (and modifying "gorillas.bas" to have nuclear bananas ) silly basic programs that came with windows 3.1
They were dos games, not windows games. They were still great though
This is really impressing...but i´m somewhat of a novice in programming so i almost understand nothing in your code.
Would it be possible to add some comments into the code so that beginners can understand what part does what??
Would be nice and encouraging for others...