I am really happy with how much progress I did tonight. I finished all of the LED functions, so that you can vary brightness, speed, and pattern, from the settings menu. Those settings are stored in eeprom just like everything else.
When you first run it, you’ll import it into your Arduino libraries directory. Then you’ll restart Arduino, and check out the example. You can modify which pins are for the LCD, and which Analog input’s you want to use. The circuit is described in AdvMenu.cpp, and I plan on posting a schematic eventually. When you look at the example, you’ll see that only a few initializations are in the main arduino sketch. You’ll have to modify the actual AdvMenu.cpp, AdvMenu.h and MusicMenu.cpp to suit your tastes.
I have included 1 sample card and 1 hidden card, just to show you the capabilities of the library. I have also included #defines in the top of AdvMenu.h that can do things like disable music (saves 11274 bytes), disable cards (saves 664 bytes), disable passwords. It also does some pretty necessary stuff. The first time you run it, you’ll need SETUPEEPROM and SETUPMENU uncommented, since it will setup the default menu and then save it to eeprom. After you do that, then you’ll need to comment them out.
For the Shift Registers, you’ll need to manually define them in AdvMenu.h. Since I wanted speed, you’ll define the pin numbers, their ports, and the pin number of the port. You can look at this pin mapping to figure out what you need to put there.
I’ll continue to update this library as I add more functions to this VDay card. My next thing to add is a little game called Dodge. Please let me know if you have any suggestions, or if you like it 🙂 Progress!!!