Hi everyone, I'm new to this so please bare with me, and any help will be greatly appreciated.
I'm building a device for my show to simulate a time machine, and his heavily based off of Back to the future, So Im using a 16x16 matrix for a flux capacitor, and I'm adding all kinds of other stuff to it.
My current problem is trying to use an IR remote to active the system (I.e. the Matrix), and I would also like to be able to adjust the speed of the animation as well. I have one system with the animation working, and one system where the remote is being recived but have an issue combining the 2. Generally if I can just get the matrix to turn on and off, that would be amazing enough lol.
If you have any advise or examples..etc it would be amazing.
For this project I'm also adding a small volt motor to activate a for of propellers, a series of LEDS that will flash in a sequence, possible Light string ( I dont know what to call it, its a string that lights up XD).
and a 8 pin display that will count from 0 to 88, and Id also like to add a 16 pin Display that will say out of time among other things as well.
Any help with any of these will also be amazing, lol.
Heres the Code for the flux.
the Remote I have is a Car MP3 IR Remote
and the button Im trying to assign to the matrix to turn it on and off is the play pause button
0XFFC23D
#include "LedControl.h"
//This is The code for the Flux Capacitor.
//The Capacitor will stay on until the Arduino is powered off
// Hardware connection: 10 (13) = CLK
// 8 (11) = Din
// 9 (10) = CS
// Vcc = 5V * Hardware connection:
LedControl lc=LedControl(12,11,10,2); // Pins: DIN,CLK,CS, # of Display connected
unsigned long delayTime=40; // Delay between Frames
// Put values in arrays
byte flux1a[] =
{
B00000011, // First frame of Flux capacitor #1
B00000000,
B00000000,
B10000000,
B10000000,
B00000000,
B00000000,
B00000011
};
byte flux1b[] =
{
B00000000, // Second frame of Flux capacitor #1
B00000110,
B00000000,
B01000000,
B01000000,
B00000000,
B00000110,
B00000000
};
byte flux1c[] =
{
B00000000, // Third frame of Flux capacitor #1
B00000000,
B00001100,
B00100000,
B00100000,
B00001100,
B00000000,
B00000000
};
byte flux1d[] =
{
B00000000, // Fourth frame of Flux capacitor #1
B00000000,
B00000000,
B00011000,
B00011000,
B00000000,
B00000000,
B00000000
};
void setup()
{
lc.shutdown(0,false); // Wake up displays
lc.shutdown(1,false);
lc.setIntensity(0,5); // Set intensity levels
lc.setIntensity(1,5);
lc.setIntensity(4,15);
lc.clearDisplay(0); // Clear Displays
lc.clearDisplay(1);
}
// Take values in Arrays and Display them
void sflux1a()
{
for (int i = 0; i < 8; i++)
{
lc.setRow(0,i,flux1a*);*
- }*
}
void sflux1b()
{
- for (int i = 0; i < 8; i++)*
- {*
_ lc.setRow(0,i,flux1b*);_
_ }_
_}_
void sflux1c()
_{_
_ for (int i = 0; i < 8; i++)_
_ {_
_ lc.setRow(0,i,flux1c);
}
}
void sflux1d()
{
for (int i = 0; i < 8; i++)
{
lc.setRow(0,i,flux1d);
}
}*_
void loop()
{
// Put #1 frame on both Display
* sflux1a();*
* delay(delayTime);*
* sflux1b();*
* delay(delayTime);*
* sflux1c();*
* delay(delayTime);*
* sflux1d();*
* delay(delayTime);*
}
Please and thank you.