51单片机在使用数码管的时候,若使用自定义函数则会出现如图所示情况
要实现的效果是利用switch语句来实现第几个数码管显示什么数字
代码如下 理想结果是应该只有第二个灯显示数字1
#include <REGX52.H>
void Nixie(unsigned char Location,unsigned char number)
{
switch(Location)
{
case 1:P2_4=1;P2_3=1;P2_2=1;break;
case 2:P2_4=1;P2_3=1;P2_2=0;break;
case 3:P2_4=1;P2_3=0;P2_2=1;break;
}
P0=0x06;
}
void main()
{
Nixie(2,2);
}
即使不使用switch语句也是同样的结果,但是放在主函数里写显示正常