硬件电路的设计

3.1系统的功能分析及体系结构设计
3.1.1系统功能分析
本设计由STM32F103C8T6单片机核心板电路+L298N电机驱动电路+按键电路+电源电路组成。
1、通过按键可以控制电机,正转、反转、加速、减速、停止。档位分8档。
2、按键顺序正转、反转、加速、减速、停止。
3.1.2系统总体结构
本系统具体框图如下图所示:

原理图:


STM32单片机核心电路设计
STM32系列处理器是意法半导体ST公司生产的一种基于ARM 7架构的32位、支持实时仿真和跟踪的微控制器。选择此款控制芯片是因为本系统设计并非追求成本的最低或更小的功耗,而是在实现本设计功能的前提下能够提供更丰富的接口和功能以便于设计实验系统各实验项目所需的外围扩展电路。此款控制芯片在完成单片机课程的学习后上手较为容易,在医疗器械中应用广泛,具有很好的学习、实验研究价值。
一、STM32的主要优点:
(1)使用ARM最新的、先进架构的Cortex-M3内核
(2) 优异的实时性能
(3) 杰出的功耗控制
(4) 出众及创新的外设
(5) 最大程度的集成整合
(6) 易于开发,可使产品快速将进入市场
二、STM32——最佳的平台选项
对于使用同一平台进行多个项目开发而言,STM32是最
佳的选择:
(1) 从仅需少量的存储空间和管脚应用到需要更多的存储空间和管脚的应用
(2) 从苛求性能的应用到电池供电的应用
(3) 从简单而成本敏感的应用到高端应用
(4) 全系列脚对脚、外设及软件的高度兼容性,给您带来全方位的灵活性。您可以在不必修改您原始框架及软件的条件下,将您的应用升级到需要更多存储空间或精简到使用更少存储空间/ 或改用不同的封装的规格。

L298N电机驱动模块电路设计

本L298N驱动模块,采用ST公司的L298N芯片,L298N 是一种双H桥电机驱动芯片,其中每个H桥可以提供2A的电流,功率部分的供电电压范围是2.5-48v,逻辑部分5v供电,接受5vTTL电平。该模块可以直接驱动两路3-30V直流电机,并提供了5V输出接口,可以给5V单片机电路系统供电,可以方便的控制直流电机速度和方向。
一、产品参数:
(1)驱动芯片:L298N双H桥驱动芯片
(2)具有二极管续流保护
(3)直流电机转速可以通过PWM方式来实现控制
(4)驱动部分端子供电范围VMS:+5V~+35V
(5)驱动部分峰值电流Io:2A/桥
(6)逻辑部分端子供电范围Vss:4.5-5.5V
(7)逻辑部分工作电流范围:0~36mA
(8)控制信号输入电压范围:高电平4.5-5.5V 低电平0V
(9)最大功耗:20W
(10)存储温度:-25℃~+130℃
二、电机驱动模块使用注意事项
(1)第一次上电时观察绿色电源指示灯L5是否点亮,如果不亮,请立即断电检查电源是否接反。
(2)驱动器为功率设备,请保持工作环境的散热通风;在连上电机后使其连续工作一段时间后观察电机和驱动芯片的温升正常后方可进行后续使用。
三、电机驱动模块接口说明:
(1)电机驱动电源输入接口:VMS接正极,GND接负极
(2)驱动器和控制端口的接口:控制直流电机时IN1、IN2和ENA为一组,它们控制电机A,接在A+和A-,如果电机A不控制,则ENA悬空即可;如果电机A控制,则ENA接一路PWM输出。IN3、IN4和ENB为一组,他们控制电机B,接在B+和B-,如果电机B不控制,则ENB悬空即可;如果电机B控制,则ENB接一路PWM输出。
四、直流电机控制信号真值表
以电机A为例,高电平H:低电平:L
输入信号功能:
IN1=H;IN2=L:电机A正转
IN1=L;IN2=H:电机A反转
ENA=H;IN1=IN2:电机A紧急停车
ENA=L;IN1=X;IN2=X:任意电平电机A自由停车


按键电路(含上拉电阻)设计

轻触按键是按键产品下属的一款分类产品,它其实相当于是一种电子开关,只要轻轻的按下按键就可以是开关接通,松开时是开关就断开连接,实现原理主要是通过轻触按键内部的金属弹片受力弹动来实现接通和断开的。
在本系统中,按键作为系统的输入,起到了人机交互的枢纽作用。按键的单片机控制引脚默认为高电平,当按键按下后,单片机的相关引脚则变成低电平。进而实现对系统的手动输入。其电路原理图如下图所示。电路中电阻作用为上拉电阻,保证按键信号的稳定输出。

系统软件设计

#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include <stdio.h>
#include "timer.h"
#include "key.h"unsigned char pwmRigh=10;    //pwm调整
unsigned char pwmLeft=10;
unsigned char djs  = 200;char dis0[16];     //暂存
char dis1[16];   //暂存unsigned  char rekey =0;//按键防止抖动unsigned char contNum =0;//循环计数
int main(void){ delay_init();            //延时函数初始化    uart_init(9600);      //串口初始化为115200
//  uart2_init(9600)    ;TIM3_Int_Init(9,7199);//2ms     LED_Init();                //初始化与LED连接的硬件接口KEY_Init();IN1=1;      //方向控制IN2=0;pwmRigh=4;    //pwm调整delay_ms(100);while(1){              if((key1==0)||(key2==0)||(key3==0)||(key4==0)||(key5==0))      //检测到按键按下{delay_ms(10);   //小抖动if(rekey==0){if(key1==0)    //检测是否按下{rekey=1;IN1=1;       //方向控制IN2=0;   }   else if(key2==0)//设置值键{rekey=1;IN1=0;       //方向控制IN2=1;       }else if(key3==0)//设置值键{rekey=1; if(pwmRigh<=16)pwmRigh = pwmRigh+2;//pwm 调速}else if(key4==0)//设置值键{rekey=1;    if(pwmRigh>=2)pwmRigh = pwmRigh-2;//pwm 调速}else if(key5==0)//设置值键{rekey=1;  IN1=0;     //方向控制IN2=0;   }               }}else{rekey=0;    //防止重复检测到按键}delay_ms(100);}
}   void pwmCtrl(void)
{static unsigned char countRigh;countRigh++;if(countRigh<pwmRigh)     //占空比调节{ENA=1;            //打开}else if(countRigh<=20)   //关闭时间段{ENA=0;         //关闭if(countRigh == 20)countRigh= 0;}
}

