#include<reg52.h>
//sbit D1=P1^0;
sbit D2=P2^0;
void main()
{
//D1=0;
D2=0;
}
sbit 位定义,变量名可以随便取,P1^0,单片机的P1口连接的第一个灯,我这里好像是P2。
改成P2
#include<reg52.h>
//sbit D1=P1^0;
sbit D2=P2^0;
sbit D3=P2^1;
void main()
{
//D1=0;
D2=0;
D3=0;
}
亮了两个发光二极管。
再改:
#include<reg52.h>
sbit D0=P2^0;
sbit D1=P2^1;
sbit D2=P2^2;
sbit D3=P2^3;
sbit D4=P2^4;
sbit D5=P2^5;
sbit D6=P2^6;
sbit D7=P2^7;
void main()
{
D1=0;
D2=0;
D3=0;
D4=0;
D5=0;
D6=0;
D7=0;
}
发现D1灯没有亮,DA1灯也没有亮。显示了个8,检查发现原来D0=0漏了写。
再改:
#include<reg52.h>
sbit D0=P2^0;
sbit D1=P2^1;
sbit D2=P2^2;
sbit D3=P2^3;
sbit D4=P2^4;
sbit D5=P2^5;
sbit D6=P2^6;
sbit D7=P2^7;
void main()
{
D0=0;
D1=0;
D2=0;
D3=0;
D4=0;
D5=0;
D6=0;
D7=0;
}
8个灯都亮了,还是显示的8,这个8是怎么显示的,总结上面的,这个不是亮的灯数量的意思。
再改:
#include<reg52.h>
sbit D0=P2^0;
sbit D1=P2^1;
sbit D2=P2^2;
sbit D3=P2^3;
sbit D4=P2^4;
sbit D5=P2^5;
sbit D6=P2^6;
sbit D7=P2^7;
sbit D0=P2^0;
sbit D1=P2^1;
sbit D2=P2^2;
sbit D3=P2^3;
sbit D4=P2^4;
sbit D5=P2^5;
sbit D6=P2^6;
sbit D7=P2^7;
sbit DA1=P1^0;
void main()
{
D0=0;
D1=0;
D2=0;
D3=0;
D4=0;
D5=0;
D6=0;
D7=0;
DA1=0;
}
void main()
{
D0=0;
D1=0;
D2=0;
D3=0;
D4=0;
D5=0;
D6=0;
D7=0;
DA1=0;
}
DA1灯会闪一下。
也许现在需要看下这个电路图。