proteus中仿真arduino驱动模拟器件(蜂鸣器继电器电机)
模拟器件如蜂鸣器、继电器、直流电机等在arduino电路中,如果我们接在数字管脚上来驱动往往可能因为驱动电流不够而达不到预期效果,或者没有动作或者没有动静。这篇博文我们专门来讨论一下如何驱动他们。
文章目录
- 一、典型电路
- 1、蜂蜜器
- (1)蜂鸣器的种类:
- (2)使用说明
- 2、直流电机
- 3、继电器
- 二、代码与运行效果
- 1、代码
- 2、运行效果
- (1)电机的运行效果
- (2)继电器的运行效果:
文章原出处: https://blog.csdn.net/haigear/article/details/129395755
一、典型电路
1、蜂蜜器
我们可能会有这样的经历,在arduino板上,或者在其他的单片机上接了一个蜂鸣器,结果控制信号都没有问题,电路也没有问题,但就是不会听到蜂鸣器的响声。问题就在电流不够没有能够驱动蜂鸣器。
下图,我们在2号口接了一个控制按键,按键电路没有采用去抖电容,实际项目中还是加一个硬件去抖最好。在6号口上我们街上了三极管的基极来控制蜂鸣器的开关,由电源直接来驱动蜂鸣器。
一般我们使用的有源蜂鸣器,不仅对驱动电压有要求(有的蜂蜜器驱动电路100MA以上),如果arduino板还有其他的消耗,有的时候蜂鸣器就不会发生声音了。
(1)蜂鸣器的种类:
种类 | 别名 | 优点 | 缺点 |
---|---|---|---|
有源蜂鸣器 | 自激式蜂鸣器 | 内部有振荡、驱动电路,加电源就可以发出鸣响 | 频率固定,声音单一单调 |
无源蜂鸣器 | 他激式蜂鸣器 | 声音频率可控,可以利用单片机编程PWM来控制频率,发出各种声调 | 需要加载驱动电路 |
(2)使用说明
自激蜂鸣器是直流电压驱动的,不需要利用交流信号进行驱动,只需对驱动口输出驱动电平并通过三极管放大驱动电流就能使蜂鸣器发出声音。而单片机驱动他激蜂鸣器的方式有两种:一种是PWM 输出口直接驱动,另一种是利用I/O 定时翻转电平产生驱动波形对蜂鸣器进行驱动。
2、直流电机
直流电机往往我们都会在控制他们的时候有专用的驱动芯片,比如L298,TB6612、AS4950、A4950AT8236、AT8236等,当然,你也可以自己设计一个H电桥,这也是很常见的。但,如果你驱动一个电机,那就没有这个必要了,一个三极管是可以满足你的要求的。如下图一般:
这里的电路图其实和蜂鸣器没有什么差别,所以不再赘述。有关电机的正反转的控制及L298电路的使用,可以参考我前面的博文:proteus中仿真arduino控制L298实现电机正反转
3、继电器
我们都知道,继电器是用来做隔离的一种开关,常常用在抵押控制高压,弱电控制强电的场合,所以控制领域使用频繁,这里我们也来看看,arduino模拟控制电机或者大型设备时的场景。
继电器从器件库中拿过来默认电压是12V,arduino的输出口是无法驱动的,所以这里我们记得要改为5V,如下图:
二、代码与运行效果
1、代码
三个电路基本上没有什么差别,所以,采用的代码都是一样的,只需要读取输入口2号口的按键信号,根据信号来控制6号口的输出即可。代码如下:
void setup () {pinMode(2,INPUT);
pinMode(6,OUTPUT);// TODO: put your setup code here, to run once:
}void loop() {if(digitalRead(2))
digitalWrite(6,1);
else
digitalWrite(6,0);// TODO: put your main code here, to run repeatedly:
}
2、运行效果
(1)电机的运行效果
有关电机的正反转的控制及L298电路的使用,可以参考我前面的博文:proteus中仿真arduino控制L298实现电机正反转
(2)继电器的运行效果:
蜂鸣器的仿真我们看不到画面效果,这里就不贴出来了。
码字不易,转载注明出处:https://blog.csdn.net/haigear/article/details/129395755
proteus中仿真arduino驱动模拟器件(蜂鸣器继电器电机)相关推荐
- proteus中仿真arduino控制L298实现电机正反转
前面几篇博文,我们基本了解了几种在proteus中实现arduino仿真的方法(<proteus从开发板新建arduino仿真项目实例><Proteus Visual Designe ...
- proteus中仿真arduino利用74hc373实现抢答器
首先,我们来介绍一下74HC373.74HC373和74LS373原理一样,8数据锁存器.主要用于数码管.按键等等的控制.这里我们用来制作抢答器. 74HC373简介 负载驱动 74HC373 的输出 ...
- proteus中导入ST7920驱动的LCD12864模型
proteus中导入ST7920驱动的LCD12864模型 文章目录 proteus中导入ST7920驱动的LCD12864模型 前言 模型来源 导入方法 部分问题 小技巧 前言 proteus中12 ...
- proteus中仿真max7219显示2个4位数码管
Max7219是一款不错的SPI芯片,尤其给LED和数码管带来了极大的便利,完全可以认为它就是为显示而生,它可以驱动8x8个LED,也可以换算成8位的数码管(2个4位的数码管).这里我们用proteu ...
- Proteus中添加arduino元件库
下载arduino模型(链接如下) https://content.instructables.com/ORIG/F9C/F878/I8G5T6SR/F9CF878I8G5T6SR.zip 压缩包中的 ...
- proteus中仿真D触发器CD4013
这里我们利用CD4013来做一个开关,以期达到演示原理的效果.硬件连接如下: 运行起来效果如下: 这里需要注意的是,本电路是模拟电路和数字电路混合的电路,那么在运行仿真的时候会发生错误提示:Times ...
- proteus中仿真51单片系列之--2位数码管程序
相比前面我们使用过的单位数码管难点就是要通过片选来输出每一位数码管显示所需要的16进制代码信号. 我们知道,多位数码管(包括两位数码管)显示的原理就是,每位数码管在不同的时间获得端口输出的信号显示出来 ...
- proteus中仿真51单片系列之---blink点灯程序
51单片时间世界上最简单的点灯闪灯程序就好比我们在学习java或者C语言的hello world! 但我们还是要从这里入门,了解51单片机的操作,尤其51的四组GPIO(通过输入输出口P0~P3) 为 ...
- proteus中仿真时钟计时器DS1307
DS1307是我们使用较多的一款时间日历芯片,当然,我们也可以作为方波发生器来使用,本质上可以作为信号发生器的一定会有晶振来参与. 虽然它内含了56个字节的NVRAM记忆体,但从管脚的设计来说,这款芯 ...
最新文章
- java与.net比较学习系列(7) 属性
- 第 3 章 Keystone - 018 - 理解 Keystone 核心概念
- 一种更好的汇报性能测试结果的方法(译)
- react(86)--列表项控制选中
- 【linux基础】linux不能进入系统
- 随身WiFi刷OPENWRT作为旁路由
- Python_yield_实战应用_读取大文件
- C语言float去尾法输出,c语言去尾法怎么写
- 个人博客详细文章目录索引(持续更新)
- OpenSSL sm2 签名源码讲解
- 【Python】模块(Module)、包(Package)以及相对导入(relative import)和绝对导入(absolute import)
- vue3:兄弟组件,跨组件传值,事件总线的通信方式(mitt / tiny-emitter)
- 如何在Revit中引入WPF界面(通俗易懂)
- 计算机软件水平考试分类程序员,历年计算机软件水平考试程序员部分真题
- 笑话:在暗恋的女神家上厕所的悲剧
- Hank的无线802.11学习笔记--part 1
- centos7代理设置
- 小程序稻草人图床神器,前后端开源
- 有孚网络吕鑫:专有存储云,助力生物医药数据管理和共享平台建设
- 登陆梦幻显示服务器列表错误,常见问题——17173.com网络游戏:《梦幻西游》专区...