单片机:直流电机(内含ULN2003芯片,硬件原理及解析,软件编程及注释)

简介: 单片机:直流电机(内含ULN2003芯片,硬件原理及解析,软件编程及注释)

62d46968094046bcac75fdd958033ddb.png

ada7c622242f4597bea81f1d060d6778.png


注:

1-7引脚分别对应的16-10引脚依次为7个输入输出,中间依次用非门连接。

如1号引脚输入端输入为0,为假,16脚输出为1,为真,若VCC连接24V,则输出为24V

8脚为GND

9脚为VCC

以下此种方式连接直流电机是错误的!


255a5c3affeb49bfa53e6798e5124265.png

因为输出无法直接输出高电平,输出的均为低电平,只有在1和16脚对应连接时才为一端为高电平,一端为低电平(外部连接上拉电阻可以实现某一管脚为高电平)

连接直流电机正确方法


07f0bfa75d4e45cb99fab122108f742b.png


VCC端连接直流电机一端,,,另一端连接10-16脚任意一个,此时给1-7引脚一个1(高电平),使之对应的10-16引脚为低电平,电机两端有电势差,电机转动,但是只能沿一个方向转到,无法改变方向,因为正负极确定。(如想改变方向,需要在某一引脚添加上拉电阻,形成高电平,如15脚,再将电机与15-16引脚连接)


e1e181809d2b4578a6d15e1786be6778.png


A2-A4版芯片使用上半部分芯片(用于集成电路,各管脚功能固定)


P10-P13为输入管脚,P25固定连接蜂鸣器的输入端,16-12引脚连接输出端,通过J24排针连接电机,此时J47的1号引脚固定连接电机的VCC引脚,2-5号引脚任意一个连接电机的引脚


A5-A7版芯片使用下半部分芯片(各管脚功能不固定,可通过排针灵活更改控制)


1-4号引脚通过J46连接输入端,可自由搭配。16-13通过J47连接输出端,连接输出端


e718de3b8efc4455b4555cec7379faef.png


//功能:使直流电机转动5s,后停止
//将电机两端连接在P1^0(或P1^1或P1^2或P1^3)和VCC端
#include"reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;
sbit  DC_Motor=P1^0;
#define DC_MOTOR_RUN_TIME 5000//定义直流电机运行时间为5000ms
void delay_time(u16 time_delay)//延时函数
{
    u16 i,j;
    for(i=time_delay;i>0;i++)
        for(j=110;j>0;j++)
    ;
}
void main()
{
    DC_Motor=1;//开电机
    delay_time(DC_MOTOR_RUN_TIME);
    DC_Motor=0;//关电机
    while(1)
    {
        ;
    }
}

62c60db9803e4deebd5328fa5fca7b21.png


相关文章
|
2天前
|
安全 Java 调度
Java语言多线程编程技术深度解析
Java语言多线程编程技术深度解析
|
4天前
|
并行计算 算法 Java
探索Java并发编程:Fork/Join框架的深度解析
【5月更文挑战第29天】在多核处理器普及的时代,有效利用并发编程以提升程序性能已经成为开发者必须面对的挑战。Java语言提供的Fork/Join框架是一个强大的工具,它旨在利用多线程执行分而治之的任务。本文将通过深入分析Fork/Join框架的工作原理、关键特性以及与传统线程池技术的差异,帮助开发者更好地掌握这一高效处理并发任务的技术手段。
|
2天前
|
Java 测试技术 API
Java语言源文件:深入解析与编程实践
Java语言源文件:深入解析与编程实践
|
2天前
|
存储 安全 Java
Java语言中的多线程编程技术深入解析
Java语言中的多线程编程技术深入解析
|
2天前
|
存储 Java API
Java语言IO(输入/输出)编程技术深度解析
Java语言IO(输入/输出)编程技术深度解析
|
4天前
|
安全 Java 调度
Java并发编程:线程池深入解析
【5月更文挑战第29天】本文将详细探讨Java中的线程池技术,包括其基本原理、使用方法以及在实际开发中的应用。我们将通过实例代码和性能分析,深入理解线程池的优势和潜在问题,为高效、安全的并发编程提供指导。
|
5天前
|
安全 Java API
滚雪球学Java(44):掌握Java编程的关键:深入解析System类
【5月更文挑战第19天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
14 0
滚雪球学Java(44):掌握Java编程的关键:深入解析System类
|
5天前
|
Python
深度解析Python中的多线程编程
深度解析Python中的多线程编程
28 1
|
8天前
|
Java 开发者
探索Java并发编程:Fork/Join框架的深度解析
【5月更文挑战第25天】在多核处理器日益普及的今天,并发编程成为了提升应用性能的关键。Java语言提供了多种并发工具,其中Fork/Join框架是一个高效且强大的工具,用于处理分而治之的任务。本文将深入探讨Fork/Join框架的原理、使用及其在实际应用中的优化策略,旨在帮助开发者更好地利用这一框架以解决复杂的并发问题。
|
9天前
|
程序员 编译器 C++
C++中的模板与泛型编程技术深度解析
C++中的模板与泛型编程技术深度解析

推荐镜像

更多