I am going to use a standard ATMega 328p and it will have 2 buttons for up and down, (does it need debouncing?) and 4 bit output from 0000 ($0) to 1111 ($F) and I wanted to also add pair of 7 segment LED to display current mode.
But I don’t want the usual 0 to F, I wanted to start at 1 to 9, then 10-16, no 0 padding for 1-9. I will probably use the odd display whose first digit has 2 segment for 1 and 7 segment for second digit. The pinout is the same as standard 7 segment except there’s only “b” and “c” pin on first digit. I would need to know what’s the correct library for handling LED display, and to correctly handle the 4 bit binary code to 2 digit decimal display. A quick way would be for display, add 1 to binary code so it will always start at lowest 1 and highest 16. Since the first digit is only a 1, I could use just 1 pin to turn it on or off, and 7 more pins for the second digit.
In the old time before Arduino, and even before other microcontroller I would have used TTL chips like 7490 to control display, binary counter with up and down pin (and connected to SRAM’s upper address pin), register to store current value, adder to add 1 for the display, and it would have meant a lot more wiring in the past.
On Arduino, keeping track of current value via button will be easy, and the binary address output will also be easy. It’s the controlling LED display I need help with.
What I will use for is the hack job I did on Duo-R http://www.pcenginefx.com/forums/index.php?topic=20358
The original save memory of Duo and PC Engine CD system is limited to 2k. It was a lot back in the day but there had been many games released since then and 2k is not enough for some games. There were additional devices like Tennokoe Bank card or 128 Memory Base to deal with those but none of those are for English, those requires knowing a bit of Japanese language to use it fully. I wanted something that didn’t require knowing other languages to use, something that when is done it’d be easy enough that cave men can use it!!!
First: replacing the original 2k SRAM internally was the easy part (other than having a bad chip the first time around. It has been replaced with a 32K SRAM chip. This meant I needed a way to control 4 new address to toggle one of the 16 2k banks or pages. A lazy way would be a hexadecimal thumbwheel but I wanted a little bling using 2 digit 7 segment LED to show current “page”
PS if I got a full 2 digit displays, I could replace the 32k SRAM with something bigger, program Arduino accordingly for extra address.