• 方案介绍
  • 附件下载
  • 推荐器件
  • 相关推荐
申请入驻 产业图谱

基于STM32控制直流电机加减速正反转设计

2024/07/29
2405
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

设计资料获取联系方式.doc

共1个文件

本设计基于STM32控制直流电机加减速正反转设计(程序+仿真+论文)
仿真:proteus8.9
程序编译器:keil 5
编程语言:C语言
编号C0011
资料下载链接

功能说明:
本设计由STM32F103L298N电机驱动电路、按键电路组成。
1.通过按键可以控制电机,正转、反转、加速、减速、停止。
2.档位分4档,并且可以通过按键顺序正转、反转、加速、减速、停止。
3.档位可以自定义。
附赠相关论文,根据实物写的,与仿真功能基本一致。

仿真图(提供源文件):

在这里插入图片描述
在这里插入图片描述

源程序(提供源文件):

char dis0[6] = "Dir:+";   //暂存
char dis1[6] = "Dir:-";   //暂存
char dis2[16] = "";   //暂?
char dis3[] = "RUN ";   //暂存?
char dis4[] = "STOP";   //暂存
unsigned  char rekey = 0; //按键防止抖动
unsigned char contNum = 0; //循环计数
int main(void)
{
  
    delay_init();            //延时函数初始化
  
//    uart_init(9600);        //串口初始化为115200
    //  uart2_init(9600)    ;
    TIM3_Int_Init(10, 7199); //定时器
    LED_Init();             //初始化与LED连接的硬件接口
    KEY_Init();
    Lcd_GPIO_init();
    Lcd_Init();
    IN1 = 1;        //方向控制
    IN2 = 0;
    pwmRigh = 0;    //pwm调整,电机转速调整

    Lcd_Puts(0, 0, (unsigned char *)dis0);
    sprintf(dis2,"SPEED:%d",pwmRigh);
    Lcd_Puts(0, 1, (unsigned char *)dis2);
     Lcd_Puts(8, 0, (unsigned char *)dis3);

    while(1)
    {
        if((key1 == 0) || (key2 == 0) || (key3 == 0) || (key4 == 0) || (key5 == 0))      //检测到按键按下
        {
//            delay_ms(1);   //小抖动仿真不需要加
            if(rekey == 0)
            {
                if(key1 == 0)  //检测是否按下
                {

                    rekey = 1;
                    IN1 = 1;        //方向控制
                    IN2 = 0;                   
                    Lcd_Puts(0, 0, (unsigned char *)dis0);
                     Lcd_Puts(8, 0, (unsigned char *)dis3);
                }
                else if(key2 == 0) //设置值键
                {
                    rekey = 1;
                    IN1 = 0;        //方向控制
                    IN2 = 1;
                    Lcd_Puts(0, 0, (unsigned char *)dis1);
                     Lcd_Puts(8, 0, (unsigned char *)dis3);
                }
                else if(key3 == 0) //设置值键
                {
                    rekey = 1;
                    if(pwmRigh < 8)pwmRigh = pwmRigh + 2; //pwm 调速
                    sprintf(dis2,"SPEED:%d",pwmRigh/2);
                    Lcd_Puts(0, 1, (unsigned char *)dis2);
                }
                else if(key4 == 0) //设置值键
                {
                    rekey = 1;
                    if(pwmRigh >= 2)pwmRigh = pwmRigh - 1; //pwm 调速
                    sprintf(dis2,"SPEED:%d",pwmRigh/2);
                    Lcd_Puts(0, 1, (unsigned char *)dis2);
                }
                else if(key5 == 0) //设置值键
                {
                    rekey = 1;
                    IN1 = 0;        //方向控制
                    IN2 = 0;
                    Lcd_Puts(8, 0, (unsigned char *)dis4);
                }
            }
        }
        else
        {
            rekey = 0;  //防止重复检测到按键
        }
        delay_ms(10);
    }
}

在这里插入图片描述

以下为部分程序,完整程序可在下载链接获取:

论文报告:
在这里插入图片描述

  • 设计资料获取联系方式.doc
    下载

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
FT232RL 1 FTDI Chip Serial I/O Controller, CMOS, PDSO28, 5.30 X 10.20 MM, 0.65 MM PITCH, GREEN, SSOP-28

ECAD模型

下载ECAD模型
$10.08 查看
ATXMEGA128A3U-AUR 1 Microchip Technology Inc IC MCU 8BIT 128KB FLASH 64TQFP
$5.3 查看
STM32F429ZIT6XXXTR 1 STMicroelectronics IC,MICROCONTROLLER,32-BIT,CORTEX-M4F CPU,CMOS,QFP,144PIN,PLASTIC
暂无数据 查看
意法半导体

意法半导体

意法半导体(ST)集团于1987年6月成立,是由意大利的SGS微电子公司和法国Thomson半导体公司合并而成。1998年5月,SGS-THOMSON Microelectronics将公司名称改为意法半导体有限公司。意法半导体是世界最大的半导体公司之一,公司销售收入在半导体工业五大高速增长市场之间分布均衡(五大市场占2007年销售收入的百分比):通信(35%),消费(17%),计算机(16%),汽车(16%),工业(16%)。 据最新的工业统计数据,意法半导体是全球第五大半导体厂商,在很多市场居世界领先水平。例如,意法半导体是世界第一大专用模拟芯片和电源转换芯片制造商,世界第一大工业半导体和机顶盒芯片供应商,而且在分立器件、手机相机模块和车用集成电路领域居世界前列.

意法半导体(ST)集团于1987年6月成立,是由意大利的SGS微电子公司和法国Thomson半导体公司合并而成。1998年5月,SGS-THOMSON Microelectronics将公司名称改为意法半导体有限公司。意法半导体是世界最大的半导体公司之一,公司销售收入在半导体工业五大高速增长市场之间分布均衡(五大市场占2007年销售收入的百分比):通信(35%),消费(17%),计算机(16%),汽车(16%),工业(16%)。 据最新的工业统计数据,意法半导体是全球第五大半导体厂商,在很多市场居世界领先水平。例如,意法半导体是世界第一大专用模拟芯片和电源转换芯片制造商,世界第一大工业半导体和机顶盒芯片供应商,而且在分立器件、手机相机模块和车用集成电路领域居世界前列.收起

查看更多

相关推荐