由于proteus仿真的速度比实际硬件运行的速度慢很多,所以在proteus中将51单片机设置为12Mhz,如下所示:
会导致keil编写完代码后即使2ms显示一个数码管也会造成一个一个显示的结果:
解决办法就是将proteus中的51单片机提高频率,如下所示:
最后就能动态显示了:
如果提高频率之后,出现乱码现象,如下:
那么可能就是keil代码里没有给数码管消隐,则需要在对数码管进行段选、位选之前先将位选全部关闭进行消隐,代码类似如下:
由于proteus仿真的速度比实际硬件运行的速度慢很多,所以在proteus中将51单片机设置为12Mhz,如下所示:
会导致keil编写完代码后即使2ms显示一个数码管也会造成一个一个显示的结果:
解决办法就是将proteus中的51单片机提高频率,如下所示:
最后就能动态显示了:
如果提高频率之后,出现乱码现象,如下:
那么可能就是keil代码里没有给数码管消隐,则需要在对数码管进行段选、位选之前先将位选全部关闭进行消隐,代码类似如下: