IO int a7 int b6 int c5 int

  • Slides: 11
Download presentation

程序代码 //设置控制各段的数字IO脚,具体几号引脚对应哪一段,来源为数码管官方引 脚图。 int a=7; int b=6; int c=5; int d=11; int e=10; int

程序代码 //设置控制各段的数字IO脚,具体几号引脚对应哪一段,来源为数码管官方引 脚图。 int a=7; int b=6; int c=5; int d=11; int e=10; int f=8; int g=9; int dp=4; //显示数字 1 void digital_1(void) { unsigned char j; digital. Write(c, LOW); //给数字 5引脚低电平,点亮c段 digital. Write(b, LOW); //点亮b段 for(j=7; j<=11; j++)//熄灭其余段 digital. Write(j, HIGH); digital. Write(dp, HIGH); //熄灭小数点DP段 } //显示数字 2 void digital_2(void) { unsigned char j; digital. Write(b, LOW); digital. Write(a, LOW); for(j=9; j<=11; j++) digital. Write(j, LOW); digital. Write(dp, HIGH); digital. Write(c, HIGH); digital. Write(f, HIGH); }

//显示数字 3 void digital_3(void) { unsigned char j; digital. Write(g, LOW); digital. Write(d, LOW);

//显示数字 3 void digital_3(void) { unsigned char j; digital. Write(g, LOW); digital. Write(d, LOW); for(j=5; j<=7; j++) digital. Write(j, LOW); digital. Write(dp, HIGH); digital. Write(f, HIGH); digital. Write(e, HIGH); } //显示数字 4 void digital_4(void) { digital. Write(c, LOW); digital. Write(b, LOW); digital. Write(f, LOW); digital. Write(g, LOW); digital. Write(dp, HIGH); digital. Write(a, HIGH); digital. Write(e, HIGH); digital. Write(d, HIGH); } //显示数字 5 void digital_5(void) { unsigned char j; for(j=7; j<=9; j++) digital. Write(j, LOW); digital. Write(c, LOW); digital. Write(dp, HIGH); digital. Write(b, HIGH); digital. Write(e, HIGH); }

//显示数字 6 void digital_6(void) { unsigned char j; for(j=7; j<=11; j++) digital. Write(j, LOW);

//显示数字 6 void digital_6(void) { unsigned char j; for(j=7; j<=11; j++) digital. Write(j, LOW); digital. Write(c, LOW); digital. Write(dp, HIGH); digital. Write(b, HIGH); } //显示数字 7 void digital_7(void) { unsigned char j; for(j=5; j<=7; j++) digital. Write(j, LOW); digital. Write(dp, HIGH); for(j=8; j<=11; j++) digital. Write(j, HIGH); } //显示数字 8 void digital_8(void) { unsigned char j; for(j=5; j<=11; j++) digital. Write(j, LOW); digital. Write(dp, HIGH); } void setup() { int i; //定义变量 for(i=4; i<=11; i++) pin. Mode(i, OUTPUT); //设置 4~ 11引脚为输出模式 }

void loop() { while(1) { digital_1(); //数字 1 delay(2000); //延时 2 s digital_2(); delay(2000);

void loop() { while(1) { digital_1(); //数字 1 delay(2000); //延时 2 s digital_2(); delay(2000); digital_3(); delay(2000); digital_4(); delay(2000); digital_5(); delay(2000); digital_6(); delay(2000); digital_7(); delay(2000); digital_8(); delay(2000); } } 本次试验的效果为数码管 1, 2, 3, 4, 5, 6, 7, 8这样子循环显示。