如果在主程序中扫描,除非你的程序非常简单。不然你想,如果你的按键检测也是非中断方式的,那么按住一个按键就可以让你的显示凝固。就算没有按键处理,其实程序也是要受到其他代码的执行时间影响的,实际应用中,会看到数码管有闪烁现象,或亮度有变化。所以不管你的程序是很简单的,还是很复杂的,都非常推荐你用定时器中断来完成数码管的动态扫描。
至于中断的时间,我一般按每秒扫描所有位数码管50次左右来计算。比如你有4位数据管,那么每位的时间就是 (1/50)/4=5ms,如果你有8位,不难算出这个值就要变成2.5ms了。
中断时间越短,对cpu的占用越严重,中断时间越长,数码管的闪烁感越强烈。应用中可以看实际效果按自己的要求来调整,没有什么固定的数值。