基于Arduino,使用三个开关控制电机的正转,反转,和停转
通过三个开关控制直流电机的正反转以及停止。
当按下开关一,电机正转;按下开关二,电机反转;按下开关三,电机停止转动。
准备材料: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,使用三个开关控制电机的正转,反转,和停转相关推荐
- 西电A测|基于Arduino uno的温度检测控制仿真系统
西电A测|基于Arduino uno的温度检测控制仿真系统 温度检测控制仿真系统 Proteus仿真电路图 Arduino IDE编写程序 结果验证 功能拓展 温度检测控制仿真系统 功能要求:Ardu ...
- 【基于Arduino APDS9960 传感器的手势控制非接触式电梯】
基于Arduino APDS9960 传感器的手势控制非接触式电梯 前言 所需组件 APDS9960 RGB & 手势传感器 电路原理图 代码说明 测试手势控制的非接触式升降机 完整代码 前言 ...
- uNo面板L灯一直闪_鲁公讲家装:三联开关控制三个灯怎么接线,基本知识要知道...
每个家里少不了开关,而且现在三联开关是非常受人们欢迎的,主要还是因为它给人们带来了方便,正好适合人们生活里的需求,虽然方便,但是对它的连线要清楚才能享受到这样的方便,接下来要给大家介绍的就是三联开关接 ...
- Arduino 项目笔记 | 基于 Arduino 单片机的 A4988 和 L298N电机驱动模块实验记录
目录 1. Arduino Nano 简介 2. 技术规格 3. 输入和输出 1. A4988 简介 2. A4988 引脚定义图及功能说明 (四相步进电机) 3. Arduino使用A4988控制电 ...
- Arduino lED灯与开关控制学习
Arduino LED灯随机亮起过程 LED广告灯类型 LDE广告灯绘图 Mixly模块代码 Arduino代码 LED灯与触碰开关使用 LED灯与触碰开关绘图 Mixly模块代码 Arduino代码 ...
- 【Arduino】一个按键开关控制RGB音乐彩灯(蜂鸣器播放音乐+按键控制播放暂停+RGB彩灯随音乐节奏跳动)
一.项目说明 这里我们需要使用到RGB LED.蜂鸣器.按键开关这个元件.为什么要叫RGB呢?是因为这个LED是由红(Red).绿(Green)和蓝(Blue)三种颜色组成.我们可以通过调整三个LED ...
- Arduino(三)——按钮控制数码管
本节,我们学习一下内容 1.用按键控制数码管从1~9显示,然后再清零 2.外部中断函数 1.我们先来看下面的图 我们需要根据我们按键是否连通来连接我们的电路,所以我们连接好后就会是这样的 看完了连接图 ...
- 【Arduino基础】倾斜开关控制led灯的亮灭
实验现象 手拿着面包板,当倾斜到一定程度时,LED被点亮:没有倾斜时,led不亮. 理论学习 当开关一端低于水平位置倾斜,开关导通,模拟口电压值为5V左右 (数字二进制表示为1023),点亮led灯. ...
- 有偿!!!比较急,求基于滑模观测器的开关磁阻电机的matlab仿真
标题@TOC 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页.如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdo ...
最新文章
- php 判断类型array,判断一个变量是数组Array类型的方法_javascript技巧
- 划分字母区间(双指针,贪心)
- 【Linux】vi编辑器命令
- java-多线程知识
- css 动画 - 这次不会忘记了
- crontab 定时任务
- 阿里十年经验等于零!
- linux的常用的软件,Linux常用的软件和命令
- js中函数返回值return
- .Net Compact Framework 高级篇(2)-- 扩展SOAP应用
- Navicat(连接) -1之Navicat Cloud
- 【交易技术前沿】低时延基础设施杂谈
- matlab仿真介绍,谈一谈|Matlab仿真项目简介
- python怎么画地图空间分异图_中国西南诸河流域东片土壤、植被生态系统的分异...
- 色彩原理与色彩搭配知识点回顾总结
- 为什么Python中万物皆对象
- 什么是IDOC,以及IDOC的步骤_小七_新浪博客
- Mysql数据库root密码管理四法
- dir-616 c1语言包,D-Link DIR616无线路由器设置教程
- 2020年有寓意的领证日期_2020热门领证日期大全 2020适合领证的好日子