arduino _ use a shift register (74hc595) and a transistor array (uln2803) » erwan's blog

3

Click here to load reader

Upload: apofview

Post on 16-Jul-2016

27 views

Category:

Documents


1 download

DESCRIPTION

Arduino _ Use a Shift Register (74HC595) and a Transistor Array (ULN2803) » Erwan's Blog

TRANSCRIPT

Page 1: Arduino _ Use a Shift Register (74HC595) and a Transistor Array (ULN2803) » Erwan's Blog

8.7.2015. Arduino : use a shift register (74HC595) and a transistor array (ULN2803) » Erwan's Blog

http://labalec.fr/erwan/?p=1288 1/3

YES : AGAIN ANOTHER BLOG…

Search

Erwan's Blog

arduino Add comments

Arduino : use a shift register (74HC595) and a transistorarray (ULN2803)

juin

072014

Still on my journey to a wordclock…

In the previous article, we have seen how to use a shift register to control up to 8 digital outputs (or more ifyou cascade IC’s).

One drawback in the previous setup is that we had to use one transistor per digital output (to control a devicepowered by another source).That is 8 extra transistors, 8*3 extra wires, etc : not very practical and especially if we intend to control severalshift registers IC’s. (i plan on using 3 in my wordclock project)

So this is where the ULN2803 comes in : 8 NPN transistors and one common ground in one integrated circuit.

See below a refreshed schema (compared to the previous article). Note that I have decided to power my IC’swith my (regulated) Arduino 5v but I could as well have used my battery pack power.Our 74HC595 will control our ULN2803 (by sending HIGH or LOW on the input) which in turn will drive thecurrent thru each output/led.

the Arduino sketch :

A « universal » BCD (boot configurationdata)

XNA and Monogame part 3

Openelec (on raspberry), Lirc & infrared

Arduino, infrared and LIRC

Mkisofs GUI

Articles récents

Easy PXE Network boot | FlingOS dansTinyPXE Server

admin dans step by step to PXE bootLinux Mint over NFS

Nick dans step by step to PXE bootLinux Mint over NFS

admin dans Boot WINPE over PXE on aUEFI computer

admin dans Squashfs Tools forWindows

Commentaires récents

mai 2015 (1)

mars 2015 (4)

février 2015 (4)

janvier 2015 (2)

décembre 2014 (1)

novembre 2014 (1)

octobre 2014 (3)

septembre 2014 (7)

août 2014 (2)

juillet 2014 (13)

juin 2014 (4)

mai 2014 (12)

avril 2014 (10)

mars 2014 (13)

février 2014 (6)

janvier 2014 (9)

décembre 2013 (9)

novembre 2013 (25)

octobre 2013 (5)

septembre 2013 (12)

août 2013 (15)

février 2013 (4)

janvier 2013 (1)

janvier 2012 (1)

décembre 2011 (14)

Archives

@Contact Me

@My Web Site

Arduino forums

Cacti Forums

gPXE

iPxe

Reboot.Pro

Bookmarks

My Softwares

Arduino XNA TinyPXE Server CloneDisk PXE Boot

Page 2: Arduino _ Use a Shift Register (74HC595) and a Transistor Array (ULN2803) » Erwan's Blog

8.7.2015. Arduino : use a shift register (74HC595) and a transistor array (ULN2803) » Erwan's Blog

http://labalec.fr/erwan/?p=1288 2/3

Posted by admin at 20 h 27 min Tagged with: 74HC595, ULN2803

4 Responses to “Arduino : use a shift register (74HC595) and a transistor array (ULN2803)”

1. Ben Vigil says:5 décembre 2014 at 5 h 06 min

I was planning on doing exactly what you are describing in this post, but I was just reading about an alternate high­powered shift register (TPIC6A595) that outputs up to 100mA on each pin, as opposed to the 6mA or so that the74HC595 outputs.

I’m curious if you know anything about the TPIC6A595?

Ben

Répondre

admin says:24 décembre 2014 at 17 h 12 min

I dont know about the TPIC6A595 but I believe the arduino is there to deliver logic not power.Hence the 74HC595 is ok for me since I deliver power from a dedicated power source.

Erwan

Répondre

2. Arssant says:19 janvier 2015 at 16 h 34 min

Thanks to share the detailed schematics. I will use it to control 2x 4­phase stepper motor.

Arssant

Répondre

3. Blog J.Schweiss | Arduino recap says:1 février 2015 at 22 h 11 min

[…] : play with a potentiometer Arduino : use a transistor Arduino : use a shift register (74HC595) Arduino : use a shift

//the pins we are using

int latchPin = 2;

int clockPin = 3;

int dataPin = 4;

void setup()

//set all the pins used to talk to the chip

//as output pins so we can write to them

pinMode(latchPin, OUTPUT);

pinMode(clockPin, OUTPUT);

pinMode(dataPin, OUTPUT);

void loop()

for (int i = 0; i < 8; i++)

//take the latchPin low so the LEDs don't change while we are writing data

digitalWrite(latchPin, LOW);

//shift out the bits

shiftOut(dataPin, clockPin, MSBFIRST, i);

//take the latch pin high so the pins reflect

//the data we have sent

digitalWrite(latchPin, HIGH);

// pause before next value:

delay(1000);

1.IpTools

2.CloneDisk

3.SnmpTools

4.Tiny Pxe Server

5.NetDiscovery

6.Mapi2SMTP

7.ArpWatch

8.QuickPE

9.Other Tools

Connexion

Flux RSS des articles

RSS des commentaires

Site de WordPress­FR

Méta

arduino (37)

Boot (45)

clonedisk (17)

delphi (7)

dotnet (35)

install windows (10)

iscsi (3)

mkisofs (1)

network (10)

PXE (20)

raspberry (1)

synology (2)

TinyPXE Server (20)

Uncategorized (15)

USB (5)

WinPE (16)

xna (36)

Catégories

Page 3: Arduino _ Use a Shift Register (74HC595) and a Transistor Array (ULN2803) » Erwan's Blog

8.7.2015. Arduino : use a shift register (74HC595) and a transistor array (ULN2803) » Erwan's Blog

http://labalec.fr/erwan/?p=1288 3/3

© 2011 Erwan's Blog Suffusion theme by Sayontan Sinha

Name

E­mail

URI

Arduino : use a shift register (74HC595) Arduino : shift out leds

register (74HC595) and a transistor array (ULN2803) Arduino : shift out leds Arduino : Cascade two 74HC595 Arduino: Cascade two 74HC595 (video) […]

Leave a Reply

Connect with:

(required)

(required)

Your Comment

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b><blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Submit Comment