K_A09_008 基于 STM32等单片机驱动ES08A SG90舵机按键控制正反转

news2024/11/25 20:36:27

目录

一、资源说明

二、基本参数

        参数

                型号:SG90  

                型号:ES08A

        引脚说明

三、驱动说明

        SG90舵机

        ES08A 舵机

        对应程序:

四、部分代码说明

        接线说明

                STC89C52RC+ES08A SG90舵机

                STM32F103C8T6+ES08A SG90舵机

五、基础知识学习与相关资料下载

六、视频效果展示与程序资料获取

七、项目主要材料清单

八、注意事项

九、接线表格


一、资源说明

单片机型号

测试条件

模块名称

代码功能

STC89C52RC

1.晶振11.0592M

ES08A SG90舵机

单片机驱动ES08A SG90舵机按键控制正反转

STM32F103C8T6

  1. 晶振8M
  2. 系统时钟72M

ES08A SG90舵机

二、基本参数

        参数

                型号:SG90  

                重量13克 角度90度-180度通用

                红色电压  粽色 地线  橙色是信号线

                技术数据:
                尺寸:21.5mmX11.8mmX22.7mm
                重量:9克
                无负载速度:0.12秒/60度(4.8V)
                堵转扭矩:1.2-1.4公斤/厘米(4.8V)
                使用温度:-30~~+60摄氏度
                死区设定:7微秒
                工作电压:4.8V-6V

                型号:ES08A

 

        引脚说明

 

SG90舵机功率相对较小 可以直接系统板供电 但是建议单独供电 单独供电注意单片机与电源共地

SG90舵机

引脚说明

GND棕线

电源地 此处要与单片机共地

VCC红线

给舵机供电 5V

PWM黄线

PWM控制 SG90大概控制时间是0.5ms-2.5ms

 

ES08A功率相对较大 STC89C52RC驱动时候要单独供电 且PWM引脚要接一个4.7K左右上拉电阻

ES08A

引脚说明

GND棕线

电源地 此处要与单片机共地

VCC红线

给舵机供电 5V

PWM黄线

PWM控制 ES08A大概控制时间是0.7ms-2.3ms

三、驱动说明

        ES08A 舵机与SG90舵机驱动方式类似 主要是控制时间范围有所区别

        SG90舵机

        信号线(黄线)红线(电源线)棕色(地线)

        舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms-2. 5ms范围内的角度控制脉冲部分,总间隔为2ms。以180度角度伺服为例,那么对应的 控制关系是这样的:

           0.5ms--------------0度;

           1.0ms------------45度;

           1.5ms------------90度;

           2.0ms-----------135度;

           2.5ms-----------180度;

        ES08A 舵机

 

        对应程序:

        以下以STC89C52RC程序为例

        定时器产生周期20MS PWM波形

void tim0() interrupt 1
{
	TL0 = 0xA4;		//设置定时初值
	TH0 = 0xFF;		//设置定时初值  0.1ms

	times++;
	if(times<=Duty)
	{
	   Pwm=1;
	}
	else
	{
	   Pwm=0;
	} 
	if(times>=Period)
	{
	   times=0;
	}
}

        占空比由Duty决定 改变Duty则占空比改变 次处STC89C52RC用的晶振11.0592 故定时有误差

uint8_t Duty=5;    //大概600US

四、部分代码说明

        接线说明

                需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改

                STC89C52RC+ES08A SG90舵机

//ES08A SG90引脚定义

sbit Pwm=P1^0;

//按键引脚定义

sbit K1=P1^1;

sbit K2=P1^2;

                STM32F103C8T6+ES08A SG90舵机

//ES08A SG90引脚定义

// TIM3 输出比较通道1

#define            GENERAL_TIM_CH1_GPIO_CLK      RCC_APB2Periph_GPIOA

#define            GENERAL_TIM_CH1_PORT          GPIOA

#define            GENERAL_TIM_CH1_PIN           GPIO_Pin_6

//按键引脚定义

#define K_Forward     GPIO_Pin_6 //舵机正转按键 GPIOB_Pin_6 0x0040

#define K_Reverse      GPIO_Pin_7 //舵机反转按键   GPIOB_Pin_7 0x0080

五、基础知识学习与相关资料下载

  1. STC89C52RC程序下载 直戳跳转
  2. STM32F103C8T6程序下载
    1. 串口下载                直戳跳转 
    2. ST-LINK下载             直戳跳转
    3. J-LINK下载              直戳跳转
    4. DAP-LINK下载            直戳跳转

六、视频效果展示与程序资料获取

        视频连接    直戳跳转

        资料获取   直戳跳转

七、项目主要材料清单

STC89C52RC驱动方案

图片

STM32F103C8T6驱动方案

图片

备注

K_A09_008

STC89C52RC系统板X1

 

STM32F103C8T6系统板X1

 

  1. STM32系统板两根Micro USB线一根用于J-LINK下载器,另一根用于给系统板供电
  2. 杜邦线建议不用太长的

ES08舵机x1

 

ES08A舵机x1

 

SG90舵机x1

 

SG90舵机x1

 

Micro USB线X1

 

Micro USB线X2

 

公母杜邦线X8

公公杜邦线X2

 

公母杜邦线X8

公公杜邦线X2

 

J-LINK下载器

 

八、注意事项

  1. VCC GND请勿接反,接反易烧
  2. 显示异常时,排除接线接触不良
  3. 单片机与模块需要共地接线
  4. STC89C52RC驱动ES08A舵机必须单独供电并IO口需要4.7K左右电阻上拉

九、接线表格

单片机型号

模块

对应引脚(上:模块引脚 下:单片机引脚)

STC89C52RC

ES08A舵机

PWM(黄线)

VCC(红线)

GND(棕线)

P1.0

5V

GND(共地)

SG90舵机

PWM(黄线)

VCC(红线)

GND(棕线)

P1.0

5V

GND(共地)

按键模块

KEY1

KEY2

GND

P1.1

P1.2

GND

STM32F103C8T6

ES08A舵机

PWM(黄线)

VCC(红线)

GND(棕线)

PA6

5V(单独供电)

GND(共地)

SG90舵机

PWM(黄线)

VCC(红线)

GND(棕线)

PA6

5V(单独供电)

GND(共地)

按键模块

KEY1

KEY2

GND

PB6

PB7

GND

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

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

相关文章

AI遮天传 DL-深度学习在自然语言中的应用

本文简要介绍一些深度学习在自然语言应用的基本任务&#xff0c;词表示&#xff0c;文本翻译和机器翻译。 一、典型任务 词性标注和句法分析问答和对话系统文本/文档分类情感分析和观点挖掘机器翻译文本生成......1.1 词性标注和句法分析 词性(POS)标注即对句子里的每个词给出…

WPF入门第二篇 MVVM与Binding

MVVM与Binding MVVM&#xff0c;即Model-View-ViewModel的首字母缩写&#xff0c;在这种开发模式下常用binding来对View和ViewModel进行绑定。 添加三个文件夹&#xff0c;分别命名为Models、Views、ViewModels。 在Model文件夹中&#xff0c;添加Student类&#xff0c;并将…

Java学到什么程度可以找工作?这10点赶紧自查!

最近收到了不少私信&#xff0c;询问Java学到什么程度可以找工作。 我也去问了几个同组大佬的想法&#xff0c;总结了10点&#xff0c;大家可以对照自查一下&#xff0c;看看你都做到了吗&#xff1f; 基本技能自查 1、Java SE基础 推荐学习Java8&#xff0c;这依旧是个有代表…

【2023最新】腾讯云注册域名及服务器使用宝塔绑定域名教程

1 在腾讯云注册域名 在官网&#xff1a;https://buy.cloud.tencent.com/domain&#xff0c;注册想要的域名&#xff0c;需要认证信息模板 注册好以后&#xff0c;在右上角输入框&#xff0c;输入域名&#xff0c;查找并进入到域名控制台 在域名控制台&#xff0c;添加记录&…

基础算法系列之排序算法(一)[快速排序,归并排序,二分查找]

文章目录前言快速排序关键点实现选角排序重复实现稳定性分析记忆模板归并排序关键点实现二分查找总结前言 先来一波预热&#xff0c;本次寒假将要更新的博文系列为&#xff1a;基础算法部分&#xff0c;最新前言论文研读&#xff08;不包含论文复现-耗时太长&#xff09;&…

day21【代码随想录】二叉树的层序遍历、二叉树的层序遍历|| 、二叉树的层平均值 、二叉树的锯齿形层序遍历 、二叉树的右视图 、N叉树的层序遍历

文章目录前言一、二叉树的层序遍历&#xff08;力扣102&#xff09;二、二叉树的层序遍历||&#xff08;力扣107&#xff09;三、二叉树的层平均值&#xff08;力扣637&#xff09;四、二叉树的锯齿形层序遍历&#xff08;力扣103&#xff09;五、二叉树的右视图&#xff08;力…

吃透Chisel语言.39.Chisel实战之单周期RISC-V处理器实现(一)——需求分析和初步设计

Chisel实战之单周期RISC-V处理器实现&#xff08;一&#xff09;——需求分析和初步设计 需求分析 首先明确我们要做的是什么&#xff0c;这个在标题里面已经说明了&#xff0c;我们要做的是一个单周期RISC-V处理器。 但光是个短语不足以支撑我们开展项目&#xff0c;我们需…

大数据学习:shell基础(3)

文章目录history命令参数说明任务一&#xff1a;查看历史操作记录任务二&#xff1a;查看最近10条历史命令任务三&#xff1a;查看最开始10条历史命令任务四&#xff1a;曾多少次使用vim编辑文本文件&#xff1f;任务五&#xff1a;执行历史第5条命令任务六&#xff1a;执行上一…

