I used some sanding paper to diffuse the displays but stripped of the grey stuff as well. still looks nice though. It's possible to daisy them with I2C and put them next to each other to get an even bigger matrix. Works as a micro badge.
Here's the pinout of those tiny matrices. Had to google the name on the PCB to find stuff. Funky trap when checking the pinouts, it's not like an IC where the first row - first col LED is on the top left, it's on the bottom.
Here's some code to start:
// columns are anodes (positive) in my case
int col_pins[8] = {
// 13,3,4,10,6,11,15,16
5, A1, A0, 8, 12, 7, 3, 2
};
int row_pins[8] = {
// 9,14,8,12,1,7,2,5
9, 4, 10, 6, A3, 11, A2, 13
};
byte img[8] =
{
B11000011,
B11000011,
B00111100,
B00111100,
B00111100,
B00111100,
B11000011,
B11000011
};
void setup() {
// put your setup code here, to run once:
for (int i=0; i<8; i++)
{
pinMode(col_pins[i], OUTPUT);
pinMode(row_pins[i], OUTPUT);
}
for (int i=0; i<8; i++)
{
digitalWrite(col_pins[i], HIGH);
digitalWrite(row_pins[i], LOW);
}
}
void loop()
{
for (int j=0; j<8; j++)
{
digitalWrite(col_pins[j], LOW);
int i = 0;
for (byte mask = B00000001; mask>0; mask <<= 1)
{
if (img[j] & mask)
{
digitalWrite(row_pins[i], HIGH);
delayMicroseconds(15);
digitalWrite(row_pins[i], LOW);
delayMicroseconds(5);
}
else
{
digitalWrite(row_pins[i], LOW);
delayMicroseconds(20);
}
i++;
}
digitalWrite(col_pins[j], HIGH);
}
}
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.
nice!
I like this white front. With a white matrix the new hackaday.io logo would be also in the right colors
Are you sure? yes | no
Then sandpaper is your friend too :)
Are you sure? yes | no