实现一个可以软件控制的开关

背景:
之前做东西的时候会碰到这样的需求:用单片机去控制一些东西,如风扇和电机等,当然,现在大部分时候直接买一个驱动芯片就可以解决问题,但是为了节约成本,画pcb的时候,我们可以自己搭建一个电路。

想要用单片机的io口去控制一个东西,最关键的问题是我们单片机提供的电压和电流足不足以驱动负载,我们就需要使用三极管进行放大。先来看一下常识:

传统单片机一般为10ma左右,现在的单片机一般20-25ma
我的cpu风扇驱动的电流为0.18A,远远超过了单片机能够提供的电流,这时候就需要接一个外部的电源,但是电源的开关我们如果想用软件去操作,就离不开使用三极管。

在这里我推荐两个电路,一个是单个NPN的开关,另一个是一个NPN加一个PNP的开关:

单个NPN的开关
需要注意的是,负载接入NPN三级管中,负载应该接在集电极(就是上面),因为发射极(下面)的电压与集电极相比较小,相差的值是三极管的本身压降,即硅管0.7V,锗管0.3V。发射极电流是基级电流与集电极电流之和。
其中V3是单片机的io口,V1是电源,R2是负载(风扇)。

同样的如果手上没有NPN只有PNP的,将负载接在发射极就可以了。

一个NPN加一个PNP
下图中V4作为单片机的io口,V2作为电源,R5作为负载。
选用NPN(左边三极管)作为电路的开关,PNP来放大电流,当NPN导通时,R6接地,PNP(右边三极管)导通。R3应该要比R6大一些,因为R3直接接电源电流大放热更高,为了减小电流接一个相对大的电阻。

第二个电路是当时老师做实验给我们的,做出来的实物没有问题,当时单片机的io口是pwm输出口,pwm输出没有问题。这两个方案都可以解决软件控制开关的问题。
笔者在此记录一下,方便下次直接抄。

单片机软件开关(三极管)相关推荐

  1. 嵌入式开发<单片机软件调试>

    嵌入式开发<单片机软件调试> 前言 一.交互式调试设计依赖工具 二.交互式调试设计的使用方法 1.普通方法 2.定制方法 三.交互式调试产品设计 1, 全局需要使用的宏定义 2,设计一个功 ...

  2. 物联网远程开关模块_基于51单片机wifi开关设计物联网远程家电控制

    硬件构成: 单片机+最小系统+LCD1602液晶显示模块+DHT11温湿度采集模块+ESP-12wifi模块+继电器驱动模块+按键模块 功能: 1.本设计主要涉及了温湿度的测量.显示以及实现APP软件 ...

  3. STC8G1K单片机软件执行时间物理测量

    为了能够评估STC8G1K08单片机算法的效率,需要有一种能够直接测量单片机程序执行时间的物理方法.使用单片机的一个管脚的变化来表明软件流程的起始和结束,从外部通过示波器等手段测量脉冲的宽度,便可以有 ...

  4. 单片机软件模拟SPI接口—加深理解SPI总线协议

    单片机软件模拟SPI接口-加深理解SPI总线协议   SPI(Serial Peripheral Interfacer 串行外设接口)是摩托罗拉公司推出的一种同步串行通讯接口,用于微处理器臌控制器和外 ...

  5. keil spi 调试_单片机软件出问题了?有经验的工程师这么调试

    单片机软件调试方法有很多,今天我们来看一看都有哪些值得大家学习的调试方法. 欢迎关注哈,有搞单片机的北漂吗,来抱团取暖吧,关注私信入群 一.一切跟着手册走 单片机本身就是要驱动各类传感器,软件都是跑在 ...

  6. 8051系列单片机软件精确延时研究(二)

    续前篇 8051单片机软件精确延时研究(一) 由前篇可知,在DelayX10us()函数中用for循环延时会产生10个机器周期的固定误差,其中X传值.调用函数.子函数返回共5个机器周期,这是只要调用带 ...

  7. 三菱梯形图转换c语言软件,三菱梯形图转51单片机软件使用程序超过100步又要使用软件的朋友.pdf...

    三菱梯形图转51单片机软件使用程序超过100步又要使用软件的朋友 三菱梯形图转51单片机软件使用 希望这个软件 能降低你的电气控制成本. 1:运行三菱软件,选择PLC型号为FX1N,画好梯形图并保存. ...

  8. 单片机 软件延时时间控制

    单片机 软件延时时间控制 一.简述    记--通过代码方式实现软件延时(不精确延时). 二.指令周期          单片机需要一个时钟信号送给内部各个电路,才能使它们有节拍地协同工作.时钟信号的 ...

  9. 新塘单片机烧写器_新唐单片机软件加密|新唐单片机软件(NuConsole) v2.04.6725官方版 附安装教程_星星软件园...

    NuConsole是一款实用的新唐单片机软件,该软件可以通过SWD接口操作,为用户提供不中断目标芯片和主机的信息传输机制,是机械和电气领域不可或缺的软件.软件简洁实用.操作简单.极易使用,需要的朋友赶 ...

最新文章

  1. iOS UITextField输入框随键盘弹出界面上移
  2. Github上AI在银行和保险的应用列表
  3. 蓝鸥Unity开发基础二——课时20 接口
  4. 决心开始写博,坚持!
  5. 微信小程序的基础 (一)
  6. Visual Studio统计有效代码行数
  7. python metaclass应用
  8. 初学QT遇到的“_on_OK_clicked(bool)未定义的引用”的问题,以及使用windows远程桌面登录树莓派
  9. [CIFS]解决linux挂载CIFS提示 HOST is down
  10. linux scp 使用简单说明
  11. VB.NET实现文件上传下载
  12. spss数据预处理步骤_5个步骤,用SPSS进行数据分析
  13. LoadRunner执行压力测试
  14. python一般用什么平台好_python哪几个平台好用
  15. 计算机网络原理(谢希仁第八版)第五章课后习题答案
  16. 如何使单片机复位可靠,单片机复位电路?
  17. 简单实现你想数字电脑猜的小游戏
  18. 弘辽科技:新手前期如何开网店?
  19. 短视频矩阵系统,抖音矩阵系统源码,抖音SEO源码。
  20. button标签的type属性

热门文章

  1. 计算机应用基础任务化教程135,计算机应用基础任务化教程
  2. For Today’s Graduate, Just One Word: Statistics.(NY Times)
  3. 拉普拉斯噪声公式_高斯拉普拉斯算子(Laplace of Gaussian)
  4. 在 RustCon Asia 开启之前,聊聊 Rust 中国社区那些事
  5. ATMEL SAMC20J多通道ADC问题
  6. mac beta回滚_2010 Beta结束后如何切换回Outlook 2007
  7. 复杂链表的复制(C语言)
  8. QQ阅读器技术框架解析之一《代码预览和分析》
  9. javascript实现软键盘
  10. 现在完成时 - 例句分析