Show Posts
Pages: [1] 2
1  Using Arduino / General Electronics / Re: Decoupling 74hc595 on: October 19, 2011, 03:17:28 pm
Thank you for the link.

I have rewired the 595s on the breadboard to make sure that power and ground are as close as possible on the chips, and have implemented the 220ohm resister as you have recommended.

But the matrix was still flickering in places it shouldn't be. I managed to solve the problem but I am not sure why my solution works. If you could give me an explanation would be great.

I have a 9v wallwart going into a 5v regulated power supply circuit on the breadboard. I have connected my 3 595s to it as well as the LED matrix. My arduino is powerd by the USB cable running from my computer and from it I have 3 wire ( data, clock, and latch) going into the 595's that are located on the breadbaord. When I have it setup this way I have flikering in my matrix. But if i connect the ground rail of the breadboard to the arduino flickering stops and everything runs perfectly.

I am puzzled by this, since I have thought it doesn't matter where the ground connection is.




The problem is broadly one of "signal integrity"; my guess is that you are either seeing a bad case of overshoot/undershoot/ringing, or reflections due to long wires between the Arduino and the '595.

Here is some good bedtime reading:

http://en.wikipedia.org/wiki/Signal_integrity

--
The Ruggeduino: compatible with Arduino UNO, 24V operation, all I/O's fused and protected

2  Using Arduino / General Electronics / Re: Decoupling 74hc595 on: October 18, 2011, 07:43:13 am
Can you tell me the name of the problem, so I can read about it. I will come home and give it a tr

Thank you
That's a symptom of another problem then. Try putting a 220 ohm resistor in series with the latch signal (instead of the capacitor). Also make sre the grounds of the '595 chips go to the Arduino over as short a path as possible.

--
The Flexible MIDI Shield: MIDI IN/OUT, stacking headers, your choice of I/O pins

3  Using Arduino / LEDs and Multiplexing / Re: 3 separate 74HC595 how to control? with less pins on: October 17, 2011, 10:28:04 pm
Thank you for everyone's comments and help.

CrossRoads can you explain your advice, I am not familiar with the method. does it require an additional IC?

Connect to the SPI pins, SCK & MOSI, with a chip select that latches all 3 at once.
SCK parallel to all 3, MOSI daisy chained, CS in parallel to all 3

This will write them really fast, compared to shiftout:

digitalWrite(CS, LOW);
SPI.transfer(byte1);
SPI.transfer(byte2):
SPI.transfer(byte3);
digitalWrite (CS, HIGH);
4  Using Arduino / General Electronics / Re: Decoupling 74hc595 on: October 17, 2011, 10:07:28 pm
Got it thank you, but if i take out the latch capacitor the LED matrix goes berserk on me
5  Using Arduino / General Electronics / Decoupling 74hc595 on: October 17, 2011, 09:28:59 pm
Hey guys,


I have read and been told that I should place 0.1uF ceramic capacitor on Vcc pin 16 of the 595. Now I have three 595s do I have to place 3 capacitors 1 for each chip or only one is needed?

