1/描述:
开发平台:Thonny
开发板:基于树莓派5
使用到的模块与设备:HDMI显示器,直流电机驱动模块
实现功能:通过PI5的操作实现直流电机启动和停止工作,使用的GPIO口是GPIO17脚。
2/原理图
下图是PI5连接器40P的原理连接图,这里使用的是GPIO17也就是13P用来控制直流电机驱动IO。
风扇简易电路:
这是一个由 S8050 三极管(Q10)控制风扇(M2)的电路。
三极管基础:S8050 是 NPN 型三极管,有发射极(E)、基极(B)、集电极(C)。正常工作时,需满足基极相对发射极正向偏置(一般 0.6 - 0.7V 左右 ),通过基极电流控制集电极 - 发射极的大电流通路。
控制逻辑:
当 PA17 输出低电平,经 R24(10K)、R26(1K)分压,三极管基极无足够正向偏置电流,Q10 截止,风扇 M2 无供电回路,不工作。
当 PA17 输出高电平,基极通过 R26 获得合适正向电流,三极管进入导通(饱和)状态,集电极 - 发射极形成低阻通路,+5V 经 Q10 给风扇 M2 供电,风扇运转。
二极管作用:D1 是续流二极管,风扇断电时,可吸收电机线圈产生的反向电动势,保护三极管,避免被高压击穿 。
就是通过 PA17 输出电平,控制 S8050 导通 / 截止,进而实现风扇的启停控制,D1 则守护电路稳定 。这里说明一下,图纸是在网上找的,用来解释GPIO17工作时的工作状态,是怎么工作的。
PI5上引脚位置图:
树莓派(Raspberry Pi5)的引脚图,不同颜色圆点代表不同功能引脚,红圈标注的 “17” 引脚是 GPIO 17(通用输入输出引脚 17 )。
红色表示5V电源,橙色3.3V电源,黄色GPIO引脚,黑色是地。
输出模式:控制外接设备,输出高低电平实现开关、调光等功能;
输入模式:读取传感器信号按键、光敏电阻,获取外部状态或数据;支持 I2C、SPI 等通信协议扩展(需配置),连接显示屏、传感器模块等外设 。
3/驱动电机代码:
import RPi.GPIO as GPIO import time # 设置GPIO模式 GPIO.setmode(GPIO.BCM) MOTOR_PIN = 17 # 初始化GPIO17为输出 GPIO.setup(MOTOR_PIN, GPIO.OUT) try: while True: # 电机正转5秒 GPIO.output(MOTOR_PIN, GPIO.HIGH) print("电机启动 - 高电平") time.sleep(5) # 电机停止5秒 GPIO.output(MOTOR_PIN, GPIO.LOW) print("电机制动 - 低电平") time.sleep(5) except KeyboardInterrupt: finally: GPIO.cleanup()
4/实现效果:
这里的演示是让电机启停工作,为了方便查看运行效果与工作状态。