.

链接:https://pan.baidu.com/s/1XJ2Yxn9XjLWPACMHF3FRgw
提取码:ctlg

.

基于STM32单片机的直流电机控制系统加减速正反转设计方案原理图程序相关推荐

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

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

  2. 基于STM32单片机的直流电机PWM调速(Proteus仿真+程序)

    编号:9 基于STM32单片机的直流电机PWM调速 功能描述: 由 STM32单片机+液晶1602显示模块+键盘模块+L298N电机驱动模块+直流电机 1.采用STM32F103单片机为主控制器 2. ...

  3. 基于STM32单片机的K型热电偶测温(Proteus仿真+程序)

    编号:17 基于STM32单片机的K型热电偶测温 功能描述: 本设计由STM32单片机+MAX7765+TCK热电偶+1602液晶显示模块组成. 1.主控制器是STM32单片机 2.TCK热电偶测温通 ...

  4. 基于stm32单片机的图书馆噪音检测量分贝仪(源码+原理图)

    资料编号:080 根据噪音大小,分别不同指示灯,当噪音过大的时候蜂鸣器报警, 具体功能请看下面演示视频    全套资料齐全: 80-基于stm32单片机的图书馆噪音检测量分贝仪(源码+原理图) stm ...

  5. 基于STM32单片机的智能手环心率计步器体温显示方案原理图程序设计

    硬件电路的设计 (末尾附文件) 3.1系统的功能分析及体系结构设计 3.1.1系统功能分析 本设计由STM32F103C8T6单片机核心板电路+ADXL345传感器电路+心率传感器电路+温度传感器+l ...

  6. 基于STM32单片机老人防跌倒报警系统GSM短信上报原理图PCB

    功能: 0.本项目采用STM32F103C8T6作为单片机系统的控制MCU 1.本项目采用倾角传感器adxl345模块,实时检测老人的状态角度. 2.采用GSM模块实现短信的发送,只要老人跌倒了(且没 ...

  7. 烟雾检测电路c语言程序,基于51单片机火灾报警器系统烟雾检测温度检测设计(原理图+程序仿真+论文)...

    课题题目基于单片机的火灾自动报警系统 课题的目的.意义以及和本课题有关的国内外现状分析:1.目的:本系统以单片机为主控单元,能够及时监测到系统故障和环境中有无火灾,火灾一旦发生将实现声光报警,并采取有 ...

  8. 基于51单片机的智能水表水流量计流量报警器温度设计方案原理图

    本系统由STC89C52单片机电路+水流量传感器+DS18B20温度电路+继电器电路+LCD1602液晶显示电路+按键电路+蜂鸣器电路+电源电路组成. 系统总体结构 (文末附文件) 3.2模块电路的设 ...

  9. 基于51单片机的16键电子琴音乐盒设计proteus仿真原理图程序

    功能: 0.本项目采用STC89C52作为单片机系统的控制MCU 1.LCD1602液晶实时显示时间和当前工作模式 2.支持电子琴模式和歌曲模式(内置8首歌曲) 3.短触'设置/切换'键可切换工作模式 ...

最新文章

  1. android 瀑布流的实现(用recyclerview的实现的)
  2. liunx系统mysql全量备份和增量备份
  3. python网课推荐 知乎-知乎看了很多推荐,最终选了这本Python入门
  4. python编写一个软件-如何用Python写一个计算器软件 附带效果图
  5. 面试必胜的九大素质八大能力
  6. STM32串口寄存器操作(转)
  7. Abp vnext Web应用程序开发教程 4 —— 集成测试
  8. SpringCloud学习笔记028---在SpringBoot中整合多数据源_实战项目
  9. 一款用了都说好的思维导图软件:Ayoa
  10. 关注SharePoint 2010 ,更要关注InfoPath 2010!
  11. 微信造梦西游服务器错误,造梦西游ol常见问题解答
  12. 前端和java选哪个_web前端和java哪个好?新手该选择哪个
  13. ArcGIS道路网拓扑检查
  14. 怎样在LaTeX中方便输入带圆圈的数字
  15. 我的自定义Spring框架 | Spring核心功能结构
  16. 解决Ubuntu无法定位软件包问题
  17. 我们的爱恨情仇:人性-关系-危机-和谐的科学研究
  18. uestc 1903
  19. 在linux系统(CentOS 7)安装gurobi教程
  20. php如何实现备忘录,备忘录模式及php实现

热门文章

  1. 怎样恢复文件默认打开方式
  2. MySQL优化之——函数
  3. 数字图像 - 图像隐写
  4. 活动如何造势推广?会议软件帮您忙
  5. RESTful风格的springMVC
  6. 如何正确的看待人工智能?只有编程基础的人可以学吗?
  7. 如何正确安装PARSEC。
  8. 微信摇一摇php,微信“摇一摇”功能是怎么实现的?
  9. Win键无效/Win键失灵/Win键被禁用/Win键+组合键不起作用
  10. 关于daemonize()