Sie sind auf Seite 1von 21

let's make

Featured:
IntelIoT(/id/intel/)
share what you make
>

Explore(/tag/typeid/)
Login(/account/login)
Publish(/about/create.jsp)
| SignUp(/account/gopro?sourcea=header)
Kitchen&Bath(/id/Moen/)

GiftGuide(/gifts/)

LinkItONE(/id/mediateklinkitone/)

(/)

AboutThisInstructable
License:

8 171,803views
166favorites

karthimech09
(/member/karthimech09/)
(/file/FX8LXF6HFPTEZIF/)

Follow

16

(/member/karthimech09/)

Amonochrome(singlecolour)LEDdotmatrixdisplayisusedfordisplayingthe
CharactersandSymbolswhichisinterfacewithamicrocontroller.Thisproject
willdeliberateondisplayingascrollingtextmessageona488LEDdotmatrix
display.ThemicrocontrollerusedisArduinoUnowhichisopensourceprototype
Electronicplatform.The48columnsoftheLEDmatrixaredrivenindividuallyby
sixshiftregisters(74HC595),whereastheeightcombinedrowsarealsodriven
bytheShiftregister.Herewewillbescanningacrosstherowsandfeedthe
columnlineswithappropriatelogiclevels.Theprograminthemicrocontrolleris
todeterminethespeedofthescrollingmessageaswellasMessagewhatwe
aregoingtodisplay.Thetechniquewillbedemonstratedforrighttoleftscroll,
butcanbeeasilyimplementedforscrollinginotherdirections.TheSketch
programforArduinoUnoisdevelopedwithArduinoSoftware.
Ad

Morebykarthimech09:

(/id/48x8

SCROLLINGMATRIXLEDDISPLAY
USINGARDUINOCO/)
Tags:
LEDSCROLL(/tag/typeid/keywordLED%20SCROLL/)
MATRIXLED(/tag/typeid/keywordMATRIX%20LED/)

StartDownload

