I'm doing a small project for my education in digital electronics system design and decided to make a simon says game on the arduino uno. It being an uno board it has the 328P on board. I decided to include a score counter by multiplexing a double 8-segment display. Since our project had to include interrupts I decided to use software interrupts by using timer2 and causing it to overflow at 1000hz.
My problem occured when I wanted my coloured leds lighting up during the game, however the LEDS have to be seen shining for a little while. I initially tried using the standard delay() but it seems that during the delay timer2 does not interrupt and thus my multiplex fail when other lights are supposed to be visible.
I tried implementing my own delay procedures by having a counter increased by the ISR and the delay method stays in a while-loop untill the counter has reached a certain value but it some how halts the multiplex anyway.
TLDR; Is there a way to delay the program without disrupting timer2 interrupts?