One more question, I was reading this tutorial here ( http://www.arduino.cc/en/Tutorial/ShiftOut ) and if you scroll down to part "2. Connect to Arduino" it says that I have to place the capacitor on the latch pin if I am having problems, but nothing about placing one on the Vcc.

6  Using Arduino / LEDs and Multiplexing / 3 separate 74HC595 how to control? with less pins on: October 16, 2011, 10:15:23 pm
Hey guys,

I have 3 different 75HC959 shift registers connected to Arduino. I tried to share the data and the clock pin for three ics and use separate Latch pins, to cut down on the number of pins needed to be used. But the LED matrix would not work properly.

Do have do to have three separate (data,clock,latch) for each shift register that I need to control?

Thanks


7  Using Arduino / General Electronics / Re: Powering Arduino makes a difference? on: September 29, 2011, 12:20:53 am
I think current limit could be in effect - the 500mA USB specification is not the default current limit, its the maximum limit a USB host is expected to supply.

USB is supposed to negotiate current requirement via a request packet of some sort - I have no idea if the Arduino does the right thing to make this happen (I suspect most USB hosts just supply 500mA anyway from the start).

 [Usually pattern sensitivity with switching lots of LEDs is a supply or decoupling issue - you have adequate decoupling for the shift register?]

By decoupling, do you mean placing a small capacitor between Vcc and GND (just looked it up). I didnt do that, Would a 1uF work? That is the lowest I have :/
8  Using Arduino / General Electronics / Re: Powering Arduino makes a difference? on: September 28, 2011, 07:38:50 pm
Strange, at max I would be drawing 240mA.

See it gets stranger if I try to light 6 out of 8 leds, it works fine.

But if i do 2 out of 8, I start to have issues.
9  Using Arduino / General Electronics / Powering Arduino makes a difference? on: September 28, 2011, 07:20:34 pm
I ran into a small problem, and was wondering if my assumption was correct and if my solution was right too.

When it comes to electronics I am pretty green, so please forgive me.

Today I was reading an instructable dealing with Shift Register (http://www.instructables.com/id/The-74HC164-Shift-Register-and-your-Arduino/?ALLSTEPS  ), and came upon a problem. I had problems shifting out different patterns of LEDs. At first I though I had a defective chip. After changing the chip the problem persisted. Next I noticed that if I reset the Arduino a couple of times I would get a correct pattern displayed. I tought that maybe it might be something to do with my power source. I was running my Arduino from the USB. I tried connecting Arduino via my 5v power supply (http://www.sparkfun.com/tutorials/57), and everything started to run smoothly.

So the question is. Is the USB power not clean? and that is why I wasnt able to displayed a correct patter or was it something else?

Would it be possible to solve this with some other method?
Any links on the subject matter would be greatly appreciated.


Thank you.
10  Using Arduino / Project Guidance / Re: Can I build a connect 4 clone on: September 21, 2011, 06:50:33 pm
Nickvd

Thank you,

Now I know that the hardware allows this to happen. Before I jump into this I would need to learn about shift registers and such. Any recommendations on a smaller project that will allow me to learn about them?


By the way fantastic looking project. How much knowledge of electronics did you have before you started it?
11  Using Arduino / Project Guidance / Can I build a connect 4 clone on: September 21, 2011, 04:41:44 pm
For my second project I was thinking to build and code connect-4 game. The way I wanted to build the game is for it to have 84 leds (42 of red and 42 of green ) and have 7 buttons for inputting the column to drop the LED.

Since I am a bit new, I was wondering if it is even possible to control that many leds and have 7 input buttons.

By the way I have arduino diecimila.
Thank you
12  Using Arduino / Programming Questions / Re: Simon Code help on: September 21, 2011, 04:17:38 pm
I got it. The problem was that I did not update the state of the button after it detects that the wrong button was pressed. It was looping threw it.

Big thanks for everyones help
13  Using Arduino / Programming Questions / Re: Simon Code help on: September 21, 2011, 09:38:04 am
Quote
right after t=0 I did a print out for z,y,t and all of them come out to be 0. I simply cant figure it out, thats why I came here.
You set z to -1 when the wrong key is pressed, and break out of the while loop. Then, you increment z by 1, to 0, and set y and z to 0.

Then, you can't figure out while all three are 0? I'm stunned.

No the z t y needs to to be zeros, it resets the counters. What I cant figure out is how it behaves after the reset. I have made a small video to show you what happens
14  Using Arduino / Programming Questions / Re: Simon Code help on: September 21, 2011, 09:29:59 am
any one??
15  Using Arduino / Programming Questions / Re: Simon Code help on: September 20, 2011, 02:01:02 pm
Is there any reason you're not using serial debug prints?

I did I just removed them from the code.

at the very end where it says

    delay(500);
    z++;
    y=0;
    t=0;
}
}
right after t=0 I did a print out for z,y,t and all of them come out to be 0. I simply cant figure it out, thats why I came here.
Pages: [1] 2