I ordered a fine graphic LCD from the adafruit store and decided to write a little graphics Menorah to learn how it works. I am not a programmer, and am new to micro-controllers so I learned a lot in the following sketch.
Some of the topics I included are:
- Creating functions
- drawing graphics with GLCD (I did it by hand for fun, but I assume the bitmap works as well or better)
- Text placement in GLCD
- debouncing (this doesn’t actually work in the following sketch. If you know why, drop a comment
- abstraction (an array determines what order the flames are lit in so you can change it up)
A non-blocking timer. Using delay(); made my button detection icky. I decided to try and find a different way. I’m actually pretty happy with how this part worked out. suggestions on improving efficiency will be appreciated. I found a library in arduino.cc called fuse I think. I could never get the page to load, though so I couldn’t use it.
Lastly, I made this for my wife, and I know next to nothing about the Menorah. Please trust that it was done out of respect and that any mispellings, or cultural gaffes are based on my ignorance alone. Feel free to post corrections in this regard as well.
Without further ado, I present to you just in time to be much to late for this year…