arduino学习笔记十三--3位数码管测试

测试数码管1-8数字,自动翻页显示。

实验用到的元件

实验用到的元件 ,
1个数码管,
8根杜邦线,
1块实验板。

原理图

连接图

烧写程序后, 数码管自动 1-8滚动显示效果

代码:

 //设置控制各段的数字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;
   digitalWrite(c,LOW);//给数字5引脚低电平,点亮c段
   digitalWrite(b,LOW);//点亮b段
   for(j=7;j<=11;j++)//熄灭其余段
     digitalWrite(j,HIGH);
   digitalWrite(dp,HIGH);//熄灭小数点DP段
 }
 //显示数字2
 void digital_2(void)
 {
   unsigned char j;
   digitalWrite(b,LOW);
   digitalWrite(a,LOW);
   for(j=9;j<=11;j++)
     digitalWrite(j,LOW);
   digitalWrite(dp,HIGH);
   digitalWrite(c,HIGH);
   digitalWrite(f,HIGH);
 }
 //显示数字3
 void digital_3(void)
 {
   unsigned char j;
   digitalWrite(g,LOW);
   digitalWrite(d,LOW);
   for(j=5;j<=7;j++)
     digitalWrite(j,LOW);
   digitalWrite(dp,HIGH);
   digitalWrite(f,HIGH);
   digitalWrite(e,HIGH);
 }
 //显示数字4
 void digital_4(void)
 {
   digitalWrite(c,LOW);
   digitalWrite(b,LOW);
   digitalWrite(f,LOW);
   digitalWrite(g,LOW);
   digitalWrite(dp,HIGH);
   digitalWrite(a,HIGH);
   digitalWrite(e,HIGH);
   digitalWrite(d,HIGH);   
 }
 //显示数字5
 void digital_5(void)
 {
   unsigned char j;
   for(j=7;j<=9;j++)
     digitalWrite(j,LOW);
   digitalWrite(c,LOW);
   digitalWrite(d,LOW);
   digitalWrite(dp,HIGH);
   digitalWrite(b,HIGH);
   digitalWrite(e,HIGH);
 }
 //显示数字6
 void digital_6(void)
 {
   unsigned char j;
   for(j=7;j<=11;j++)
     digitalWrite(j,LOW);
   digitalWrite(c,LOW);
   digitalWrite(dp,HIGH);
   digitalWrite(b,HIGH);   
 }
 //显示数字7
 void digital_7(void)
 {
   unsigned char j;
   for(j=5;j<=7;j++)
     digitalWrite(j,LOW);
   digitalWrite(dp,HIGH);
   for(j=8;j<=11;j++)
     digitalWrite(j,HIGH);
 }
 //显示数字8
 void digital_8(void)
 {
   unsigned char j;
   for(j=5;j<=11;j++)
     digitalWrite(j,LOW);
   digitalWrite(dp,HIGH);
 }
 void setup()
 {
   int i;//定义变量
   for(i=4;i<=11;i++)
     pinMode(i,OUTPUT);//设置4~11引脚为输出模式
 }
 void loop()
 {  
   while(1)
   {
     digital_1();//数字1
     delay(2000);//延时2s
     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
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

甜航一直在

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值