设计一个程序,实现以下功能从串口中输入一个数字(范围为0-9),然后通过共数码管将该数字显示出来
int a=7;
int b=6;
int c=5;
int dp=4;
int d=10;
int e=11;
int f=8;
int g=9;
void one()
{
int j;
digitalWrite(c,HIGH);
digitalWrite(b,HIGH);
for(j=7;j<=11;j++)
digitalWrite(j,LOW);
digitalWrite(dp,LOW);
}
void tow()
{int j;
digitalWrite(a,HIGH);
digitalWrite(b,HIGH) ;
for (j=9;j<=11;j++)
digitalWrite (j, HIGH) ;
digitalWrite(dp,LOW) ;
digitalWrite(c,LOW) ;
digitalWrite(f,LOW) ;
}
void three()
{
int j;
for (j=5;j<=7;j++)
digitalWrite (j, HIGH) ;
digitalWrite (d, HIGH) ;
digitalWrite (g, HIGH) ;
digitalWrite (dp, LOW) ;
digitalWrite (f, LOW) ;
digitalWrite (e, LOW) ;
}
void four(void)
{
int j;
digitalWrite (f, HIGH);
digitalWrite (g, HIGH);
digitalWrite (b,HIGH);
digitalWrite (c, HIGH);
digitalWrite (a, LOW) ;
digitalWrite (e,LOW);
digitalWrite (d, LOW) ;
digitalWrite (dp, LOW);
}
void five(void)
{
int j;
for (j=5;j<=10;j++)
digitalWrite (j, HIGH) ;
digitalWrite (a, HIGH) ;
digitalWrite (c, HIGH);
digitalWrite (dp, LOW) ;
digitalWrite (b, LOW) ;
digitalWrite (e, LOW) ;
}
void six(void)
{
int j;
for (j=5;j<=11;j++)
digitalWrite (j, HIGH) ;
digitalWrite (b, LOW) ;
digitalWrite (dp, LOW);
}
void seven(void)
{
int j;
for (j=5;j<=7;j++)
digitalWrite (j, HIGH) ;
digitalWrite (f, LOW) ;
digitalWrite (g, LOW);
digitalWrite (e, LOW) ;
digitalWrite (d, LOW) ;
digitalWrite (dp, LOW);
}
void eight(void)
{
int j;
for (j=5;j<=11;j++)
digitalWrite (j, HIGH) ;
digitalWrite (dp, LOW);
}
void nine(void)
{
int j;
for (j=5;j<=10;j++)
digitalWrite (j, HIGH) ;
digitalWrite (e, LOW) ;
digitalWrite(dp, LOW) ;
}
void zero(void)
{
int j;
for (j=5;j<=11;j++)
digitalWrite (j, HIGH) ;
digitalWrite (g, LOW) ;
digitalWrite (dp, LOW) ;
}
void zerozero(void)
{
int j;
for (j=5;j<=11;j++)
digitalWrite (j, LOW);
digitalWrite (dp, HIGH) ;
}
void setup()
{
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
Serial.begin(9600);
}
void loop()
{
if (Serial.available() > 0)
{
char i;
i = Serial.read();
char j;
j = i;
Serial.println(j);
if (j == '1')
{
one();
delay(100);
}
if (j == '2')
{
tow();
delay(100);
}
if (j == '3')
{
three();
delay(100);
}
if (j == '4')
{
four();
delay(100);
}
if (j == '5')
{
five();
delay(100);
}
if (j == '6')
{
six();
delay(100);
}
if (j == '7')
{
seven();
delay(100);
}
if (j == '8')
{
eight();
delay(100);
}
if (j == '9')
{
nine();
delay(100);
}
if (j == '0')
{
zero();
delay(100);
}
if (j == '00')
{
zerozero();
delay(100);
}
}
}