一:八段数码管的使用

控制要求:0-9的计时数据

实物连接图:

控制代码:

//智慧自动化2018.6.11

int a=;//定义数字接口7 连接a 段数码管

int b=;// 定义数字接口6 连接b 段数码管

int c=;// 定义数字接口5 连接c 段数码管

int d=;// 定义数字接口10 连接d 段数码管

int e=;// 定义数字接口11 连接e 段数码管

int f=;// 定义数字接口8 连接f 段数码管

int g=;// 定义数字接口9 连接g 段数码管

int dp=;// 定义数字接口4 连接dp 段数码管

void digital_0(void) //显示数字5

{

  unsigned char j;

  digitalWrite(a,HIGH);

  digitalWrite(b,HIGH);

  digitalWrite(c,HIGH);

  digitalWrite(d,HIGH);

  digitalWrite(e,HIGH);

  digitalWrite(f,HIGH);

  digitalWrite(g,LOW);

  digitalWrite(dp,LOW);

}

void digital_1(void) //显示数字1

{

  unsigned char j;

  digitalWrite(c,HIGH);//给数字接口5 引脚高电平,点亮c 段

  digitalWrite(b,HIGH);//点亮b 段

  for(j=;j<=;j++)//熄灭其余段

  digitalWrite(j,LOW);

  digitalWrite(dp,LOW);//熄灭小数点DP 段

}

void digital_2(void) //显示数字2

{

  unsigned char j;

  digitalWrite(b,HIGH);

  digitalWrite(a,HIGH);

  for(j=;j<=;j++)

  digitalWrite(j,HIGH);

  digitalWrite(dp,LOW);

  digitalWrite(c,LOW);

  digitalWrite(f,LOW);

}

void digital_3(void) //显示数字3

{

  digitalWrite(g,HIGH);

  digitalWrite(a,HIGH);

  digitalWrite(b,HIGH);

  digitalWrite(c,HIGH);

  digitalWrite(d,HIGH);

  digitalWrite(dp,LOW);

  digitalWrite(f,LOW);

  digitalWrite(e,LOW);

}

void digital_4(void) //显示数字4

{

  digitalWrite(c,HIGH);

  digitalWrite(b,HIGH);

  digitalWrite(f,HIGH);

  digitalWrite(g,HIGH);

  digitalWrite(dp,LOW);

  digitalWrite(a,LOW);

  digitalWrite(e,LOW);

  digitalWrite(d,LOW);

}

void digital_5(void) //显示数字5

{

  unsigned char j;

  digitalWrite(a,HIGH);

  digitalWrite(b, LOW);

  digitalWrite(c,HIGH);

  digitalWrite(d,HIGH);

  digitalWrite(e, LOW);

  digitalWrite(f,HIGH);

  digitalWrite(g,HIGH);

  digitalWrite(dp,LOW);

}

void digital_6(void) //显示数字6

{

  unsigned char j;

  for(j=;j<=;j++)

  digitalWrite(j,HIGH);

  digitalWrite(c,HIGH);

  digitalWrite(dp,LOW);

  digitalWrite(b,LOW);

}

void digital_7(void) //显示数字7

{

  unsigned char j;

  for(j=;j<=;j++)

  digitalWrite(j,HIGH);

  digitalWrite(dp,LOW);

  for(j=;j<=;j++)

  digitalWrite(j,LOW);

}

void digital_8(void) //显示数字8

{

  unsigned char j;

  for(j=;j<=;j++)

  digitalWrite(j,HIGH);

  digitalWrite(dp,LOW);

}

void digital_9(void) //显示数字5

{

  unsigned char j;

  digitalWrite(a,HIGH);

  digitalWrite(b,HIGH);

  digitalWrite(c,HIGH);

  digitalWrite(d,HIGH);

  digitalWrite(e, LOW);

  digitalWrite(f,HIGH);

  digitalWrite(g,HIGH);

  digitalWrite(dp,LOW);

}

void setup()

{

  int i;//定义变量

  for(i=;i<=;i++)

  pinMode(i,OUTPUT);//设置4~11 引脚为输出模式

}

void loop()

{

  while()

  {

    digital_0();//显示数字1

    delay();//延时1s

    digital_1();//显示数字1

    delay();//延时1s

    digital_2();//显示数字2

    delay(); //延时1s

    digital_3();//显示数字3

    delay(); //延时1s

    digital_4();//显示数字4

    delay(); //延时1s

    digital_5();//显示数字5

    delay(); //延时1s

    digital_6();//显示数字6

    delay(); //延时1s

    digital_7();//显示数字7

    delay(); //延时1s

    digital_8();//显示数字8

    delay(); //延时1s

    digital_9();//显示数字8

    delay(); //延时1s

  }

}

控制代码

