通过三个开关控制直流电机的正反转以及停止。

当按下开关一,电机正转;按下开关二,电机反转;按下开关三,电机停止转动。

准备材料:Arduino nano开发板*1,L293D直插式电机驱动芯片*1,10KΩ电阻*3,直流电机*1,开关*3。

电路图如下:

代码如下:

#define M1 8              //定义端口
#define M2 9
#define BUTTON1 10
#define BUTTON2 11
#define BUTTON3 12
int val1 = 0;              //变量val用来储存按钮状态
int val2 = 0;
int val3 = 0;int state1 = 0;            //0表示关闭,1表示打开
int state2 = 0;void setup(){pinMode(M1,OUTPUT);       //设定引脚为输出状态pinMode(M2,OUTPUT);pinMode(BUTTON1,INPUT);   //设定引脚为输入状态pinMode(BUTTON2,INPUT);pinMode(BUTTON3,INPUT);
}void loop(){val1 = digitalRead(BUTTON1||BUTTON2||BUTTON3); //读取按钮状态并储存//检查按钮的变化情况val2 = digitalRead(BUTTON2);val3 = digitalRead(BUTTON3);if(val1 == HIGH)                               //判断val,输出对应状态{state1 = 1 - state1;if ((state1 == 1)&&(state2 == 0)){digitalWrite(M1,HIGH);digitalWrite(M2,LOW);}}if(val2 == HIGH){state2 = 1 - state2;if ((state1 == 0)&&(state2 == 1)){digitalWrite(M1,LOW);digitalWrite(M2,HIGH);}}if(val3 == HIGH){state1 = 0;state2 = 0;if ((state1 == 0)&&(state2 == 0)){digitalWrite(M1,LOW);digitalWrite(M2,LOW);}}}

基于Arduino,使用三个开关控制电机的正转,反转,和停转相关推荐

  1. 西电A测|基于Arduino uno的温度检测控制仿真系统

    西电A测|基于Arduino uno的温度检测控制仿真系统 温度检测控制仿真系统 Proteus仿真电路图 Arduino IDE编写程序 结果验证 功能拓展 温度检测控制仿真系统 功能要求:Ardu ...

  2. 【基于Arduino APDS9960 传感器的手势控制非接触式电梯】

    基于Arduino APDS9960 传感器的手势控制非接触式电梯 前言 所需组件 APDS9960 RGB & 手势传感器 电路原理图 代码说明 测试手势控制的非接触式升降机 完整代码 前言 ...

  3. uNo面板L灯一直闪_鲁公讲家装:三联开关控制三个灯怎么接线,基本知识要知道...

    每个家里少不了开关,而且现在三联开关是非常受人们欢迎的,主要还是因为它给人们带来了方便,正好适合人们生活里的需求,虽然方便,但是对它的连线要清楚才能享受到这样的方便,接下来要给大家介绍的就是三联开关接 ...

  4. Arduino 项目笔记 | 基于 Arduino 单片机的 A4988 和 L298N电机驱动模块实验记录

    目录 1. Arduino Nano 简介 2. 技术规格 3. 输入和输出 1. A4988 简介 2. A4988 引脚定义图及功能说明 (四相步进电机) 3. Arduino使用A4988控制电 ...

  5. Arduino lED灯与开关控制学习

    Arduino LED灯随机亮起过程 LED广告灯类型 LDE广告灯绘图 Mixly模块代码 Arduino代码 LED灯与触碰开关使用 LED灯与触碰开关绘图 Mixly模块代码 Arduino代码 ...

  6. 【Arduino】一个按键开关控制RGB音乐彩灯(蜂鸣器播放音乐+按键控制播放暂停+RGB彩灯随音乐节奏跳动)

    一.项目说明 这里我们需要使用到RGB LED.蜂鸣器.按键开关这个元件.为什么要叫RGB呢?是因为这个LED是由红(Red).绿(Green)和蓝(Blue)三种颜色组成.我们可以通过调整三个LED ...

  7. Arduino(三)——按钮控制数码管

    本节,我们学习一下内容 1.用按键控制数码管从1~9显示,然后再清零 2.外部中断函数 1.我们先来看下面的图 我们需要根据我们按键是否连通来连接我们的电路,所以我们连接好后就会是这样的 看完了连接图 ...

  8. 【Arduino基础】倾斜开关控制led灯的亮灭

    实验现象 手拿着面包板,当倾斜到一定程度时,LED被点亮:没有倾斜时,led不亮. 理论学习 当开关一端低于水平位置倾斜,开关导通,模拟口电压值为5V左右 (数字二进制表示为1023),点亮led灯. ...

  9. 有偿!!!比较急,求基于滑模观测器的开关磁阻电机的matlab仿真

    标题@TOC 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页.如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdo ...

最新文章

  1. php 判断类型array,判断一个变量是数组Array类型的方法_javascript技巧
  2. 划分字母区间(双指针,贪心)
  3. 【Linux】vi编辑器命令
  4. java-多线程知识
  5. css 动画 - 这次不会忘记了
  6. crontab 定时任务
  7. 阿里十年经验等于零!
  8. linux的常用的软件,Linux常用的软件和命令
  9. js中函数返回值return
  10. .Net Compact Framework 高级篇(2)-- 扩展SOAP应用
  11. Navicat(连接) -1之Navicat Cloud
  12. 【交易技术前沿】低时延基础设施杂谈
  13. matlab仿真介绍,谈一谈|Matlab仿真项目简介
  14. python怎么画地图空间分异图_中国西南诸河流域东片土壤、植被生态系统的分异...
  15. 色彩原理与色彩搭配知识点回顾总结
  16. 为什么Python中万物皆对象
  17. 什么是IDOC,以及IDOC的步骤_小七_新浪博客
  18. Mysql数据库root密码管理四法
  19. dir-616 c1语言包,D-Link DIR616无线路由器设置教程
  20. 2020年有寓意的领证日期_2020热门领证日期大全 2020适合领证的好日子

热门文章

  1. python 歌词解析
  2. 皮影机器人ppt_皮影戏机器人惊艳机器人创想秀
  3. 佳博80系列打印机驱动开发DLL支持C#的过程
  4. es6中类的使用、及其转es5源码解析
  5. java 匿名内部类:其实就是匿名子类对象
  6. 三十岁——男人创业的最佳时机
  7. Matlab GUI handles的相关函数汇总
  8. 表格批量导入金蝶专业版销售订单
  9. object is not subscriptable
  10. mongodb的学习记录