单片机学习(16)--直流电机驱动

news2024/10/6 14:30:38

直流电机驱动

  • 15.1直流电机驱动基础知识
    • 1.直流电机介绍
    • 2.电机驱动电路
    • 3.PWM介绍
  • 15.2LED呼吸灯和直流电机调速
    • 1.LED呼吸灯代码
    • 2.直流电机调速
      • (1)产生PWM的方法
      • (2)工程目录
      • (3)main.c函数

15.1直流电机驱动基础知识

1.直流电机介绍

直流电机是一种将电能转换为机械能的装置。一般的直流电机有两个电极,当电极正接时,电机正转,当电极反接时,电机反转
直流电机主要由永磁体(定子)、线圈(转子)和换向器组成
除直流电机外,常见的电机还有步进电机、舵机、无刷电机、空心杯电机等
在这里插入图片描述

2.电机驱动电路

在这里插入图片描述

3.PWM介绍

PWM(Pulse Width Modulation)即脉冲宽度调制,在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用干电机控速、开关电源等领域PWM重要参数:
频率=1/Ts
占空比=ToN/Ts
精度=占空比变化步距

在这里插入图片描述

15.2LED呼吸灯和直流电机调速

1.LED呼吸灯代码

只有一个main函数

#include <REGX52.H>

sbit LED=P2^0;

void Delay(unsigned int t)
{
	while(t--);
}
void main()
{
	unsigned char Time,i;	
	while(1)
	{
		for(Time=0;Time<100;Time++)
		{
			for(i=0;i<20;i++)
			{
				LED=0;
				Delay(Time);
				LED=1;
				Delay(100-Time);
			}
		}
		for(Time=100;Time>0;Time--)
		{
			for(i=0;i<20;i++)
			{
				LED=0;
				Delay(Time);
				LED=1;
				Delay(100-Time);
			}
		}
	}
}

2.直流电机调速

(1)产生PWM的方法

在这里插入图片描述

(2)工程目录

在这里插入图片描述

(3)main.c函数

#include <REGX52.H>
#include "Key.h"
#include "Delay.h"
#include "Timer0.h"
#include "Nixie.h"


sbit Motor=P1^0;
unsigned char Counter,Compare;
unsigned char KeyNum,Speed;
void main()
{
	Timer0_Init();
	Compare=5;
	while(1)
	{
		KeyNum=Key();
		if(KeyNum==1)
		{
			Speed++;
			Speed%=4;
			if(Speed==0){Compare=0;}
			if(Speed==1){Compare=50;}
			if(Speed==2){Compare=75;}
			if(Speed==3){Compare=100;}
		}
		Nixie(1,Speed);
	}
}