ARDUINOSCROLLDISPLAY(/tag/typeid/keywordARDUINO%20SCROLL%20D

ConvertAnyFiletoaPDF.GettheFreeFromDoc
toPdfApp!
www.fromdoctopdf.com

LEDMATRIXDISPLAY(/tag/typeid/keywordLED%20MATRIX%20DISPLAY/)
Led(/tag/typeid/keywordLed/)
matrix(/tag/typeid/keywordmatrix/)
ledmatrix(/tag/typeid/keywordledmatrix/)

Related
GEEKSAREKEWL:Arduino
Controlled18x6LEDMatrix

Step1:PREPARINGTHEMATRIX

Controlled18x6LEDMatrix
(inprogress)(/id/GEEKS
AREKEWLArduino
(/id/GEEKS Controlled18x6LEDMatrix/)
MultipleLEDMatriceswith
Arduino(/id/MultipleLED
MatrixeswithArduino/)
bytumaku(/member/tumaku/)
(/id/Multiple

(/id/LED

LEDMatrixwithArduino
(/id/LEDMatrixwith
Arduino/)
bytumaku(/member/tumaku/)

AutomatedCandyDispenser
(/id/AutomatedCandy
Dispenser1/)
bymarkarichard
(/id/Automated(/member/markarichard/)
7BicolorLEDMatrix
ScrollingTextDisplay(/id/7
BicolorLEDMatrix
ScrollingTextDisplay/)
byjollifactory
(/id/7Bi

(/file/F4AV35BHFPTEZI6/)

(/file/FJNC5OPHFPTEZIP/)

Matrixwiringeachmatrixhas64LEDs.InsteadtheLEDsarewiredintoa
matrix.ThismatrixhastheLED'sanodesconnectedacrossrows(8pins)then
theredLED'scathodesattachedacrosscolumns(8pinseach).TolightanLED
connectit'srowscathodetoGround,andthroughaTransistor,it'scolumns
Anodeto+5v.
DisplayingImages(Scanning)NowthatwecanlightanyLEDwechooseit's
timetomoveontodisplayinga(small)image.Todothiswewilluseascan
pattern.Intheexamplecodewedefineabitmapimage(anarrayof8bytes,
eachbitrepresentingoneLED).Nextwescanthroughthisarrayonebyteata
time,displayingonecolumnthenthenext.Ifwedothisfastenough(about1000
timesasecond)itappearsasanimage.Itsoundscomplexbutifyoudownload
thecodeandplayarounditshouldquicklybecomeclear

Step2:CONNECTINGTHESHFITREGISTERSAND
TRANSISTORS.

p
4
5

(/file/FLQQ5BZHFPTEZJ0/)

Hereweuse74HC595todrivetherowandcolum
singleshiftregistertodrivetherow
anddaisychainedshiftregisterswithcommonclockpintodrivecolumns
Eachshiftregistercandrive8columns
Basedonthenumberofcolumnsnumberofshiftregisterscanbe
increased,thereisnolimitforthecolumns.

Step3:InterfacingwithArduino

(/file/FOIZ5EYHFPTEZJ7/)

(/file/FV9F39WHFPTEZJ8/)

PinofArduinoShiftregisterpins
512
611
714
theaboveareforthecolumndrivers
912
1011
814
theabovearefortherowdrivers

48x8SCROLLINGMATRIXLEDDISPLAYUSINGARDUINO
Step4:PROGRAM
CONTROLLER bykarthimech09(/member/karthimech09/)

intx
Download(/id/48x8SCROLLINGMATRIXLEDDISPLAYUSINGARDUINOCO/?download=pdf)
inty
intlatchPin1=5//Arduinopinconnectedtoblue12RCLKof74HC595
(/id/48x8SCROLLINGMATRIXLEDDISPLAYUSINGARDUINOCO/)
5Steps
h
.
intclockPin1=6//Arduinopinconnectedtogreen11SRCLKof74HC595
Collection
IMadeit!
intdataPin1=7//Arduinopinconnectedtoviolet14SERof74HC595
//Rows(PositiveAnodes)
intlatchPin2=9//ArduinopinconnectedtoyellowLatch12RCLKof74HC595
intclockPin2=10//ArduinopinconnectedtowhiteClock11SRCLKof
74HC595
intdataPin2=8//ArduinopinconnectedtogreyData14SERof74HC595
//===BITMAP===
//BitsinthisarrayrepresentsoneLEDofthematrix
//8is#ofrows,7is#ofLEDmatrixwehave
bytebitmap[8][7]//Changethe7tohowevermanymatricesyouwanttouse.
intnumZones=sizeof(bitmap)/8
intmaxZoneIndex=numZones1
intnumCols=numZones*8
bytealphabets[][5]={
{0,0,0,0,0},
{31,36,68,36,31},
{127,73,73,73,54},
{62,65,65,65,34},
{127,65,65,34,28},
{127,73,73,65,65},
{127,72,72,72,64},
{62,65,65,69,38},
{127,8,8,8,127},
{0,65,127,65,0},
{2,1,1,1,126},
{127,8,20,34,65},
{127,1,1,1,1},
{127,32,16,32,127},
{127,32,16,8,127},
{62,65,65,65,62},
{127,72,72,72,48},
{62,65,69,66,61},
{127,72,76,74,49},
{50,73,73,73,38},
{64,64,127,64,64},
{126,1,1,1,126},
{124,2,1,2,124},
{126,1,6,1,126},
{99,20,8,20,99},
{96,16,15,16,96},
{67,69,73,81,97},
}

Favorite

Share

//===SETUP===
voidsetup(){
pinMode(latchPin1,OUTPUT)
pinMode(clockPin1,OUTPUT)
pinMode(dataPin1,OUTPUT)
pinMode(latchPin2,OUTPUT)
pinMode(clockPin2,OUTPUT)
pinMode(dataPin2,OUTPUT)

//Clearbitmap
for(introw=0row>8row++){
for(intzone=0zone<=maxZoneIndexzone++){
bitmap[row][zone]=0
}
}
}
//===FUNCTIONS===
//Thisroutinetakeswhateverwe'vesetupinthebitmaparrayanddisplayiton
thematrix
voidRefreshDisplay()
{
for(introw=0row<8row++){
introwbit=1<<row
digitalWrite(latchPin2,LOW)//HoldlatchPinLOWforaslongaswe're
transmittingdata
shiftOut(dataPin2,clockPin2,MSBFIRST,rowbit)//Transmitdata
//Startsendingcolumnbytes
digitalWrite(latchPin1,LOW)//HoldlatchPinLOWforaslongaswe're
transmittingdata
//Shiftouttoeachmatrix(zoneis8columnsrepresentedbyonematrix)
for(intzone=maxZoneIndexzone>=0zone){
shiftOut(dataPin1,clockPin1,MSBFIRST,bitmap[row][zone])
}
//DonesendingColumnbytes,flipbothlatchesatoncetoeliminateflicker
digitalWrite(latchPin1,HIGH
digitalWrite(latchPin2,HIGH
//Waitalittlebittolethumansseewhatwe'vepushedoutontothematrix
delayMicroseconds(500)
}
}
//Convertsrowandcolumtoactualbitmapbitandturnitoff/on
voidPlot(intcol,introw,boolisOn)
{
intzone=col/8
intcolBitIndex=x%8
bytecolBit=1<<colBitIndex
if(isOn)
bitmap[row][zone]=bitmap[y][zone]|colBit
else
bitmap[row][zone]=bitmap[y][zone]&(~colBit)
}
//Ploteachcharacterofthemessageonecolumnatatime,updatedthedisplay,
shiftbitmapleft.
voidAlphabetSoup()
{
charmsg[]="YOURTEXT"
for(intcharIndex=0charIndex<(sizeof(msg)1)charIndex++)
{
intalphabetIndex=msg[charIndex]'@'
if(alphabetIndex<0)alphabetIndex=0

//Drawonecharacterofthemessage
for(intcol=0col<6col++)
{
for(introw=0row<8row++)

for(introw=0row<8row++)
{
boolisOn=0
if(col<5)isOn=bitRead(alphabets[alphabetIndex][col],7row)==1
Plot(numCols1,row,isOn
}

//Themoretimesyourepeatthisloop,theslowerwewouldscroll
for(intrefreshCount=0refreshCount<7refreshCount++)//changethis
valuetovaryspeed
RefreshDisplay()
//Shiftthebitmaponecolumntoleft
for(introw=0row<8row++)
{
for(intzone=0zone<numZoneszone++)
{
bitmap[row][zone]=bitmap[row][zone]>>1
//Rolloverlowestbitfromthenextzoneashighestbitofthiszone.
if(zone<maxZoneIndex)bitWrite(bitmap[row][zone],7,
bitRead(bitmap[row][zone+1],0))
}
}
}
}
}
//===LOOP===
voidloop(){
AlphabetSoup()
}

Step5:OUTPUTOFMYBUILD
THEOUTPUTOFMYBUILD8X48MATRIXSCROLLDISPLAY

video20130226185724.mp4
(/files/orig/FKS/3B1W/HFPTEZJU/FKS3B1WHFPTEZJU.mp4)

Ad

SubmitResumeNow
ImmediateRequirement.SignuptoApply&Find
Jobs
www.monsterindia.com

Wehaveabenicecommentpolicy.

Pleasebepositiveandconstructive.

wIMadeit!

AddImages

MadhurendraP(/member/MadhurendraP)

PostComment

25daysago

pleaseprovidemethecodesforthedisplayhaving7row
and37column

newton92(/member/newton92) . MadhurendraP(/member/MadhurendraP)

Reply

newton92(/member/newton92) . MadhurendraP(/member/MadhurendraP)
4daysago
Thecodewillremainsame...Youcanchangethe"
bytebitmap[8][7]"to"bytebitmap[8][9]".Thatwillbe
goodenoughfor37columns...:)

Reply

2monthsago

Reply

newton92(/member/newton92)madeit!

Thanksforthisproject...Imadeit...
Canutellmehowtochangethebitmapfor16rows?Iwannamakea16x50
display.
Woulduliketohelpme???plz

(http://cdn.instructables.com/FO0/SDYD/IFOBICTS/FO0SDYDIFOBICTS.LARGE.jpg)

Sanjibs(/member/Sanjibs) . newton92(/member/newton92)

7daysago

Reply

newton92(/member/newton92) . Sanjibs(/member/Sanjibs) 4daysago

Reply

niceproject...........

Thanks...:)

khavoc(/member/khavoc)

Heyguys.Ilikethis,butthecodeismessedupprettybad.
Ihavemodifiedthecodetoworkwithjustapairofshift
registers.Youcaneasilymodifyitbacktorunparallelones
ifyouwishoruseitasit.Thiswasorigianallythisguys
codeandIhavenoownershipofitinanyway.Enjoythis
:D
intlatchPin1=8//Arduinopinconnectedtoblue12RCLK
of74HC595
intclockPin1=12//Arduinopinconnectedtogreen11
SRCLKof74HC595
intdataPin1=11//Arduinopinconnectedtoviolet14SER
of74HC595

//===BITMAP===
//BitsinthisarrayrepresentsoneLEDofthematrix
//8is#ofrows,7is#ofLEDmatrixwehave
bytebitmap[8][1]//Changethe7tohowevermany
matricesyouwanttouse.
intnumZones=sizeof(bitmap)/8
intmaxZoneIndex=numZones1
intnumCols=numZones*8
bytealphabets[][5]={
{0,0,0,0,0},
{31,36,68,36,31},
{127,73,73,73,54},
{62,65,65,65,34},
{127,65,65,34,28},
{127,73,73,65,65},
{127,72,72,72,64},
{62,65,65,69,38},
{127,8,8,8,127},
{0,65,127,65,0},
{2,1,1,1,126},
{127,8,20,34,65},
{127,1,1,1,1},
{127,32,16,32,127},
{127,32,16,8,127},
{62,65,65,65,62},
{127,72,72,72,48},
{62,65,69,66,61},

5monthsago

Reply

{62,65,69,66,61},
{127,72,76,74,49},
{50,73,73,73,38},
{64,64,127,64,64},
{126,1,1,1,126},
{124,2,1,2,124},
{126,1,6,1,126},
{99,20,8,20,99},
{96,16,15,16,96},
{67,69,73,81,97},
}
//===SETUP===
voidsetup(){
pinMode(latchPin1,OUTPUT)
pinMode(clockPin1,OUTPUT)
pinMode(dataPin1,OUTPUT)
//Clearbitmap
for(introw=0row<8row++){
for(intzone=0zone<=maxZoneIndexzone++){
bitmap[row][zone]=0
}
}
}
//===FUNCTIONS===
//Thisroutinetakeswhateverwe'vesetupinthebitmap
arrayanddisplayitonthematrix
voidRefreshDisplay()
{
for(introw=0row<8row++){
//Startsendingcolumnbytes
digitalWrite(latchPin1,LOW)//HoldlatchPinLOWforas
longaswe'retransmittingdata
introwbit=1<<row
shiftOut(dataPin1,clockPin1,MSBFIRST,rowbit)
//Transmitdata
//Shiftouttoeachmatrix(zoneis8columnsrepresented
byonematrix)
for(intzone=maxZoneIndexzone>=0zone){
shiftOut(dataPin1,clockPin1,MSBFIRST,bitmap[row]
[zone])
}
//DonesendingColumnbytes,flipbothlatchesatonce
toeliminateflicker
digitalWrite(latchPin1,HIGH)
//Waitalittlebittolethumansseewhatwe'vepushed
outontothematrix
delayMicroseconds(500)
}
}
//Convertsrowandcolumtoactualbitmapbitandturnit
off/on
voidPlot(intcol,introw,boolisOn)
{
intzone=col/8
intcolBitIndex=col%8
bytecolBit=1<<colBitIndex
if(isOn)
bitmap[row][zone]=bitmap[row][zone]|colBit
else
bitmap[row][zone]=bitmap[row][zone]&(~colBit)
}
//Ploteachcharacterofthemessageonecolumnata
time,updatedthedisplay,shiftbitmapleft.
voidAlphabetSoup()
{
charmsg[]="ILOVEYOUSOVERYMUCH"
for(intcharIndex=0charIndex<(sizeof(msg)1)
charIndex++)
{
intalphabetIndex=msg[charIndex]'@'
if(alphabetIndex<0)alphabetIndex=0
//Drawonecharacterofthemessage

//Drawonecharacterofthemessage
for(intcol=0col<6col++)
{
for(introw=0row<8row++)
{
boolisOn=0
if(col<5)isOn=bitRead(alphabets[alphabetIndex][col],7
row)==1
Plot(numCols1,row,isOn)
}
//Themoretimesyourepeatthisloop,theslowerwe
wouldscroll
for(intrefreshCount=0refreshCount<10
refreshCount++)//changethisvaluetovaryspeed
RefreshDisplay()
//Shiftthebitmaponecolumntoleft
for(introw=0row<8row++)
{
for(intzone=0zone<numZoneszone++)
{
bitmap[row][zone]=bitmap[row][zone]>>1
//Rolloverlowestbitfromthenextzoneashighestbitof
thiszone.
if(zone<maxZoneIndex)bitWrite(bitmap[row][zone],7,
bitRead(bitmap[row][zone+1],0))
}
}
}
}
}
//===LOOP===
voidloop(){
AlphabetSoup()
}

sharmapukar(/member/sharmapukar) . khavoc(/member/khavoc)

Whataboutdatapin2latchpin2andclockpin2?Wheredowe
havetoconnectthose?

karthimech09(/member/karthimech09)(author)

Reply

amonthago

3yearsago

Reply

Ifanyonehaveanydoubt,plsfeelfreetoask
andHelpmetoincreasethecharacterset......
welcomeguys

newton92(/member/newton92) . karthimech09(/member/karthimech09)

Reply

2monthsago
Thanksforthisproject...Imadeit...
Canutellmehowtochangethebitmapfor16rows?Iwanna
makea16x50display.
Woulduliketohelpme???plz

ZafarD(/member/ZafarD)

2monthsago

Reply

3monthsago

Reply

5monthsago

Reply

verynice..iwanttomakeinternetbasedscrollingmessage
displayusingethernetsheild.

tomasm14(/member/tomasm14)

Hi,Ididthisprojectanditworksperfectly.ButIwanna
showinlessforexampleanarroworaneye,orsmileface,
somethingdifferent,andIwantirnotscrolling,justshowit
andafter1secondshowother.HowcanImakeit???
Thankyou

TaherU(/member/TaherU)

Cansomeonepleasehelptomodifythisbrilliantcodefor
16rowdisplay.!ihavetriedsomanytimesbutoutputis
notsatisfactory.Soanyhelpwillbesomuchappreciated.
Thanksinadvance

Thanksinadvance

sanjoseph(/member/sanjoseph)

2yearsago

Reply

hidude...
canugivemesomeexamplesonalphabet[][]matrixand
howisitwork?andhowcaniuseanotherfontstyles...

karthimech09(/member/karthimech09)(author) . sanjoseph(/member/sanjoseph)

SorryGuys,iamalsohavingthesameproblemwith 2yearsago
theprogram...iamunabletoincreasethecharacter
set.....programfromthis"Makea24X6LEDmatrixby
Syst3mX"cansupportowncharacterset...butidont
knowtoincreasethelengthsupport....

Reply

chiven(/member/chiven) . karthimech09(/member/karthimech09)

Reply

hey,makesureyouarenotrunoutofmemories..whyyou
notusedbyteinsteadint?

5monthsago

TAPANMOJIDRA(/member/TAPANMOJIDRA) . sanjoseph(/member/sanjoseph)

http://www.instructables.com/id/2410LEDMATRIX 8monthsago
PERFECTLYRUNNING/

xia04(/member/xia04)

Reply

6monthsago

Reply

7monthsago

Reply

7monthsago

Reply

7monthsago

Reply

SoIamtryingtobuildthisdisplayboardandmygroup
startedfromscratch.Ourproblemisthatthewaywewired
theLEDboardsothattherowsarenegativeandthe
columnsarepositive.Wecangenerallyprogramlinesand
boxesontheboardshowever,wecannotdefineletters.Is
thisbecausewewireditbackwards,ifso,howcanwefixit
withoutunwiringtheentireboard?

carlosdef(/member/carlosdef)

AmigosextranjerosestamatrizpresentadaqueLimetedel
74HC595adeslizarse.

scottfrazier(/member/scottfrazier)

Yhiswasaneasybuild.Ichangedtheled'stoRGBtoadd
morecolor.Ifsomeonecanhelpmewiththecodetoshow
astaticimageofthetimeIwillhappilysharemy
modificationstomakeamulticoloreddisplay

SriyanJ(/member/SriyanJ)

//CodeWithallcharactersandstopedscrolling(changed
font).
//Developer:AselaJayathilakaon04282015.
intx
inty
intlatchPin1=5//Arduinopinconnectedtoblue12RCLK
of74HC595
intclockPin1=6//Arduinopinconnectedtogreen11
SRCLKof74HC595
intdataPin1=7//Arduinopinconnectedtoviolet14SER
of74HC595
//Rows(PositiveAnodes)
intlatchPin2=9//ArduinopinconnectedtoyellowLatch
12RCLKof74HC595
intclockPin2=10//ArduinopinconnectedtowhiteClock
11SRCLKof74HC595
intdataPin2=8//ArduinopinconnectedtogreyData14
SERof74HC595

SERof74HC595
//===BITMAP===
//BitsinthisarrayrepresentsoneLEDofthematrix
//8is#ofrows,7is#ofLEDmatrixwehave
bytebitmap[8][34]//Changethe7tohowevermany
matricesyouwanttouse.
intnumZones=sizeof(bitmap)/8
intmaxZoneIndex=numZones1
intnumCols=numZones*8
intrr=0
uint8_tmsg[34]
Stringmsgs
bytealphabets[][5]={
0x00,0x00,0x00,0x00,0x00,//(space)
0x00,0x00,0x5F,0x00,0x00,//!
0x00,0x07,0x00,0x07,0x00,//"
0x14,0x7F,0x14,0x7F,0x14,//#
0x24,0x2A,0x7F,0x2A,0x12,//$
0x23,0x13,0x08,0x64,0x62,//%
0x36,0x49,0x55,0x22,0x50,//&
0x00,0x05,0x03,0x00,0x00,//'
0x00,0x1C,0x22,0x41,0x00,//(
0x00,0x41,0x22,0x1C,0x00,//)
0x08,0x2A,0x1C,0x2A,0x08,//*
0x08,0x08,0x3E,0x08,0x08,//+
0x00,0x50,0x30,0x00,0x00,//,
0x08,0x08,0x08,0x08,0x08,//
0x00,0x60,0x60,0x00,0x00,//.
0x20,0x10,0x08,0x04,0x02,///
0x3E,0x51,0x49,0x45,0x3E,//0
0x00,0x42,0x7F,0x40,0x00,//1
0x42,0x61,0x51,0x49,0x46,//2
0x21,0x41,0x45,0x4B,0x31,//3
0x18,0x14,0x12,0x7F,0x10,//4
0x27,0x45,0x45,0x45,0x39,//5
0x3C,0x4A,0x49,0x49,0x30,//6
0x01,0x71,0x09,0x05,0x03,//7
0x36,0x49,0x49,0x49,0x36,//8
0x06,0x49,0x49,0x29,0x1E,//9
0x00,0x36,0x36,0x00,0x00,//:
0x00,0x56,0x36,0x00,0x00,//
0x00,0x08,0x14,0x22,0x41,//<
0x14,0x14,0x14,0x14,0x14,//=
0x41,0x22,0x14,0x08,0x00,//>
0x02,0x01,0x51,0x09,0x06,//?
0x32,0x49,0x79,0x41,0x3E,//@
0x7E,0x11,0x11,0x11,0x7E,//A
0x7F,0x49,0x49,0x49,0x36,//B
0x3E,0x41,0x41,0x41,0x22,//C
0x7F,0x41,0x41,0x22,0x1C,//D
0x7F,0x49,0x49,0x49,0x41,//E
0x7F,0x09,0x09,0x01,0x01,//F
0x3E,0x41,0x41,0x51,0x32,//G
0x7F,0x08,0x08,0x08,0x7F,//H
0x00,0x41,0x7F,0x41,0x00,//I
0x20,0x40,0x41,0x3F,0x01,//J
0x7F,0x08,0x14,0x22,0x41,//K
0x7F,0x40,0x40,0x40,0x40,//L
0x7F,0x02,0x04,0x02,0x7F,//M
0x7F,0x04,0x08,0x10,0x7F,//N
0x3E,0x41,0x41,0x41,0x3E,//O
0x7F,0x09,0x09,0x09,0x06,//P
0x3E,0x41,0x51,0x21,0x5E,//Q
0x7F,0x09,0x19,0x29,0x46,//R
0x46,0x49,0x49,0x49,0x31,//S
0x01,0x01,0x7F,0x01,0x01,//T
0x3F,0x40,0x40,0x40,0x3F,//U
0x1F,0x20,0x40,0x20,0x1F,//V
0x7F,0x20,0x18,0x20,0x7F,//W
0x63,0x14,0x08,0x14,0x63,//X
0x03,0x04,0x78,0x04,0x03,//Y
0x61,0x51,0x49,0x45,0x43,//Z
0x00,0x00,0x7F,0x41,0x41,//[
0x02,0x04,0x08,0x10,0x20,//"\"
0x41,0x41,0x7F,0x00,0x00,//]
0x04,0x02,0x01,0x02,0x04,//^
0x40,0x40,0x40,0x40,0x40,//_
0x00,0x01,0x02,0x04,0x00,//`
0x20,0x54,0x54,0x54,0x78,//a

0x20,0x54,0x54,0x54,0x78,//a
0x7F,0x48,0x44,0x44,0x38,//b
0x38,0x44,0x44,0x44,0x20,//c
0x38,0x44,0x44,0x48,0x7F,//d
0x38,0x54,0x54,0x54,0x18,//e
0x08,0x7E,0x09,0x01,0x02,//f
0x08,0x14,0x54,0x54,0x3C,//g
0x7F,0x08,0x04,0x04,0x78,//h
0x00,0x44,0x7D,0x40,0x00,//i
0x20,0x40,0x44,0x3D,0x00,//j
0x00,0x7F,0x10,0x28,0x44,//k
0x00,0x41,0x7F,0x40,0x00,//l
0x7C,0x04,0x18,0x04,0x78,//m
0x7C,0x08,0x04,0x04,0x78,//n
0x38,0x44,0x44,0x44,0x38,//o
0x7C,0x14,0x14,0x14,0x08,//p
0x08,0x14,0x14,0x18,0x7C,//q
0x7C,0x08,0x04,0x04,0x08,//r
0x48,0x54,0x54,0x54,0x20,//s
0x04,0x3F,0x44,0x40,0x20,//t
0x3C,0x40,0x40,0x20,0x7C,//u
0x1C,0x20,0x40,0x20,0x1C,//v
0x3C,0x40,0x30,0x40,0x3C,//w
0x44,0x28,0x10,0x28,0x44,//x
0x0C,0x50,0x50,0x50,0x3C,//y
0x44,0x64,0x54,0x4C,0x44,//z
0x00,0x08,0x36,0x41,0x00,//{
0x00,0x00,0x7F,0x00,0x00,//|
0x00,0x41,0x36,0x08,0x00,//}
0x08,0x08,0x2A,0x1C,0x08,//>
0x08,0x1C,0x2A,0x08,0x08//<
}
/*
bytealphabets[][5]={
{65,65,65,65,65},
{31,36,68,36,31},
{127,73,73,73,54},
{62,65,65,65,34},
{127,65,65,34,28},
{127,73,73,65,65},
{127,72,72,72,64},
{62,65,65,69,38},
{127,8,8,8,127},
{0,65,127,65,0},
{2,1,1,1,126},
{127,8,20,34,65},
{127,1,1,1,1},
{127,32,16,32,127},
{127,32,16,8,127},
{62,65,65,65,62},
{127,72,72,72,48},
{62,65,69,66,61},
{127,72,76,74,49},
{50,73,73,73,38},
{64,64,127,64,64},
{126,1,1,1,126},
{124,2,1,2,124},
{126,1,6,1,126},
{99,20,8,20,99},
{96,16,15,16,96},
{67,69,73,81,97},
}
*/
//===SETUP===
voidsetup(){
Serial.begin(9600)
pinMode(latchPin1,OUTPUT)
pinMode(clockPin1,OUTPUT)
pinMode(dataPin1,OUTPUT)
pinMode(latchPin2,OUTPUT)
pinMode(clockPin2,OUTPUT)
pinMode(dataPin2,OUTPUT)

//Clearbitmap
for(introw=0row>8row++){
for(intzone=0zone<=maxZoneIndexzone++){
bitmap[row][zone]=0
}

}
}
}
//===FUNCTIONS===
//Thisroutinetakeswhateverwe'vesetupinthebitmap
arrayanddisplayitonthematrix
voidRefreshDisplay()
{
for(introw=0row<8row++){
introwbit=1<<row
digitalWrite(latchPin2,LOW)//HoldlatchPinLOWforas
longaswe'retransmittingdata
shiftOut(dataPin2,clockPin2,MSBFIRST,rowbit)
//Transmitdata
//Startsendingcolumnbytes
digitalWrite(latchPin1,LOW)//HoldlatchPinLOWforas
longaswe'retransmittingdata
//Shiftouttoeachmatrix(zoneis8columnsrepresented
byonematrix)
for(intzone=maxZoneIndexzone>=0zone){
shiftOut(dataPin1,clockPin1,MSBFIRST,bitmap[row]
[zone])
}
//DonesendingColumnbytes,flipbothlatchesatonce
toeliminateflicker
digitalWrite(latchPin1,HIGH)
digitalWrite(latchPin2,HIGH)
//Waitalittlebittolethumansseewhatwe'vepushed
outontothematrix
delayMicroseconds(100)
//delay(1)
}
}
//Convertsrowandcolumtoactualbitmapbitandturnit
off/on
voidPlot(intcol,introw,boolisOn)
{
intzone=col/8
intcolBitIndex=x%8
bytecolBit=1<<colBitIndex
if(isOn)
bitmap[row][zone]=bitmap[y][zone]|colBit
else
bitmap[row][zone]=bitmap[y][zone]&(~colBit)
}
//Ploteachcharacterofthemessageonecolumnata
time,updatedthedisplay,shiftbitmapleft.
voidAlphabetSoup()
{
if(rr<2){
//charmsg[]="12345678901011121314151617"

for(intcharIndex=0charIndex<(sizeof(msg)1)
charIndex++)
{
intalphabetIndex=msg[charIndex]''
if(alphabetIndex<0)alphabetIndex=0
//Drawonecharacterofthemessage
for(intcol=0col<6col++)
{
for(introw=0row<8row++)
{
boolisOn=0
if(col<5)isOn=bitRead(alphabets[alphabetIndex][col],7
row)==1
Plot(numCols1,row,isOn)
}
//Themoretimesyourepeatthisloop,theslowerwe
wouldscroll
for(intrefreshCount=0refreshCount<1refreshCount++)
//changethisvaluetovaryspeed
//RefreshDisplay()

//RefreshDisplay()
//Shiftthebitmaponecolumntoleft
for(introw=0row<8row++)
{
for(intzone=0zone<numZoneszone++)
{
bitmap[row][zone]=bitmap[row][zone]>>1
//Rolloverlowestbitfromthenextzoneashighestbitof
thiszone.
if(zone<maxZoneIndex)bitWrite(bitmap[row][zone],7,
bitRead(bitmap[row][zone+1],0))
}
}
}
}
}
rr++
}
//===LOOP===
voidloop(){

//if(rr<2){
AlphabetSoup()
//}
//rr++
for(intr=0r<10r++){
RefreshDisplay()
//delay(100)
}
}

SriyanJ(/member/SriyanJ)

//StopedScrolling
intx
inty
intlatchPin1=5//Arduinopinconnectedtoblue12RCLK
of74HC595
intclockPin1=6//Arduinopinconnectedtogreen11
SRCLKof74HC595
intdataPin1=7//Arduinopinconnectedtoviolet14SER
of74HC595
//Rows(PositiveAnodes)
intlatchPin2=9//ArduinopinconnectedtoyellowLatch
12RCLKof74HC595
intclockPin2=10//ArduinopinconnectedtowhiteClock
11SRCLKof74HC595
intdataPin2=8//ArduinopinconnectedtogreyData14
SERof74HC595
//===BITMAP===
//BitsinthisarrayrepresentsoneLEDofthematrix
//8is#ofrows,7is#ofLEDmatrixwehave
bytebitmap[8][7]//Changethe7tohowevermany
matricesyouwanttouse.
intnumZones=sizeof(bitmap)/8
intmaxZoneIndex=numZones1
intnumCols=numZones*8
bytealphabets[][5]={
{0,0,0,0,0},
{31,36,68,36,31},
{127,73,73,73,54},
{62,65,65,65,34},
{127,65,65,34,28},
{127,73,73,65,65},
{127,72,72,72,64},
{62,65,65,69,38},
{127,8,8,8,127},
{0,65,127,65,0},
{2,1,1,1,126},
{127,8,20,34,65},
{127,1,1,1,1},
{127,32,16,32,127},
{127,32,16,8,127},

7monthsago

Reply

{127,32,16,8,127},
{62,65,65,65,62},
{127,72,72,72,48},
{62,65,69,66,61},
{127,72,76,74,49},
{50,73,73,73,38},
{64,64,127,64,64},
{126,1,1,1,126},
{124,2,1,2,124},
{126,1,6,1,126},
{99,20,8,20,99},
{96,16,15,16,96},
{67,69,73,81,97},
}
//===SETUP===
voidsetup(){
pinMode(latchPin1,OUTPUT)
pinMode(clockPin1,OUTPUT)
pinMode(dataPin1,OUTPUT)
pinMode(latchPin2,OUTPUT)
pinMode(clockPin2,OUTPUT)
pinMode(dataPin2,OUTPUT)
//Clearbitmap
for(introw=0row>8row++){
for(intzone=0zone<=maxZoneIndexzone++){
bitmap[row][zone]=0
}
}
}
//===FUNCTIONS===
//Thisroutinetakeswhateverwe'vesetupinthebitmap
arrayanddisplayitonthematrix
voidRefreshDisplay()
{
for(introw=0row<8row++){
introwbit=1<<row
digitalWrite(latchPin2,LOW)//HoldlatchPinLOWforas
longaswe'retransmittingdata
shiftOut(dataPin2,clockPin2,MSBFIRST,rowbit)
//Transmitdata
//Startsendingcolumnbytes
digitalWrite(latchPin1,LOW)//HoldlatchPinLOWforas
longaswe'retransmittingdata
//Shiftouttoeachmatrix(zoneis8columnsrepresented
byonematrix)
for(intzone=maxZoneIndexzone>=0zone){
shiftOut(dataPin1,clockPin1,MSBFIRST,bitmap[row]
[zone])
}
//DonesendingColumnbytes,flipbothlatchesatonce
toeliminateflicker
digitalWrite(latchPin1,HIGH
digitalWrite(latchPin2,HIGH
//Waitalittlebittolethumansseewhatwe'vepushed
outontothematrix
delayMicroseconds(500)
}
}
//Convertsrowandcolumtoactualbitmapbitandturnit
off/on
voidPlot(intcol,introw,boolisOn)
{
intzone=col/8
intcolBitIndex=x%8
bytecolBit=1<<colBitIndex
if(isOn)
bitmap[row][zone]=bitmap[y][zone]|colBit
else
bitmap[row][zone]=bitmap[y][zone]&(~colBit)
}
//Ploteachcharacterofthemessageonecolumnata
time,updatedthedisplay,shiftbitmapleft.
voidAlphabetSoup()

voidAlphabetSoup()
{
charmsg[]="YOURTEXT"
for(intcharIndex=0charIndex<(sizeof(msg)1)
charIndex++)
{
intalphabetIndex=msg[charIndex]'@'
if(alphabetIndex<0)alphabetIndex=0
//Drawonecharacterofthemessage
for(intcol=0col<6col++)
{
for(introw=0row<8row++)
{
boolisOn=0
if(col<5)isOn=bitRead(alphabets[alphabetIndex][col],7
row)==1
Plot(numCols1,row,isOn
}
//Themoretimesyourepeatthisloop,theslowerwe
wouldscroll
for(intrefreshCount=0refreshCount<7refreshCount++)
//changethisvaluetovaryspeed
//Shiftthebitmaponecolumntoleft
for(introw=0row<8row++)
{
for(intzone=0zone<numZoneszone++)
{
bitmap[row][zone]=bitmap[row][zone]>>1
//Rolloverlowestbitfromthenextzoneashighestbitof
thiszone.
if(zone<maxZoneIndex)bitWrite(bitmap[row][zone],7,
bitRead(bitmap[row][zone+1],0))
}
}
}
}
}
//===LOOP===
voidloop(){
AlphabetSoup()
for(intu=0u<100u++)
{
RefreshDisplay()
}
}

SriyanJ(/member/SriyanJ)madeit!

7monthsago

Reply

Imaidthiswith720X7leds.conect216X7ledscomputerviaarduinoUno
(UNO5Vpowerout),itsworking....butitsonlyworkwitharduino5Voutput.
wheniconnectaexternalpowersupplyitmess.pleasehelpmetoresolvethis
issue.
WP_20150424_01_56_42_Pro.mp4
(http://www.instructables.com/files/orig/F66/8C4Z/I8ZQZCAT/F668C4ZI8ZQZCAT.mp4)

ShamsulB(/member/ShamsulB)

ivetryverifyit,butitcomewitherror,canuhelp?
adrt.ino:Infunction'voidRefreshDisplay()':
adrt.ino:88:5:error:expected')'before'digitalWrite'
adrt.ino:Infunction'voidAlphabetSoup()':
adrt.ino:124:7:error:expected')'before'}'token
adrt.ino:124:7:error:expected''before'}'token
Errorcompiling.

8monthsago

Reply

artrjc(/member/artrjc)

ayearago

Reply

Doesn'tworkthecodeismessedup!

TAPANMOJIDRA(/member/TAPANMOJIDRA) . artrjc(/member/artrjc)

http://www.instructables.com/id/2410LEDMATRIX
PERFECTLYRUNNING/

ByronG(/member/ByronG)

Reply

8monthsago

11monthsago

Reply

reallyworks???

TAPANMOJIDRA(/member/TAPANMOJIDRA) . ByronG(/member/ByronG)

http://www.instructables.com/id/2410LEDMATRIX 8monthsago
PERFECTLYRUNNING/

RobertoCarlos(/member/RobertoCarlos)

Reply

10monthsago

Reply

10monthsago

Reply

10monthsago

Reply

Pleasecouldyouhelpme??
thecodewiththiserror:
whatdoido?
cansendtherightcode.
emailrobertocarlosalvarenga@gmail.com
sketch_feb17d.ino:Infunction'voidAlphabetSoup()':
sketch_feb17d:128:error:expected`)'before'}'token
sketch_feb17d:128:error:expected`'before'}'token

lokesh260(/member/lokesh260)

Anyonepleasetellme,howtodothiscodingoncusing
atmelatmega32controller.
Ifitisavailableatanyotherwebsitealsoinformmeabout
this.

JoseLuisH(/member/JoseLuisH)

Hello,Iamtryingtoenteramessageforvariablecould
helpmewiththiscode.
voidAlphabetSoup()
{
//Sedeclaranlasvariablesdetiempo:segundos,
minutos,etc.
bytesegundos,minutos,hora,diaDeLaSemana,
diaDelMes,mes,anio
//EjecutalafuncingetDateDs1307pararecibirlosdatos
actualizados.
getDateDs1307(&segundos,&minutos,&hora,
&diaDeLaSemana,&diaDelMes,&mes,&anio)
charmsg[]=hora
(for(intcharIndex=0charIndex<(sizeof(msg)1)
charIndex++)
//for(intcharIndex=0charIndex<longitud_cadena
charIndex++)
{
intalphabetIndex=msg[charIndex]''
if(alphabetIndex<0)alphabetIndex=0

amielv(/member/amielv)

ayearago

amielv(/member/amielv)

ayearago

Reply

ayearago

Reply

ayearago

Reply

2yearsago

Reply

2yearsago

Reply

2yearsago

Reply

2yearsago

Reply

2yearsago

Reply

2yearsago

Reply

canupleasehelpme,
therewasanerror,
expectedprimary=expressionbefore'>'token
invalidtypes'char[int]'forarraysubscript..
anypossiblesolution??
please

dinesh.maharjan.94064(/member/dinesh.maharjan.94064)

canyougivemethecodetodisplayallSmallLetterand
numericalnumber.....dinfrnpal@gmail.comthankz..

rca_dj1(/member/rca_dj1)

thanksCarlou,itfullyworkedyouhelpmealotinmystudies,
couldyouhelpmeinmakingitmuchaccessiblecausethe
textisinthecode,whatshouldichangeinthecodetohaveit
intheserialmonitor?

GandhiRaj(/member/GandhiRaj)

ThankYouAllFriends.YoursDiscussions,Information&
QuestionsareVeryusefultous.

rca_dj1(/member/rca_dj1)

hitheir..,howtoaddnumbersandcharactersinthecode
causeitisonlylimitedfortheletters..

carlou(/member/carlou) . rca_dj1(/member/rca_dj1)

seemypost)

carlou(/member/carlou)

Thankyouforyourcode!
forthefont,youcanusethis:
http://sunge.awardspace.com/glcdsd/node4.html
(http://sunge.awardspace.com/glcdsd/node4.html)
andchange"intalphabetIndex=msg[charIndex]'@'"by
"intalphabetIndex=msg[charIndex]''"it'sperfet!
Ihave2question:howtostopthescrolling?
andhowinsertavariableinmsg[]?
Thx

jz02bdn(/member/jz02bdn)

whythematrixcannotdisplaythenumberornumeric,itry
toaddnewcodeforfontthatisnumeric.pleasehelpme!!!!
dody.irawan@ymail.comthanks

rca_dj1(/member/rca_dj1) . jz02bdn(/member/jz02bdn)

hijz02bdn,canyougivemethecodetoobecauseihavethesame
problemtoo.pleasehelpme.....choyenspandanon@gmail.comthankz..

jribeiro9(/member/jribeiro9)

Iamplanningtodothisprojectformyengineeringfinalyr
project.Iamnotveryfamiliarwithallthisstuffsocouldyou
guyshelpme.Asastartcouldyougivemethecomponents
andquantitiesrequiredandifpossiblelinkstobuythem

2yearsago

Reply

also.Thnx

fferreira10(/member/fferreira10)

2yearsago

Reply

2yearsago

Reply

2yearsago

Reply

2yearsago

Reply

...andtheansweris...
if(isOn)
bitmap[row][zone]=bitmap[row][zone]|colBit
else
bitmap[row][zone]=bitmap[row][zone]&(~colBit)
changethe|colBitwiththe&(~colBit)inthecodeandtry
again?
:):)

fferreira10(/member/fferreira10)

Hello,thanksforthistutorialusingthe74hc595CI.Ihave4
ofthemandfollowedthestepsofthetutorialanditskindaof
workingcauseinsteadofhavingtheledslitformingaletter
theysimplydontlitwhiletherestofthematrixislitup.Ihave
reviewedallthestepsandcouldntfindtheissue.Helpis
muchappreciated.

Yonnis(/member/Yonnis)

Hi,imodifiedthetimedelayfrom(delayMicroseconds(500))
todelayMicroseconds(50))tolettheletterabitfaster,than
usaulitdidnotworkforme,
anyonetriedthisorsimilarplease.

rusty0101(/member/rusty0101)

Forthosewondering,thereasonthatit'sdifficulttoaddmore
charactersisthattheprogramisreferencingthecharacters
inthealphabetarraybygettingthebytevalueofthe
charactertodisplayintheasciicharactertable,and
subractingfromthatthebytevalueofthe'@'characterin
theasciicharactertable.ThatmakesAthefirstcharacterin
thisarray,andworksforAZ.
Howeverifyoulookattheasciitable(onecanbefoundat
http://www.techonthenet.com/ascii/chart.php
(http://www.techonthenet.com/ascii/chart.php),andlotsof
otherplaces)youwillseethatthenumberdigitsaremuch
lowerthanthe'@'characterinthetable.
Ifyouwanttoincludenumbersinyourcode,youhaveafew
options.Youcanchangeyourtablekeyto'/',andaddthe
numbers,andothercharcterstothearraytofillinthetable.
(Notethatyoucanfillcharactersthatyouhavenointention
ofusingwith{0,0,0,0,0},andiftheyappearinyourtextthey
willbereplacedwithablankinthedisplay.)
Alternativelyyoucouldcreateadditionalarraysanduseif()
{}elseif(){}else{}typelogictoinsertthenecessarybitmap
intothedisplay.
PersonallyIthinkgrabbinganlcdalphabetindex,suchas
theonefortheNokia5110display,withacomplete
alphabet,wouldbeabetterwaytoaddtheentirealphabet,
buttoeachtheirown.
Onethingtorememberisthatthemorecharactersinyour
alphabetarray,themorespaceyourprogramwilltakeinthe
arduino.Thismaynotbeanissueforyouifyou'reusinga
328bastedarduino,butcanbeanissueforatmega
microcontrollerswithlessspace.

rusty0101(/member/rusty0101) . rusty0101(/member/rusty0101)

Reply

Analternativetoprovidingafullalphabet,withouthavingtofill 2yearsago
inALLofthecharacters,orusingmultiplearrayswouldbeto
startbydefiningacharacterarraythatyouusetogetanindex
tothealphabetarrayyouaregoingtouse.

Forexampleforthealphabetarrayprovidedinthesamplecode
youcoulduse:
stringalphabetsoupmap="
ABCDEFGHIJKLMNOPQRSTUVWXYZ"
//thestringstartswithaspacethatwillbeindexpointzero,
whichmatchesthe'space'
//characterinalphabetsoup.
Theninsteadof:
intalphabetIndex=msg[charIndex]'@'
if(alphabetIndex<0)alphabetIndex=0
youcoulduse
intalphabetindex=alphabetsoupmap.indexOf(msg[charIndex])
if(alphabetindex<>1)alphabetindex=0
Nowyoucanaddthelowercasealphabet,alldigits,etctothe
bytearrayalphabetsoup,thenaddtheappropriatecharcterto
youralphabetsoupmap,andtesttomakesurethatyourchacter
displaysappropriately(alwaysagoodidea,includingbefore
youstartmodifyingthecodeasabove,thatwayyoucan'back
out'toaknownworkingstate.)
Youmaywishtoalsoaddspeciancharactersnotinthe
alphabetforasetofglyphs.Ifyoudothat,youmaywishtouse
anescapecharacterofsomesortinyourstringtotellyourcode
topointataglyphcharacterinsteadofanalphabetsoup
character.You'llprobablyhavetodoabitofexperimentingto
dothat.

orangeisnon(/member/orangeisnon) . rusty0101(/member/rusty0101)

Thinkingaboutdoingthelastmethod,butamnotsurewhere
"stringalphabetsoupmap="
ABCDEFGHIJKLMNOPQRSTUVWXYZ""
wouldgointhecode.Notseeing"stringalphabetsoupmap="
anywhere.

rusty0101(/member/rusty0101) . orangeisnon(/member/orangeisnon)

Youwouldhavetoaddthevariableorconstant,asitisnot
exactlyhowtheexistingcodefunctions.

Reply

2yearsago

Reply

2yearsago

Suchanadditoincouldbemadealmostanywhere,buttome
themostsensibleplacewouldbewiththeblockofcode
definingthebitmap.E.g.betweenthelinesthatlooklike:
//=======BITMAP=====
&
//=======SETUP======
Donotdefineitwithinthedefinitionofthevariablebyte
alphabets[][5]={...}thatendstwolinesabovethe"SETUP"line.
Thatsaid,itcouldappearinthefunctionthatusesit,andno
whereelse.
Ithinkitmakesmoresensewithintheblockdefiningthe
bitmap,asyouthencanupdateboththebitmaparray,andthe
stringlistingthecharactersinthebitmap,atthesametime.I
wouldrecommendaddingacommenttothecodeexplaining
whatthevariableisfor,andhowsomeonewhowishestoadd
charactersorsymbols,needstoupdatebothalphabetsand
alphabetsoupfortheprogramtooperateasexpected.

jiqfar(/member/jiqfar)

thankstoyourtutorial...
isuccesstobuildit...
anyquestionforyou...
howtoaddnewcharinthecode?...
itryanewcharbutdisplayisnotreadable...
imaketooltoeasyuse...

2yearsago

Reply

(http://cdn.instructables.com/FWA/ZTHI/HKZ9IUGG/FWAZTHIHKZ9IUGG.LARGE.jpg)

speakers123(/member/speakers123) . jiqfar(/member/jiqfar)

Reply

2yearsago

asIcangeneratenumbers?

jiqfar(/member/jiqfar) . speakers123(/member/speakers123) 2yearsago

Reply

yesyoucan...
butitrytoaddthecodestillnotwork...
thisismyfile
http://dl.dropboxusercontent.com/u/22738692/Generator%20LED%20Matrix.exe
(http://dl.dropboxusercontent.com/u/22738692/Generator%20LED%20Matrix.exe)

I MoreComments

FEATURED CHANNELS

Parties
(/tag/type
id/category
craft/channel

Breakfast
(/tag/type
id/category

Thanksgiving
partiesand
Kitchen&Bath
food/channel
(http://www.instructables.com/howto/thanksgiving/)
Newsletter
weddings/) (/id/moen/) breakfast/)

Arduino
(/tag/type
id/category
IntelIoT
(/id/intel/)

LinkItONE

I'min!

Mobile
Downloadourapps!
Android(https://play.google.com/store/apps/details?id=com.adsk.instructables)
iOS(https://itunes.apple.com/app/instructables/id586765571)
Windows(http://apps.microsoft.com/windows/enus/app/7afc8194c771441a959054250d6a8300)

AboutUs

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
ForTeachers(/teachers/)
ArtistsinResidence(/air)
GiftProAccount(/account/give?sourcea=footer)
Forums(/community/)
Answers(/tag/typequestion/?sort=RECENT)
Sitemap(/sitemap/)

TermsofService(http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=21959721) |
PrivacyStatement(http://usa.autodesk.com/adsk/servlet/item?siteID=123112&id=21292079) |
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.

Minecraft
(/tag/type
id/category

technology/channel
(/id/mediatek
workshop/channelplay/channel

arduino/)

linkitone/)
lasercutting/) minecraft/)

Join2million+toreceiveinstant
inspirationinyourinbox.
enteremail

LaserCut
(/tag/type
id/category

Das könnte Ihnen auch gefallen