Beruflich Dokumente
Kultur Dokumente
(/)
(/)
Create (/about/submit.jsp)
Contests
let's make (/contest/)
Community (/community/)
You (/you/)
(/id/intel/)
(/tag/typeid/categoryliving/channelreuse/?sort=FEATURED)
(/tag/typeid/categoryoutside/channelcamping/?sort=FEATU
(/tag/typeid/categorytechnology/chann
LEDDotMatrixDisplay bykapilgupta(/member/kapil+gupta/)
Download(/id/LEDDotMatrixDisplay1/?download=pdf)
(/id/LEDDotMatrixDisplay1/)
Collection
5Steps
IMadeit!
Favorite
Share
AboutThisInstructable
108,869views
Posted:
Aug4,2012
93favorites
License:
General
Public
License
kapilgupta
(/member/kapil+gupta/)
(http://cdn.instructables.com/FKA/PMYU/H5408HGO/FKAPMYUH5408HGO.LARGE.jpg)
Follow
Inthisproject,youshallagainusetwosetsofshiftregisters.Thesewillbe
connectedtotherowsand
columnsofthedotmatrixdisplay.Youwillthenshowasimpleobject,orsprite,
onthedisplayand
animateit.Themainaimofthisprojectistoshowyouhowadotmatrixdisplay
worksandintroducethe
conceptofmultiplexingbecausethisisaninvaluableskilltohave.
11
(/member/kapil+gupta/)
Bio: IamtheTechnologyloveralways
doinginterstingandinnovativestuff.
Subscribingtome=fun+excitement
!!!!!!!!!
Morebykapilgupta
(/id/RCMOODLYTE)
Led Matrix.mp4
(/id/ScopeclockAnalog
ClockAndTemperaturesensor)
Tags:
ledmatrix(/tag/typeid/categorytechnology/keyword
led+matrix/)
arduino(/tag/typeid/categorytechnology/keyword
arduino/)
multiplexing(/tag/typeid/category
technology/keywordmultiplexing/)
scrollingtext(/tag/typeid/category
technology/keywordscrolling+text/)
8x8matrix(/tag/typeid/categorytechnology/keyword
8x8+matrix/)
Step1:ThingsRequired
Addinstructableto:
Group
Related
LEDMatrixTest1using
anAS1107IC(/id/LED
MatrixTest1usingan
AS1107IC/)
byTheArduinoGuy
AutomatedCandy
Dispenser(/id/Automated
CandyDispenser1/)
bymarkarichard
(/member/markarichard/)
(http://cdn.instructables.com/F3Y/VORM/H5408HNM/F3YVORMH5408HNM.LARGE.jpg)
7BicolorLEDMatrix
ScrollingTextDisplay
(/id/7BicolorLEDMatrix
ScrollingTextDisplay/)
byjollifactory
forthisprojectyouwillrequire:
VoiceInputArduinoBi
colorLEDMatrixScrolling
TextDisplay(Bluetooth+
1.1LEDmatrix
2.8resistors1kohm
3.8557transistors
4.1ULN2803IC
5Arduino
6.274HC595shiftregister
7.2Breadboard
8.ConnectingWires
Step2:Working
Dotmatrixunitstypicallycomeineithera5x7or8x8matrixofLEDs.TheLEDs
arewiredinthe
matrixsuchthateithertheanodeorcathodeofeachLEDiscommonineach
row.Inotherwords,ina
commonanodeLEDdotmatrixunit,eachrowofLEDswouldhavealloftheir
anodesinthatrowwired
together.ThecathodesoftheLEDswouldallbewiredtogetherineachcolumn.
Thereasonforthiswill
becomeapparentsoon.
Atypicalsinglecolor8x8dotmatrixunitwillhave16pins,8foreachrowand8
foreachcolumn.
Thereasontherowsandcolumnsareallwiredtogetheristominimizethe
numberofpinsrequired.
Ifthiswerenotthecase,asinglecolor8x8dotmatrixunitwouldneed65pins,
oneforeachLEDanda
commonanodeorcathodeconnector.Bywiringtherowsandcolumnstogether,
only16pinsare
required.
However,thisnowposesaproblemifyouwantaparticularLEDtolightina
certainposition.If,for
example,youhadacommonanodeunitandwantedtolighttheLEDatX,Y
position5,3(5thcolumn,
3rdrow),thenyouwouldapplyacurrenttothe3rdRowandgroundthe5th
columnpin.
TheLEDinthe5thcolumnand3rdrowwouldnowlight.
NowletsimaginethatyouwanttoalsolighttheLEDatcolumn3,row6.Soyou
applyacurrentto
the6throwandgroundthe3rdcolumnpin.TheLEDatcolumn3,row6now
illuminates.Butwaitthe
LEDsatcolumn3,row6andcolumn5,row6havealsolitup.
Thisisbecauseyouareapplyingpowertorow3and6andgroundingcolumns
3and5.Youcant
turnofftheunwantedLEDswithoutturningofftheonesyouwanton.Itwould
appearthatthereisno
wayyoucanlightjustthetworequiredLEDswiththerowsandcolumnswired
togetherastheyare.The
onlywaythiswouldworkwouldbetohaveaseparatepinoutforeachLED,
meaningthenumberofpins
wouldjumpfrom16to65.A65pindotmatrixunitwouldbeveryhardtowireup
andcontrolbecause
youdneedamicrocontrollerwithatleast64digitaloutputs.
Isthereawaytogetaroundthisproblem?Yesthereis,anditiscalled
multiplexing(ormuxing).
Multiplexingisthetechniqueofswitchingonerowofthedisplayonatatime.
Byselectingthecolumn
thatcontainstherowthatcontainstheLEDthatyouwanttobelit,andthen
turningthepowertothat
rowon(ortheotherwayroundforcommoncathodedisplays),thechosenLEDs
inthatrowwill
illuminate.Thatrowisthenturnedoffandthenextrowisturnedon,againwith
theappropriate
columnschosenandtheLEDsinthesecondrowwillnowilluminate.Repeat
witheachrowtillyougetto
Android)(/id/VoiceInput
ArduinoLEDScrolling
Text~Simple&Easy
(/id/ArduinoLED
ScrollingTextSimple
Easy/)
SeeMore(/tag/typeid/?q=)
thebottomandthenstartagainatthetop.
Ifthisisdonefastenough(atmorethan100Hz,or100timespersecond)then
thephenomenonof
persistenceofvision(whereanafterimageremainsontheretinaforapprox
1/25thofasecond)willmean
thatthedisplaywillappeartobesteady,eventhougheachrowisturnedonand
offinsequence.
Byusingthistechnique,yougetaroundtheproblemofdisplayingindividual
LEDswithoutthe
otherLEDsinthesamecolumnorrowalsobeinglit.
ByscanningdowntherowsandilluminatingtherespectiveLEDsineachcolumn
ofthatrowand
doingthisveryfast(morethan100Hz)thehumaneyewillperceivetheimageas
steadyandtheimageof
theheartwillberecognizableintheLEDpattern.
YouareusingthismultiplexingtechniqueintheProject'scode.Thatshow
youretodisplaythe
heartanimationwithoutalsodisplayingextraneousLEDs.
Step3:
(http://cdn.instructables.com/FQ9/QFFJ/H54064CC/FQ9QFFJH54064CC.LARGE.jpg)
youhavetocalculatethevalueoftheresistorsyoucanuse
YoushouldfirstgetsomespecsonyourLEDs,youshouldknowtheirforward
voltageandforwardcurrent,youcangetthisinfofromthedatasheet.Thecircuit
operateson5VsoyourSourcevoltageis5Vwhichcanbeobtainedfroma5v
adapter
Downloadtheoriginalfiletoseetheschematicsbetter.(pressthe"i"iconinthe
topleftcornerofthepicture)
Step4:MakingitWork
Ihaveamadetheprogramthatdisplayssentencefromthearduinoserial
monitoronthematrix,mycodeisverybasic.Ihavemadeawindowsapplication
tomakethefontofthedisplay.Pleasewritetomeatmyemailid
kapilguptansit@gmail.com(mailto:kapilguptansit@gmail.com)youwanttoget
thatapplication
LedMatrixScrollingText.txt
(/files/orig/FQC/A1CY/H5EW79JK/FQCA1CYH5EW79JK.txt)6
KB
Step5:AllDone!!!!!!!!!
(http://cdn.instructables.com/FDO/SXFL/H5EW79J7/FDOSXFLH5EW79J7.LARGE.jpg)
Congratulationsyour8x8ledmatrixisready.Youcandisplayanythingyou
wouldlike.NowUcanplaywithitandmake8x8ledmatrixbymanually
solderingtheLed`sor16x8matrixandsoon!!!!!!
Wehaveabenicecommentpolicy.
Pleasebepositiveandconstructive.
IMadeit!
AddImages
Electo4fun(/member/Electo4fun/)
MakeComment
1yearago
Reply
GoodJob:D.
(/member/Electo4fun/)
Ididthisbutinsteadoftheletterslightinguptheentirematrixlightsupandthe
lettersdon't.
flag
Electo4fun(/member/Electo4fun/) Electo4fun
1yearago
Reply
AhIfixedit...Inthecodeyoumustremovethe'~'.
(/member/Electo4fun/)
flag
dinesh.maharjan.94064(/member/dinesh.maharjan.94064/) Electo4fun
Reply
8monthsago
Thanksforreply.canupleasetellinbrief.iam
(/member/dinesh.maharjan.94064/)
confusetoremovethe'~'.
flag
MarioK1(/member/MarioK1/)
9monthsago
Reply
Ohman,yourarticleissooonicebutinmyopinionyourSourcecodecould
(/member/MarioK1/)
havehadsomemorecommentsorplausiblevariablenames:PSpeciallyif
youtrytoportthistoanotherlanguage/platform...Imtryingtofindsome
solutionformyspecialIndustrialDotMatrixDisplay(TIP:Theretheyaddedthe
seperateColumnTransistorstothelastshiftregistersoyoucancontrol
everythingovertheserialshift)...Butthanksanyway!
flag
dinesh.maharjan.94064(/member/dinesh.maharjan.94064/) 10monthsago
Reply
Thanksfortheschematicandcode.Inthatcodeonly2timetextmessage
(/member/dinesh.maharjan.94064/)
display.butiwanttodisplaytextmessageforalongtimeuntilanotherserial
monitersendnexttextmessage.Sopleasehelpme.myidis
dinfrnpal@gmail.com
flag
RileyPankratz15(/member/RileyPankratz15/)
1yearago
Reply
AmIabletouses8050d331transistorsfromTexasInstruments?Igotthem
(/member/RileyPankratz15/)
fromakitandI'mwonderingiftheywillsubstitutenicelyornot?
flag
zeeroo(/member/zeeroo/)
1yearago
Reply
ThepictureshowsTO92NPNtransistorbutthepartslistsays557wichis
PNP
(/member/zeeroo/)
lookingattheschematicsitshouldbePNPtransistor
right?
flag
zeeroo(/member/zeeroo/) zeeroo
1yearago
Reply
sorryimeantshouldbeNPNnotPNP
(/member/zeeroo/)
petros9(/member/petros9/)
flag
1yearago
Reply
HowmuchtimedotheLEDlampsneedtoturnON?Whatistherefreshrate?
Howmuchtimeisitneededtoscanacolumn/rowandalsotoswitchfromone
(/member/petros9/)
column/rowtoanother?
Thanksinadvance
flag
msemtd(/member/msemtd/) petros9
1yearago
Reply
Ihaven'treadtheauthors'Arduinocodebytheway,butIwould
recommendperformingtherefreshofeachrowinatimerinterrupt
(/member/msemtd/)
(havealookontheArduinoplaygroundforhelponusingtimer
interrupts).
Youwanttochoosearefreshratethatlookssmoothtothehumaneye
sosomethingover50updates(oftheentiredisplay)persecondi.e.
50Hz.Let'ssaywechosetorefreshonerowpermillisecond.That
equatesto1000rowupdatespersecondor1000/8fulldisplayupdates
persecondonthis8rowdisplay.Thatisa125Hzrefreshrate.
Wecouldeasilyhalvethisratetoanicesmooth62.5Hzbyupdatinga
rowevery2milliseconds(fora16pixelhighdisplayat62.5Hzthe1ms
isideal).ThedurationforwhichtheLEDsareleftonduringthat2ms
rowscantimewilldictatehowbrightthedisplayis!
TheArduinowilltakealittletimetoclockthedataforeachrowintothe
shiftregister(s).Forlongerpixeldisplaystheshiftregistersarechained
togetherandmorebitsneedtobeshiftedin.Thankfullythe74HC595
hasalatchsothedatacanbeclockedinforthenextrowwhilethe
previousrowisbeingdisplayedontheLEDs!
SmartlycodedtimerinterruptswillallowtheArduinotodootherjobs
whilstmaintainingasolidrefreshrate.Iwillpostupsomecodewhen
I'vehadachancetotrythisoutonanArduino.BTW:onofmyjobsis
towritefirmwareforscrollingLEDmatrixdisplays:D
flag
layal_1(/member/layal_1/)
2yearsago
Reply
CanIdothisprojectbutwithoutArduino?
(/member/layal_1/)
flag
angel6120(/member/angel+6120/) layal_1
2yearsago
Reply
ifyoufoundthisprojectwithoutusingArduino.couldyoupleasehelp
me??
(/member/angel+6120/)
flag
knexpert1700(/member/knexpert1700/)
2yearsago
Reply
Ihavesomequestionsaboutthepartslist,I'vebeenlookingatan8x8ledrgb
displayonebayfor$6.95andI'mwonderingiftheresistorisULN2803IClike
(/member/knexpert1700/)
yousaidorisitULN2803AIClikewhatI'vebeenseeingonline.Also,Ithink
youshouldchangetheregistertoresistorinthepartslist.
flag
Reply
Sorry,Imeanttosaytransistor!:P
(/member/knexpert1700/)
flag
ProBodger(/member/ProBodger/)
2yearsago
Reply
excellent
(/member/ProBodger/)
flag
kapilgupta(/member/kapil+gupta/)(author) ProBodger
2yearsago
Thanksbuddy!!
(/member/kapil+gupta/)
AboutUs
Reply
flag
FindUs
WhoWeAre(/about/)
Facebook(http://www.facebook.com/instructables)
Advertise(/advertise/)
Youtube(http://www.youtube.com/user/instructablestv)
Contact(/about/contact.jsp)
Twitter(http://www.twitter.com/instructables)
Jobs(/community/PositionsavailableatInstructables/)
Help(/id/howtowriteagreatinstructable/)
Pinterest(http://www.pinterest.com/instructables)
Google+(https://plus.google.com/+instructables)
Tumblr(http://instructables.tumblr.com)
Resources
Mobile
ForTeachers(/teachers/)
DownloadournewappsforiOS,
AndroidandWindows8!
ArtistsinResidence(http://www.autodesk.com/artistinresidence/home)
Join!
Join our newsletter: enteremail
GiftProAccount(/account/give?sourcea=footer)
Forums(/community/)
Answers(/tag/typequestion/?sort=RECENT)
TermsofService(http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=21959721)
|
Sitemap(/sitemap/)
PrivacyStatement(http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=21292079)
|
Android
(https://play.google.com/store/apps/details?
id=com.adsk.instructables)
LegalNotices&Trademarks(http://usa.autodesk.com/legalnoticestrademarks/) | MobileSite(http://m.instructables.com)
(http://usa.autodesk.com/adsk/servlet/pc/index?id=20781545&siteID=123112)
2015Autodesk,Inc.
GoProToday(/account/gopro?sourcea=footer)
We'reHiring!(/community/PositionsavailableatInstructables/)
iOS
(https://itunes.apple.com/app/instructables/id586765571)
Windows
(http://apps.microsoft.com/windows/en
us/app/7afc8194c771441a9590
54250d6a8300)