|
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
uint i,x;
void delay(uint x);
uchar duan[] = {0x06,0x5b,0x4f,0x66};
uchar wei[] = {0xfe,0xfd,0xfb,0xf7};
void main()
{
while(1)
{
for(i=0;i<4;i++)
{
P0 = duan[i];
P2 = wei[i];
delay(500);
}
}
}
void delay(uint x)
{
uint j;
while(x--)
{
for(j=120;j>0;j--);
}
}
這是修改后的代碼。另外提醒你,直接用P2口驅(qū)動數(shù)碼管,有問題。51系列單片機的P2口線最大灌入電流只有20mA,你的電路中,若某個數(shù)碼管同時點亮2個以上筆段時(按照一個筆段10mA點亮的話),會燒了P2的口線。建議你加三極管驅(qū)動。 |
|