Nice
Would love one if I had any confidence in soldering smd parts :O
Nice
Would love one if I had any confidence in soldering smd parts :O
I'll send you some, here's a video I made for soldering SMD's:
http://www.mactronique.com/showArtMn...11&zone=movies
Lol, nice, but electronics is not so much a love of mine
I only did what I had to do to write software for it
One day I'll write an interrupt driven clock for it using DT's elapsed timer.
Didn't quite have it figured out at the time.
A clock would be nice, should not be too hard to write as I've seen some implementation somewhere on this forum. Darrel's routines for interrupt are very simple to use, so you could use a timer interrupt to derive your 1Hz signal. I have built some clocks too, but they all use I2C RTCs (so that they can keep time while power is off). Newer PICs have built in RTCs too, so that may be something to look for... but I think they require an external 32.768kHz xtal for Timer1 which is not planned on the PCB layout.
Keep in touch! I'll get back in the forum when I get the PCBs manufactured and your code modified. I'm a bit the other way around, software is not my thing... I'm actually quite impressed by the routine you wrote for this project!
I did not read the whole thread, but have you seen these yet?
http://www.sureelectronics.net/goods.php?id=1095
32x16 Red/Green LED's gives you three colors.
Very easy SPI interface. I have 3 of these linked together using just 3 SPI control signals and 3 Chip Select Signals.
I have seen other link upto 8 of these boards together. Here are a couple of links.
There are many LED drivers IC around. The nice thing here is to use only off the shelf, easy to find transistors to drive the matrix.
I have a large 16x16 chainable LED matrix in project using PWM LED drivers from TI, also interfaced via SPI.
Art, I'd need some help with the button functions to label them correctly on the silkscreen:
What is the power on mode for each wen you press UP/LEFT/DOWN/RIGHT and when the board is horizontal (like in my previous post)? it can be confusing as you have to hold the board either horizontally or vertically depending of the selected game
Yes, the joypad orientation does change with the screen orientation for Tetris.
Assuming it's held horizontal for Snake,
Power on while holding:
Up = Tetris
Down = Snake
Left = Interactive Invader Sprite Demo
Right = Serial massage programming mode
Left + Right = Non Interactive Pong Demo
Nothing = Massage display Mode.
Ok, there's a bit more modes than I thougt. I'll leave the board with generic silk screen (SW1-SW4), that way other functions can be implemented without having the wrong function written below the buttons. I've sent the gerber for quote and manufacturing, should have them back in 2-3 weeks
Got it back from fabrication. I spotted a small mistake on my behalf, a missing via hole... nothing dramatic.
Next come the assembly and modification of the source code to remap I/Os and invert the signal sent to the row drivers.
can I request or suggest Sir Art?
the 144 led game console was spectacular ^_^
im not completely good in pic basic that's why I will be needed your help or anyone out there just to improve if possible the message scroller...
i want to make it more portable.. as ive scanned your program it is very mind bugling
how about we will make the RE.1 a start/ok button???
is it possible to make a message if we use:
UP = (Capital) A to Z and 0 to 9 plus special charater
Down = (reverse) special character plus 9 to 0 and Z to A
if we will press left/right = the letters will be small letters... then press start to enter the next character
Hi, Coincidence that I checked this forum tonight...
I haven't checked, but if I remember correctly, there are no spare IO pins left on the pic.
This is probably the most readable code I've ever written as it was intended for "Human consumption"
It's free for anyone to do what they want with, but my time is certainly not.
If I were to revisit this project now, it would def be a priority to include a real time clock as long as it's
interrupt code doesn't visibly affect the display.
Nice work aberco
What are the code modifications you want to do? (out of interest)...
One simple change that would also require hardware modification:
I should have addressed leds across the opposite axis to make all leds brighter for free.
Rather than addressing 18 rows and only lighting 8 leds at a time,
I could have addressed 8 rows, and lit 18 leds at a time.
Simple change, but would require a new board and software change.
bushprogrammer (at) gmail dot com
ESP: Hola amigo... felicidades!!! tu proyecto es muy bueno!
Voy a emplear parte de tu proyecto para ver si se puede crear un osciloscopio a led. Hay muchas aplicaciones en los vehiculos que requiero emplear una osciloscopio y me parece que lo mas sencillo seria esto, ya que los osciloscopios que trabajan con la placa de sonido de las notebook son bastantes incomodos para trabajar.
Gracias por tu aporte
ING: Hello friend ... congratulations! your project is very good!
I will use part of your project to see if you can create an oscilloscope to led. There are many applications that I require vehicles use an oscilloscope and I think it would be as simple as oscilloscopes working with the sound card of the notebook are quite uncomfortable to work.
Thanks for your input
Martin Torres (From Patagonia)
Hello sir, can i ask, what was the program you used in your tetris project? and also the schematic. Thanks Sir art. God Bless
To Art: Thanks for posting this project and providing the code for others to use on their own projects. It has been a tremendous help.
I'm trying to avoid asking for a handout however I've run into several issues trying to build this this gaming console with a few modifications. I am new to programming PICs and other projects are likely easier to start with, however, I think with a few suggestions from others with more experience I'm hoping to make this work.
Instead of using a 16F877 I opted for the newer 16F887. I'm also using two of the 8x8 LED matrices from SparkFun for a total of 128 LEDs (8x16) as opposed to the 144 LED (8x18) display that the code was written for.
I'm hoping to use the internal 4Mhz clock of the 16F887 to allow more I/O pins for other devices. This can be changed in the code relatively easy but I'm unsure whether using a 4Mhz clock will cause unforeseen issues since console was designed around a 20Mhz oscillator.
I'm also trying to figure out how the rows and columns are defined in the code. I need to make changes since I have two less rows of LEDs (if playing tetris, vertical display) but I'm having issues deciphering how the rows and columns are defined.
If anyone has any suggestions I could use push in the right direction. Also, please post if you notice any other issues or changes that will be necessary when using the 16F887 in place of the 16F877.
Thanks in advance!
Hi, I don't check in often unless I'm writing for pics at the time...
I'm going to get ports wrong if I guess here, given that it's years old now,
so just to describe how the rows and columns are defined... the display is
8 LEDs high to fit one column in a byte, so since it's a mono colour display,
the whole display buffer is 18 bytes
I use in line assembler (if I remember correctly), or an asm/PBP combination
to address the bits of each byte in each column.
C0 - C17 are the bytes for each column, they are being strobed in the draw screen routine.
hello, art
well I am new to this and would like to know how to connect the pulsating since I have not clear yet, you could help me. And this other your work is great.
Sir@Art
Thanks for making an awesome project like this.
I am trying to make a PCB of it and hope to make it very soon.
I have some random question,
1#which version of PIC BASIC PRO did you used
2#what was the version of BASIC language that you used to program
Thanks in advance
Hi,
I built the console and it works well.
Unfortunately, I am the exact opposite of Art
I do love electronics, but on the software side i only do what i have to do to get it running.
Tetris works perfectly, but at Snake the keys are swapped by -90 °.
I hold the console horizontally and have soldered the buttons directly to the board.
So if I want to go right, I have to press the top button.
If I want to go left, I have to press the lower button.
If I want up, I have to press the left button.
If I want down, I have to press the right button.
For clarification, here is a picture of what the buttons are doing.
Hopefully someone can change the v3 for me so that it fits.
I would be very grateful!
Snake is plyed in landscape orientation, you're supposed to turn the whole
circuit board sideways, in the same orientation that the message is scrolled,
and then the high score will appear the right way too.
Hi Guys,
I am still getting emails from people making this project.
Most have it working, and just ask questions about programming new messages.
Some emails are form people who put the whole thing together with transistors facing the wrong way,
reflecting an error in my original schematic diagram.
Does anyone have any idea where this original schematic might be sourced?
The last time I tried to find out, but didn't hear back from the guy making the project.
bushprogrammer at google's mail domain.
Cheers, Art.
Hi
People are still making this, and talking to the last person to make it on a photo PCB,
an error has been found int he schematic (might not apply to PCBs made in CAD).
The schematics in the package show the wring pic pin for one of the buttons.
It’s actually the pin that drives the lone LED, so should have been found by anyone proficient actually making it.
With the error, the display will constantly show “Tetris”, and stay there no matter what buttons are pressed.
It’s waiting for the button that was held at power to start Tetris, to be released (and that never happens).
I want my money back.
My Creality Ender 3 S1 Plus is a giant paperweight that can't even be used as a boat anchor, cause I'd be fined for polluting our waterways with electronic devices.
Not as dumb as yesterday, but stupider than tomorrow!
Bookmarks