mirror of
https://github.com/digistump/DigistumpArduino.git
synced 2025-04-28 07:39:02 -07:00
74 lines
1.7 KiB
Plaintext
74 lines
1.7 KiB
Plaintext
![]() |
//We always have to include the library
|
||
|
#include "LedControl.h"
|
||
|
|
||
|
/*
|
||
|
Now we need a LedControl to work with.
|
||
|
***** These pin numbers will probably not work with your hardware *****
|
||
|
pin 12 is connected to the DataIn
|
||
|
pin 11 is connected to the CLK
|
||
|
pin 10 is connected to LOAD
|
||
|
We have only a single MAX72XX.
|
||
|
*/
|
||
|
LedControl lc=LedControl(12,11,10,1);
|
||
|
|
||
|
/* we always wait a bit between updates of the display */
|
||
|
unsigned long delaytime=250;
|
||
|
|
||
|
void setup() {
|
||
|
/*
|
||
|
The MAX72XX is in power-saving mode on startup,
|
||
|
we have to do a wakeup call
|
||
|
*/
|
||
|
lc.shutdown(0,false);
|
||
|
/* Set the brightness to a medium values */
|
||
|
lc.setIntensity(0,8);
|
||
|
/* and clear the display */
|
||
|
lc.clearDisplay(0);
|
||
|
}
|
||
|
|
||
|
|
||
|
/*
|
||
|
This method will display the characters for the
|
||
|
word "Arduino" one after the other on digit 0.
|
||
|
*/
|
||
|
void writeArduinoOn7Segment() {
|
||
|
lc.setChar(0,0,'a',false);
|
||
|
delay(delaytime);
|
||
|
lc.setRow(0,0,0x05);
|
||
|
delay(delaytime);
|
||
|
lc.setChar(0,0,'d',false);
|
||
|
delay(delaytime);
|
||
|
lc.setRow(0,0,0x1c);
|
||
|
delay(delaytime);
|
||
|
lc.setRow(0,0,B00010000);
|
||
|
delay(delaytime);
|
||
|
lc.setRow(0,0,0x15);
|
||
|
delay(delaytime);
|
||
|
lc.setRow(0,0,0x1D);
|
||
|
delay(delaytime);
|
||
|
lc.clearDisplay(0);
|
||
|
delay(delaytime);
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
This method will scroll all the hexa-decimal
|
||
|
numbers and letters on the display. You will need at least
|
||
|
four 7-Segment digits. otherwise it won't really look that good.
|
||
|
*/
|
||
|
void scrollDigits() {
|
||
|
for(int i=0;i<13;i++) {
|
||
|
lc.setDigit(0,3,i,false);
|
||
|
lc.setDigit(0,2,i+1,false);
|
||
|
lc.setDigit(0,1,i+2,false);
|
||
|
lc.setDigit(0,0,i+3,false);
|
||
|
delay(delaytime);
|
||
|
}
|
||
|
lc.clearDisplay(0);
|
||
|
delay(delaytime);
|
||
|
}
|
||
|
|
||
|
void loop() {
|
||
|
writeArduinoOn7Segment();
|
||
|
scrollDigits();
|
||
|
}
|