【Proteus仿真】【Arduino单片机】PWM电机调速


一、功能简介

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


二、软件设计

/*
作者:嗨小易(QQ:3443792007)

*/

#include "public.h"
#include "beep.h"
#include "key.h"
#include "dc_motor.h"


//初始化运行一次
void setup() 
{
    beep_init();
    key_init();
    dc_motor_init();
}

//无限循环运行
void loop() 
{
    char key=0;
    char dir=0;//方向
    char run=0;//运行状态
    char speed=20;//速度

    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=!dir;
        }
        else if(key==KEY2_PRESS)//速度
        {
            speed+=20;
            if(speed>100)speed=0;
        }

        if(run==1)//启动
        {
            dc_motor_ctrl(dir);
            dc_motor_speed_set(speed);
        }
        else//停止
        {
            dc_motor_stop();
        }
    }
}




三、实验现象

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

在这里插入图片描述

联系作者

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

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值