While waiting for the display board to return from OSHPark, I was also interested in an alternative module. I had mentioned this idea before and it was time to start taking a closer look. For the purpose, I created another branch in GitHub rather than creating a whole new project.
The key feature of this implementation is that it does not use a dedicated display driver. The idea is to “roll my own” so to speak. This would incorporate the 7 segment display, but using a micro controller to drive them. Aside from the complexity of setting this up, there are a number of advantages, such as, having control over the API to drive the display.
The setup for the controller basically stays the same as for implementation with the MAX7221. But instead, a 74LS138 will be used as a 3 bit to 8 bit decoder/demultiplexer. In other words, this will take a binary coded decimal value from 0-7 and use that to drive up to eight lines. In my case, I have six. Four digits and one line for the indicators (auto-time and alarm enabled), and one for the colon. In addition to the 74LS138, there is a 74HC4511 Binary Coded Decimal to 7 segment driver. These two components together could drive up to 8, 7 segment displays.
On the previous board, I had used a 4 layer model. Routing was quite challenging all the same where the network of traces for the seven segment displays clash with those for the controller. For this new, alternative approach, I decided to try two separate boards. One for the controller/driver circuit and the other for the display only. The idea is to then plug one board onto the other and solder the pins.
Further work is needed to program this device. I will be using SMD controllers so this means I will have to program them on-board. So there is more stuff to learn there.
The controller I have decided on is will be the ATMega88. I was going to use the ATMega8 but the 88 was easier to source at the time. No other technical grounds apart from convenience.
I am still waiting on delivery of the boards for the MAX7221 based display so in the mean time, the next stage will be to start looking at the actual controller board. There will be some mechanical aspects to that problem.
- The board must fit into the existing housing
- The buttons on the base of the housing must still be usable and have the same function
- The board should not be the same size as the original as this will add to the overall cost (though two versions of the display have already blown the budget).
- Provision is needed to plug the RCF77 module into the new main board.