void Timer0_Routine() interrupt 1
{
	
	TL0 = 0xA4;
	TH0 = 0xFF;
	Counter++;
	if(Counter>=100)
	{
		Counter=0;
		
	}
	if(Counter<Compare)
	{
		Motor=1;
	}
	else
	{
		Motor=0;
	}
		
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1878473.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一秒记单词:音通义通,一秒牢记

一秒记单词&#xff0c;从小学到高中&#xff0c;一秒牢记 一、小学生记单词&#xff0c;快速突破 1.1 好的开始&#xff0c;是成功的一半 sun n.太阳 【通】尚 moon n.月亮 【通】母恩 mother n.母亲&#xff0c;妈 【通】妈汁 sea n.海&#xff0c;大海 【通】细 sand …

简述设计模式-工厂模式

概述 工厂模式是为了提供创建对象的方式&#xff0c;无需制定要创建的具体类。 举个例子&#xff0c;假如我是甲方需要制造一辆车&#xff0c;我可以要油车&#xff0c;可以要电车&#xff0c;也可以油电混动车&#xff0c;如果没有工厂&#xff0c;我需要自己找到对应的制造…

操作系统——调度

概念&#xff1a; 当有一堆任务要处理&#xff0c;但由于资源有限&#xff0c;这些事情没法同时处理。这就需要确定某种规则来决定处理这些任务的顺序 三个层次&#xff1a; 高级调度&#xff08;作业调度&#xff09;&#xff1a; 按一定的原则从外存的作业后备队列中挑选一…

熟练掌握爬虫技术

一、Crawler、Requests反爬破解 1. HTTP协议与WEB开发 1. 什么是请求头请求体&#xff0c;响应头响应体 2. URL地址包括什么 3. get请求和post请求到底是什么 4. Content-Type是什么1.1 简介 HTTP协议是Hyper Text Transfer Protocol&#xff08;超文本传输协议&#xff09;…

kafka(一)原理(2)组件

一、broker 1、介绍 kafka服务器的官方名字&#xff0c;一个集群由多个broker组成&#xff0c;一个broker可以容纳多个topic。 2、工作流程 3、重要参数 参数名称 描述 replica.lag.time.max.ms ISR中&#xff0c;如果Follower长时间未向Leader发送通信请求或同步数据&a…

K8S基础简介

用于自动部署&#xff0c;扩展和管理容器化应用程序的开源系统。 功能&#xff1a; 服务发现和负载均衡&#xff1b; 存储编排&#xff1b; 自动部署和回滚&#xff1b; 自动二进制打包&#xff1b; 自我修复&#xff1b; 密钥与配置管理&#xff1b; 1. K8S组件 主从方式架…

Java | Leetcode Java题解之第205题同构字符串

题目&#xff1a; 题解&#xff1a; class Solution {public boolean isIsomorphic(String s, String t) {Map<Character, Character> s2t new HashMap<Character, Character>();Map<Character, Character> t2s new HashMap<Character, Character>(…

6月26日-时间记录和统计

首先&#xff0c;我们根据你提供的时间记录&#xff0c;将活动进行分类并计算每个类别的持续时间&#xff0c;然后计算它们各自所占的百分比。以下是具体的分类和计算步骤&#xff1a; 1. **思想活动**&#xff1a; - 持续时间&#xff1a;15分48秒 2. **学习活动**&#xff1a…

视频融合共享平台LntonCVS统一视频接入平台智慧安防应用方案

安防视频监控平台LntonCVS是一款拥有强大拓展性和灵活部署能力的综合管理平台。它支持多种主流标准协议&#xff0c;包括国标GB28181、RTSP/Onvif、RTMP等&#xff0c;同时兼容各厂家的私有协议和SDK&#xff0c;如海康Ehome、海大宇等。LntonCVS不仅具备传统安防视频监控功能&…

YOLOv8改进 | 卷积模块 | 分布移位卷积DSConv替换Conv

秋招面试专栏推荐 &#xff1a;深度学习算法工程师面试问题总结【百面算法工程师】——点击即可跳转 &#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 专栏目录&#xff1a;《YOLOv8改进有效…

PL/SQL入门到实践

一、什么是PL/SQL PL/SQL是Procedural Language/Structured Query Language的缩写。PL/SQL是一种过程化编程语言&#xff0c;运行于服务器端的编程语言。PL/SQL是对SQL语言的扩展。PL/SQL结合了SQL语句和过程性编程语言的特性&#xff0c;可以用于编写存储过程、触发器、函数等…

第二天:ALOAM前端讲解【第3部分】

(2)面特征 点到面的距离公式: d H = ∣ ( X ~ ( k + 1 , i ) L − X ˉ ( k , j ) L ) ⋅ ( ( X ˉ ( k , j ) L − X ˉ ( k , l ) L ) ( X ˉ ( k , j ) L − X ˉ ( k , m ) L ) ) ∣ ∣ ( X ˉ ( k , j ) L − X ˉ ( k , l ) L ) ( X ˉ ( k , j ) L − X ˉ ( k ,…

java基于ssm+jsp 二手手机回收平台系统

1前台首页功能模块 二手手机回收平台系统&#xff0c;在系统首页可以查看首页、手机商城、新闻资讯、我的、跳转到后台、购物车等内容&#xff0c;如图1所示。 图1前台首页功能界面图 用户注册&#xff0c;在用户注册页面可以填写账号、密码、姓名、手机、邮箱、照片、地址、…

Perl入门学习

Perl是一种强大的脚本语言&#xff0c;以其灵活性和文本处理能力而闻名&#xff0c;常用于系统管理、Web开发、生物信息学以及数据处理等领域。以下是Perl语言入门学习的一些关键点&#xff1a; ### 1. Perl简介 - **起源与特点**&#xff1a;Perl由Larry Wall在1987年创建&am…

708090年代经典老动画片大全集,经典怀旧老动画片大全资源下载,百度网盘百度云

一老动画制作需要对色彩、光影、画面要素、表现手法等方面有完美的把握。这样&#xff0c;才能创作出独具一格的动画作品。艺术性的表现&#xff0c;在动画文化中发挥了重要的作用。通过动画艺术&#xff0c;人们能够感受到迥异于现实世界的意境风景&#xff0c;感知到画面和人…

【小沐学AI】Python实现语音识别(faster-whisper-webui)

文章目录 1、简介1.1 whisper1.2 faster-whisper 2、安装3、测试结语 1、简介 1.1 whisper https://github.com/openai/whisper Whisper 是一种通用语音识别模型。它是在各种音频的大型数据集上训练的&#xff0c;也是一个多任务模型&#xff0c;可以执行多语言语音识别、语音…

如何做互联网项目需求评估?

关于互联网项目需求评估&#xff0c;我们可以按照以下步骤进行&#xff1a; 一、确定项目主题和目标受众&#xff1a;这篇文章首先要明确你要评估的互联网项目的主题是什么&#xff0c;你的目标受众是谁&#xff1f;你需要对项目的背景和目的有清晰的了解。 二、项目规模和内…

RabbitMq的基础及springAmqp的使用

RabbitMq 官网:RabbitMQ: One broker to queue them all | RabbitMQ 什么是MQ&#xff1f; mq就是消息队列&#xff0c;消息队列遵循这先入先出原则。一般用来解决应用解耦&#xff0c;异步消息&#xff0c;流量削峰等问题&#xff0c;实现高性能&#xff0c;高可用&#xf…

DDR自学笔记

DDR的技术发展 标准名称 内核时钟(MHz) I/O时钟(MHz) 工作电压(v) 预取位数 突发长度 数据速率(MT/s) 数据带宽(GB/s) 拓扑 SDRAM 100-166 100-166 3.3 1 / 100-166 0.8-1.3 T DDR 133-200 133-200 2.5 2n 2 266-400 2.1-3.2 T DDR2 133-200 266-…

MySQL之如何处理超大分页

如何处理MySQL超发分页&#xff1f; 可以使用覆盖索引解决 【点击进入】 MySQL超大分页处理 在数据量较大时&#xff0c;如果使用limit分页查询&#xff0c;在查询时&#xff0c;越往后&#xff0c;分页查询效率会越低。 示例&#xff1a; select * from user limit 900000…