![]() Each time the interrupt executes it draws the current column of LEDs (stored as a global array) and then increments the column counter so the next time it can draw the next one until it reaches the last column and starts all over again. To do this I've opted to use an interrupt that triggers at something like 4kHz. #Diy word clock generator code#With that disclaimer out of the way let's get into it.įor starters I needed a way to autonomously scan the 12x10 led matrix so my main portion of code could talk with the RTC chip, generate animations, etc. #Diy word clock generator pro#Keep in mind I'm definitely not a pro software developer so the way I ended up doing things are very likely not optimized or conventional. This may be a little dry but let's go through how/why I designed the software for the clock in the way I did. In the end this is how this iteration of the design looks:ĭefinitely not perfect, but at least for me it is good enough considering the trade-off between inter-LED contrast and cost/simplicity of design (I intend to sell a kit of this project so the less complex the design the better). ![]() Luckily I have a 3D printer and was able to very quickly print out a few test prints to iterate a light box design which also doubles as a stand for the clock, holding it up at a slight angle. So the main method I could fall back on was the age old method of using a physical separator between each LED to try and contain as much of the light as possible. I've gotten tons of suggestions involving using vias around each letter to try and contain as much light as possible within each letter, but I really liked how clean the top surface looked without having to riddle it with vias. ![]() To help on the pcb side, I opted for black soldermask, and additionally used the copper layer to try and block as much light as possible, but none of these would help with light scattered internally in the pcb's FR4 material which is a yellowish semi-opaque hue that works pretty well as a diffuser. So to start, here's a quick little demo of the current state of the software I described in the last log.Ī main concern when I first started this project was that there would be too much light bleed between nearby letters, thus making the display difficult to read for lack of contrast. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |