stm32驱动4位数码管不能动态显示?

2019-07-21 03:25发布

最近在写一个4位数码管的程序,目前可以正确显示1122 1212这种,但是如果我想切换显示这两个数字,就不行,要么是全亮,4个8了,要么是快速切换,我想弄一个0到9999的现象,每个数都可以显示,但是放到一起,用for循环做,就不行。
模块是骑飞的4位数码管模块,2个74HC595级联,驱动4位数码管,谢谢
我会把文件传上来,希望帮我看一下,谢谢
int main(void)
{
        uint16_t i=0;
        hc595_init();
        DelayInit();
//        display2(2121);


        while(1) {
       

                if(SW1_ON==0)
//这个函数的作用是让4位数码管显示这四位数,这个练习是按住按键,显示2121,松开后显示1010,可以做到。但是如果想自动切换,比如从0000到9999,就会乱,现实不清楚
                display2(2121);
                else
                        display2(1010);

               

               
//                display(0x01,data[0]);
//                for(i=0;i<3;i++)
//                {
//                        display(0x02,data);
//                }

                       
               
       
        }
}


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。