【Proteus仿真】【Arduino单片机】直流电机和步进电机

news/2025/3/15 22:53:03/

文章目录

  • 一、功能简介
  • 二、软件设计
  • 三、实验现象
  • 联系作者


一、功能简介

本项目使用Proteus8仿真Arduino单片机控制器,使用蜂鸣器、按键、直流电机、步进电机、ULN2003、L293D等。
主要功能:
系统运行后,K3键启动运行,K1和K2键控制运行方向,K4键停止。


二、软件设计

/*
作者:嗨小易(QQ:3443792007)*/#include "public.h"
#include "beep.h"
#include "key.h"
#include "Stepper_28BYJ48.h"
#include "dc_motor.h"//创建步进电机对象
#define STEPS 64
Stepper mystepper(STEPS,2,3,12,13);//初始化运行一次
void setup() 
{beep_init();key_init();dc_motor_init();mystepper.setSpeed(10); 
}//无限循环运行
void loop() 
{char key=0;char dir=0;//方向char run=0;//运行状态int pulse=-5;//脉冲while(1){key=key_scan(0);//按键扫描if(key!=0)beep_alarm(100,1000);//提示音if(key==KEY3_PRESS)//启动run=1; else if(key==KEY4_PRESS)//停止run=0;else if(key==KEY1_PRESS)//正转{dir=0;pulse=-5;}else if(key==KEY2_PRESS)//反转{dir=1;pulse=5;}if(run==1)//启动{dc_motor_ctrl(dir);mystepper.step(pulse);}else//停止{dc_motor_stop();}}
}

三、实验现象

B站演示视频:https://space.bilibili.com/444388619

在这里插入图片描述

联系作者

视频地址:https://space.bilibili.com/444388619/video
专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。


http://www.ppmy.cn/news/1182139.html

相关文章

windows PC virtualBox 配置

效果: oracle vitualbox 可以访问通PC主机,可以访问外网: 注意,如果docker0网络地址,和PC主机的网络地址冲突了,需要变更docker的网络地址: root/home/mysqlPcap/anti-tamper $ cat /etc/docker/daemon.js…

使用了百度OCR,记录一下

由于识别ocr有的频率不高,图片无保密性需求,也不想太大的库, 就决定还是用下api算了,试用了几家,决定用百度的ocr包,相对简单。 遇到的问题里面下列基本有提到:例如获取ID,KEY&…

数据库MySQL(四):表中字段约束和外键约束

约束 概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。 目的:保证数据库中数据的正确性、有效性、完整性。 约束分类描述关键字非空约束限制该字段的数据不能为NULLNOT NULL唯一约束保证该字段的所有数据都是唯一的、不重复的…

详细介绍如何使用 NeRF 进行 3D 体积渲染-附源码下载

介绍 在此示例中,我们展示了 Ben Mildenhall 等人的研究论文 NeRF:将场景表示为用于视图合成的神经辐射场的最小实现 。等人。作者提出了一种巧妙的方法,通过神经网络对体积场景函数进行建模来合成场景的新颖视图。 为了帮助您直观地理解这一点,让我们从以下问题开始: 是…

接口自动化测试要做什么?一文3个步骤带你成功学会!

先了解下接口测试流程: 1、需求分析 2、Api文档分析与评审 3、测试计划编写 4、用例设计与评审 5、环境搭建(工具) 6、执行用例 7、缺陷管理 8、测试报告 了解了接口测试的工作流程,那"接口自动化测试"怎么弄&#xff1…

《算法通关村—最大小栈问题解析》

《算法通关村—最大小栈问题解析》 最小栈 描述 leetCode 155: 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现最小栈 MinStack() 初始化堆栈对象。 void push(int val) 将元素val推入堆栈。 void pop()…

爬虫、数据清洗和分析

爬虫、数据清洗和分析是在数据科学、数据挖掘和网络爬虫开发领域中常见的概念。 爬虫(Web Scraping):爬虫是一种自动化程序或脚本,用于从互联网上的网站上提取信息。这些信息可以是文本、图像、视频或其他类型的数据。爬虫通常会…

LLVM学习笔记(57)

4.2. 代码入口(以下为7.0代码) LLVM有两个编译器。一个是静态编译器llc——它的输入是Clang从C、C及ObjC源代码转换而来的LLVM IR,把IR编译为LLVM的字节码,或指定目标机器的汇编或机器码。另一个是动态编译器lli——它的输入是LL…