arduino八段数码管使用的更多相关文章

  1. Verilog HDL那些事_建模篇笔记(实验七:数码管电路驱动)

    1.同步动态扫描 多个数码管的显示采用的是同步动态扫描方法,同步动态扫描指的是:行信号和列信号同步扫描,是一种并行操作. 2.数码管驱动电路实现思路      如果要求数码管显示我们想要的数字,首先需 ...

  2. Arduino教程资料汇总(8月22日悄悄跟新了一下)

    http://www.geek-workshop.com/thread-985-1-1.html 本帖最后由 迷你强 于 2013-8-31 12:36 编辑 =====F-101 arduino基础 ...

  3. 【.NET 与树莓派】LED 数码管驱动模块——TM1638

    LED 数码管,你可以将它看做是 N 个发光二级管的组合,一个灯负责显示一个段,七个段组合一位数字,再加一个小数点,这么一来,一位数码管就有八段.一般,按照顺时针的方向给每个段编号. 上图中的 h 就 ...

  4. 音响音箱/恒温壶/电量显示/电子数字时钟等LED数码管显示驱动IC-VK1640B 8段12位/12段8位显示

    市面上最常用的数码管为七段/八段显示,八段数码管比七段数码管多一个发光二极管单元(比七段数码管多一个点),又按能显示多少个"8"可分为1位.2位.4位等等.数码管又分为共阳极驱动/ ...

  5. [51单片机] 以PWM控制直流电机为例建一个简单的51工程框架

    目录 1)功能概述 2)引脚连接 3)框架介绍 4)模块说明 5)复用规则 6)工程链接 1)功能概述 名称:独立按键控制直流电机调速 内容:对应的电机接口需用杜邦线连接到uln2003电机控制端; ...

  6. 说说M451例程讲解之定时器

    关于定时器 相信很多人都不会陌生,无论是51还是32,任何微控制器,都会有定时器 定时器控制器包含 4 组 32-位定时器,TIMER0~TIMER3,提供用户便捷的计数定时功能.定时器可执行很多功能 ...

  7. 基于FPGA的简易数字时钟

    基于FPGA的可显示数字时钟,设计思路为自底向上,包含三个子模块:时钟模块,进制转换模块.led显示模块.所用到的FPGA晶振频率为50Mhz,首先利用它得到1hz的时钟然后然后得到时钟模块.把时钟模 ...

  8. bootloader 详细介绍

    Bootloader 对于计算机系统来说,从开机上电到操作系统启动需要一个引导过程.嵌入式Linux系统同样离不开引导程序,这个引导程序就叫作Bootloader. 6.1.1  Bootloader ...

  9. 7/8段码管(LED)

    LED显示器在许多的数字系统中作为显示输出设备,使用非常广泛.它的结构是由发光二极管构成的a.b.c.d.e.f和g七段,并由此得名,实际上每个LED还有一个发光段dp,一般用于表示小数点,所以也有少 ...

随机推荐

  1. 【错误记录】uwsgi 启动 flask 出错

    在测试环境使用uwsgi启动flask未成功 正常报错信息: *** Starting uWSGI 2.0.13.1 (64bit) on [Fri Sep 23 09:27:47 2016] *** ...

  2. 启动64位 IIS 32位应用程序的支持

    64位的系统可以让IIS在32位的环境下运行asp.net程序,设置方法如下: ASP.NET程序在编译的时候默认是Any CPU,即编译的程序可以在X86.X64系统平台上运行.若希望我们的ASP. ...

  3. 4-1 R语言函数 lapply

    #lapply函数 #可以循环处理列表中的每一个元素 #lapply(参数):lapply(列表,函数/函数名,其他参数) #总是返回一个列表 #sapply:简化结果 #结果列表元素长度均为1,返回 ...

  4. 【洛谷】【动态规划/二维背包】P1855 榨取kkksc03

    [题目描述:] ... (宣传luogu2的内容被自动省略) 洛谷的运营组决定,如果...,那么他可以浪费掉kkksc03的一些时间的同时消耗掉kkksc03的一些金钱以满足自己的一个愿望. Kkks ...

  5. linux下10款markdown软件

    原文:https://linux.cn/article-7623-1.html 在这篇文章中,我们会点评一些可以在 Linux 上安装使用的最好的 Markdown 编辑器. 你可以在 Linux 平 ...

  6. Google免费GPU使用教程(Google Colab Colaboratory)

    参考: https://www.234du.com/1154.html https://mp.weixin.qq.com/s/TGTToLYSQJui94-bQC4HIQ 注册gmail时遇到手机号无 ...

  7. Windows与Linux之间的文件自动同步

    问题:在工作中遇到一个场景,需要每天定时将Linux机器上的文件自动同步到Windows机器上. 解决方案有两个: 1.在Windows 机器上设置共享目录,然后在Linux机器上挂载共享 目录,每天 ...

  8. 对cordova打包的apk文件进行签名

    可用于没有签名和已经签名的apk,再次签名. jarsigner -verbose -keystore [keystorePath] -signedjar [apkOut] [apkin] [alia ...

  9. .NET Core中多语言支持

    在.NET Core项目中也是可以使用.resx资源文件,来为程序提供多语言支持.以下我们就以一个.NET Core控制台项目为例,来讲解资源文件的使用. 新建一个.NET Core控制台项目,然后我 ...

  10. 【css】css实现点击Toggle功能/icon切换

    ①实现Toggle功能 html结构: <div class="cssTog"><label> <p> 专业:B020309现代企业管理(独立本 ...