【深度学习】李宏毅2021/2022春深度学习课程笔记 - Recurrent Neural NetWork(RNN)

文章目录一、Slot Filling二、Recurrent Neural NetWork&#xff08;RNN&#xff09;三、Bidirectional RNN&#xff08;双向RNN&#xff09;四、Long Short Term Memory&#xff08;LSTM&#xff09;五、Learning Target六、RNN 很难 Train七、Helpful Techniques7.1 LSTM7.2 …

CSDN竞赛14期·12月11日考试

CSDN竞赛14期12月11日考试 1、题目名称&#xff1a;字符串全排列 // 请关闭中文输入法&#xff0c;用英文的字母和标点符号。 // 如果你想运行系统测试用例&#xff0c;请点击【执行代码】按钮&#xff0c;如果你想提交作答结果&#xff0c;请点击【提交】按钮&#xff0c; //…

半入耳式蓝牙耳机哪款音质好?音质好的半入耳式蓝牙耳机推荐

对于喜欢听歌的朋友来讲&#xff0c;你只佛会关注到蓝牙耳机的佩戴舒适度&#xff0c;音质清晰这种情况&#xff0c;入耳式的带有耳塞&#xff0c;往往更加佩戴有更好的密闭性&#xff0c;半入耳的不完全进入耳道&#xff0c;佩戴更加舒适&#xff0c;下面整理了几款音质不错的…

[附源码]Python计算机毕业设计非处方药的查询与推荐系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

Prometheus+Grafana监控一网打尽

PrometheusGrafana监控一、Prometheus介绍二、监控组件node-exportermysqld-exportercadvisorprometheus三、Grafana 展示平台docker启动配置Data sources导入Dashboard模板Linux主机监控Mysql监控Nginx监控Redis监控PostgreSQL监控Kafka监控ElasticSearch监控一、Prometheus介…

这四类项目经理一定带不好项目

项目经理就一定可以带好项目嘛&#xff1f;&#xff0c;当然不一定 失败的项目不少&#xff0c;除去一些本身就很坑的项目&#xff0c;大多项目失败&#xff0c;都和项目经理的个性有关。 也总结了2组极端特质&#xff1a; 第一&#xff0c;烂好人VS劳模型 第二&#xff0c;马…

[ vulhub漏洞复现篇 ] struts2远程代码执行漏洞s2-059(CVE-2019-0230)

&#x1f36c; 博主介绍 &#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 _PowerShell &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 &#x1f389;点赞➕评论➕收藏 养成习…

JavaEE-多线程初阶3

✏️作者&#xff1a;银河罐头 &#x1f4cb;系列专栏&#xff1a;JavaEE &#x1f332;“种一棵树最好的时间是十年前&#xff0c;其次是现在” 目录volatile关键字wait 和 notify多线程案例单例模式饿汉模式懒汉模式volatile关键字 volatile : 易变的&#xff0c;易失的 vo…

关于实体类中VO、DTO、Entity的区别

关于实体类中VO、DTO、Entity的区别 1、entity 里的每一个字段&#xff0c;与数据库相对应&#xff0c; 2、vo 里的每一个字段&#xff0c;是和你前台 html 页面相对应&#xff0c; 3、dto 这是用来转换从 entity 到 vo&#xff0c;或者从 vo 到 entity 的中间的东西 。(DTO中拥…

leetcode: 1091. 二进制矩阵中的最短路径

1091. 二进制矩阵中的最短路径 来源:力扣(LeetCode) 链接: https://leetcode.cn/problems/shortest-path-in-binary-matrix/description/ 给你一个 n x n 的二进制矩阵 grid 中,返回矩阵中最短 畅通路径 的长度。如果不存在这样的路径,返回 -1 。 二进制矩阵中的 畅通…

刚刚接触编程,纠结应该先学Python还是Java?看完心里就有数了。

准备学习编程前&#xff0c;你一定会打开电脑搜索一下“先学Python还是先学Java&#xff1f;”扑面而来的是海量回答。 如果你问一名Java程序员&#xff0c;肯定会建议你先学Java&#xff0c;因为他们认为Python像个乳臭未干的黄毛小子。但如果你问Python程序员&#xff0c;可…

MacOS Ventura 13.1 (22C65) 正式版带 OC 0.8.7 and winPE 双分区原版黑苹果镜像

12 月 14 日&#xff0c;苹果向 Mac 电脑用户推送了 macOS 13.1 更新&#xff08;内部版本号&#xff1a;22C65&#xff09;&#xff0c;本次更新距离上次发布隔了 34 天。本次更新引入了无边记应用&#xff0c;旨在让用户在空白的白板式画布上进行素描、绘画和写作&#xff0c…