一:按钮控制一个灯                                                                                                                                                                                                  

控制要求:按钮控制灯

实物连接图:

控制代码:

//智慧自动化2018.6.14

int key=;//设置控制按键的数字IO脚

void setup()

{

pinMode(key,OUTPUT);//设置数字IO引脚为输出模式

}

void loop()

{

int i;//定义发量 while(1)

  {

  i=analogRead();//读取模拟0口电压值

  if(i>)//如果电压值大于1000

  digitalWrite(key,HIGH);//设置第七引脚为高电平,点亮led灯

  else digitalWrite(key,LOW);//设置第七引脚为低电平,熄灭led灯

  }

}

二:按钮生产随机数

控制要求:随机数生成

实物连接图:

控制代码:

//智慧自动化2018.6.14

int a=;

int b=;

int c=;

int d=;

int e=;

int f=;

int g=;

int dp=;

//显示数字1

void digital_1(void)

{

  unsigned char j;

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

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

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

  digitalWrite(j,LOW);

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

}

//显示数字2

void digital_2(void)

{

  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);

}

//显示数字3

void digital_3(void)

{

  digitalWrite(g,HIGH);

  digitalWrite(a,HIGH);

  digitalWrite(b,HIGH);

  digitalWrite(c,HIGH);

  digitalWrite(d,HIGH);

  digitalWrite(dp,LOW);

  digitalWrite(f,LOW);

  digitalWrite(e,LOW);

}

//显示数字4

void digital_4(void)

{

  digitalWrite(c,HIGH);

  digitalWrite(b,HIGH);

  digitalWrite(f,HIGH);

  digitalWrite(g,HIGH);

  digitalWrite(dp,LOW);

  digitalWrite(a,LOW);

  digitalWrite(e,LOW);

  digitalWrite(d,LOW);

}

//显示数字5

void digital_5(void)

{

  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);

}

//显示数字6

void digital_6(void)

{

  unsigned char j;

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

  digitalWrite(j,HIGH);

  digitalWrite(c,HIGH);

  digitalWrite(dp,LOW);

  digitalWrite(b,LOW);

}

//显示数字7

void digital_7(void)

{

  unsigned char j;

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

  digitalWrite(j,HIGH);

  digitalWrite(dp,LOW);

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

  digitalWrite(j,LOW);

}

//显示数字8

void digital_8(void)

{

  unsigned char j;

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

  digitalWrite(j,HIGH);

  digitalWrite(dp,LOW);

}

void setup()

{

  int i;

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

  {

    pinMode(i,OUTPUT);//设置4~11口味输出模式

  }

}

void loop()

{

  while()

  {

    digital_1();//显示数字1

    while(analogRead()>);//如果读到模拟0口的值为0则说明有按键按下

    delay();//延时200ms

    digital_2();

    while(analogRead()>);

    delay();

    digital_3();

    while(analogRead()>);

    delay();

    digital_4();

    while(analogRead()>);

    delay();

    digital_5();

    while(analogRead()>);

    delay();

    digital_6();

    while(analogRead()>);

    delay();

    digital_7();

    while(analogRead()>);

    delay();

    digital_8();

    while(analogRead()>);

    delay();

  }

}

arduino按钮使用的两个小实验的更多相关文章

  1. arduino新入手体验:三个小实验

    新入手体验:三个小实验 一:一个LED闪烁 控制要求:1个LED灯,每隔50ms闪烁一次 实物连接图: 控制代码: //2018.6/11 ;//定义数字接口10,对应 void setup() { ...

  2. 1.4 Crack小实验

    0_day 第一章 基础知识 1.4 Crack小实验 <0day_2th>王清 著 电子书 下载链接:https://pan.baidu.com/s/11TgibQSC3-kYwCInm ...

  3. ubuntu下格式化内存当硬盘使的小实验

    内存虚拟硬盘(ramdisk)是指通过软件技术,将物理内存进行分割,将一部分内存通过虚拟技术转变为硬盘以较大幅度提升计算机数据读取速度和保护硬盘. 在ubuntu下的dev下有ram相关的文件,这些文 ...

  4. ASP.NET MVC 开发中遇到的两个小问题

    最近在做一个网站,用asp.net MVC4.0来开发,今天遇到了两个小问题,通过查找相关渠道解决了,在这里把这两个问题写出来,问题非常简单,不喜勿喷,mark之希望可以给遇到相同问题的初学者一点帮助 ...

  5. Hadoop之词频统计小实验

    声明:    1)本文由我原创撰写,转载时请注明出处,侵权必究. 2)本小实验工作环境为Ubuntu操作系统,hadoop1-2-1,jdk1.8.0. 3)统计词频工作在单节点的伪分布上,至于真正实 ...

  6. 关于java中equals与==的区别的小实验

    java中equals与==经常容易混淆,简单一点说就是equals比较的是值是否相等,是一种方法,==比较的两个对象在JVM中的地址,是一种操作符. 做了几个小实验比较结果. 实验一: String ...

  7. 30个Python物联网小实验5:光线感应灯

    30个Python物联网小实验5:光线感应灯 光线传感器 光线变化执行函数 光线状态执行函数 30个Python物联网小实验5:光线感应灯 光线传感器 可以检测周围环境的亮度: 方向性较好,感知特定方 ...

  8. 理解JS闭包的几个小实验

    学了JavaScript有一段时间了,但是对闭包还是不太理解,于是怀着心中的疑问做了几个小实验,终于有点明白了. 首先看一下MDN上的定义:闭包是函数和声明该函数的词法环境的组合. 简单来说,闭包是一 ...

  9. 【Arduino】66种传感器模块系列实验(2)---光敏电阻模块

    实验二:光敏电阻传感器模块我手里这块是三针版的,挺秀气吧 光敏电阻是用硫化隔或硒化隔等半导体材料制成的特殊电阻器,其工作原理是基于内光电效应.光照愈强,阻值就愈低,随着光照强度的升高,电阻值迅速降低, ...

随机推荐

  1. C++类中的特殊成员函数-------复制构造函数

    在C++中存在一个特殊函数,他就是复制构造函数,假如我们有类A,如果有A a;A b=a;   在这种情况下利用A类变量a来给同是A类变量的b来赋值,这个时候类会使用复制构造函数,如果我们不显式声明复 ...

  2. openlayer3 基础学习一创建&显示地图

    <!doctype html> <html lang="en"> <head> <link rel="stylesheet&qu ...

  3. AlloyDesigner 使用

    前端开发视觉是很重要的一部分,所以视觉的还原度很重要,今天给大家介绍一个很好用的视觉精度调整插件 一.下载AlloyDesigner插件 下载插件 二.保存视觉稿为图片格式 1.psd 用ps直接保存 ...

  4. Mysql表创建外键报错

    数据库表A: CREATE TABLE task_desc_tab ( id INT(11) PRIMARY KEY NOT NULL COMMENT '自增主键' AUTO_INCREMENT, t ...

  5. post-message-stream的学习-metamask

    kumavis/post-message-stream post-message-stream Sets up a duplex object stream over window.postMessa ...

  6. python下载安装搭建

    python官网下载python运行环境(https://www.python.org/downloads/),建议下载稳定版本,不推荐使用最新版本 安装 然后我们打开CMD,在里面输入python, ...

  7. log下一次改版优化别人代码的事

    有次接到个PM要改版一个功能的UI设计,前端童鞋还没敲定页面的时候,我先看了看这个功能的后台,我擦...简直是惨不忍睹..对PM来说是改版UI,对我这么有点代码洁癖的来说就是优化代码. 首先我能肯定的 ...

  8. 1.2《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——开始第一条命令

    现在开始准备运行我们的第一条命令了,在屏幕上打印'hello'.(字符打印的地方被称为'标准输出',通常指的是屏幕,很少指真的物理打印机设备).这条命令就是echo,这条命令的参数是想要输出的字符串或 ...

  9. 20155304《网络对抗》Exp8 Web基础

    20155304<网络对抗>Exp8 Web基础 实践要求 (1).Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的H ...

  10. python实现并发爬虫

    在进行单个爬虫抓取的时候,我们不可能按照一次抓取一个url的方式进行网页抓取,这样效率低,也浪费了cpu的资源.目前python上面进行并发抓取的实现方式主要有以下几种:进程,线程,协程.进程不在的讨 ...