开发知识点-stm32/ESP32/Mega2560嵌入式设计

news2024/11/25 0:27:04

在这里插入图片描述

嵌入式设计

  • STM32四轴飞行器
  • 原理图解析
  • 小马哥 DragonFly四轴
    • 软件开发 13 STM32 SPI总线通讯
      • SPI 总线协议简介
        • SPI 物理层
        • SPI 协议层
          • SPI 通信时序
      • STM32硬件SPI接口简介
      • SPI接口 利用库函数初始化配置
  • ESP32

“F:\res\marlin-2.0.x”
“F:\res\Marlin-2.1.2”

STM32四轴飞行器

小马哥STM32四轴飞行器

原理图解析

在这里插入图片描述

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

在这里插入图片描述
西安小马哥四轴/ArduPilot Mega系列飞控/MWC

小四轴/四轴/穿越机

硬件层面
PCB做结构板
MOS管控制
空心杯电机调速
供电系统

Intel® Core™ i5-8300H 2.30GHz
16.0 GB (15.9 GB 可用)

飞控程序如何写
STM32F103C8T6做主控

手柄

STM32F411
STM32F103

• 3路USART,速度高达12.5 Mbit/s,
• 5路SPI(I2S复用),速度高达50 Mbit/s,
• 3路I²C,高达1Mbps
• 1x SDIO,频率高达48MHz,且所有封装均提供,
• 1个USB 2.0 OTG(全速),
• 2路全双工I²S,高达32位/192KHz,
• 3路单工I²S,高达32位/192KHz,
• 速度高达2.4 MSPS的12位ADC,
• 11个频率高达100 MHz的16和32位定时器

性能: 在100 MHz频率下,
从Flash存储器执行时,STM32F411单片机能够提供125 DMIPS/339 CoreMark性能,
并且利用意法半导体的ART加速器实现了FLASH零等待状态。DSP指令和浮点运算单元扩大了产品的应用范围。

功效: 该系列产品采用意法半导体90 nm工艺和ART加速器,
具有动态功耗调整功能,能够在从Flash存储器执行时实现低至100 µA/MHz的电流消耗。
停机模式下,功耗低至10 µA。

一、四轴硬件设计课程
1、小马哥四轴第1讲、 Altium Designer安装与介绍
2、小马哥四轴第2讲上、原理图讲解之MCU最小系统讲解
3、小马哥四轴第2讲下、原理图各模块讲解
4、小马哥四轴第3讲上、AD库制作之原理图库的制作
5、小马哥四轴第3讲下、AD库制作之PCB封装库的制作
6、小马哥四轴第4讲上、原理图绘制
7、小马哥四轴第4讲下、原理图绘制
8、小马哥四轴第5讲、 用CAD绘制小四轴PCB外形
9、小马哥四轴第6讲、 四轴PCB板元器件布局
10、小马哥四轴第7讲上、PCB布线与2.4G模块布线
11、小马哥四轴第7讲下、PCB布线之电源布线与敷铜
12、小马哥四轴第8讲、 四轴四层板PCB板设计
二、四轴STM32软件设计入门课程与飞控算法课程
第1讲、 KEIL(MDK-ARM)安装
第2讲上、Keil使用固件库创建STM32工程
第2讲下、KEIL5快速创建STM32工程
第3讲上、初识STM32
第3讲下、初识STM32
第4讲、 STM32标准库的封装
第5讲上、点亮LED与GPIO介绍
第5讲下、点亮LED之标准库使用
第6讲上、利用串口实现打印
第6讲下、串口打印重定向函数
第7讲上、系统时钟与滴答定时
第7讲下、滴答定时器计时延时
第8讲、 RGB全彩灯编程与调试
第9讲上、STM32外部中断及NVIC
第9讲中、STM32中断及NVIC原理
第9讲下、STM32中断代码实现
第10讲上、STM32 IIC通讯时序讲解
第10讲下、STM32 IIC 代码实现
第11讲上、陀螺仪MPU9250讲解
第11讲下、陀螺仪MPU9250讲解

姿态解算、数据通讯协议
在这里插入图片描述

电量LED
熟练使用外设
飞控算法

小马哥 DragonFly四轴

电子开发学习

  • 开发环境 Keil(MDK_ARM)
  • STM32 F1、F4 标准库

原理图
源码
芯片、模块

在这里插入图片描述

软件开发 13 STM32 SPI总线通讯

SPI 总线协议简介

常用 通讯总线(单片机与单片机、单片机与外围设备的总线协议)
串口USART、IIC、SPI(高速)、CAN

遥控 NRF24L01通信 走 SPI

STM32F4 硬件SPI接口配置使用
实现NRF24L01 芯片 寄存器 读写
涉及 外设 GPIO 、SPI外设 、NRF24L01

STM32中文参考手册 refenence manual
DS10314_STM32F411CCU6_Datasheet 芯片手册
NRF24L01 中文说明书

SPI协议 摩托罗拉公司 通信协议 Serial Peripheral Interface
串行外围设备接口
高速 同步 全双工通信总线
( 通信分类
串口 异步 全双工
IIC 同步 半双工
)什么单工

SPI 物理层

从 物理层 和 协议层 讲解
在这里插入图片描述

外围设备 该怎么接
有多少根 信号线

SPI 支持的 通信模式
一主一从 (图中展示的)
一主多从

不支持 多主模式

(IIC 可以 11,1多,多主机1从机通信)
从机 可以是MCU、外围设备、传感器

四轴上 MCU + NRF模块 (一主一从)
SPI 协议 四根线 (信号线 连接关系)

NSS/CS 片选线(片选信号 主机控制)
SCK 时钟线(同步时钟 主机控制)
两根数据线
MOSI (主到从)
MISO

SCK、MOSI、MISO可以共用(一主多从)
片选线 单独 (SPI 是 IO口控制 片选引脚)
(IIC 一主多从 主机广播一个地址 从机对比地址、返回应答信号、建立通信)

SPI IO口 电平拉低 (选中从机进行通信 独占共享线)

硬件连接关系
通信协议通信模式的切换

SPI 协议层

与IIC协议层 一样
在这里插入图片描述

SPI 通信时序

在这里插入图片描述

四个引脚 信号 时序

片选线 选中开始(起始信号 电平拉低 默认高电平 1)(停止信号 拉高 6)
SCK同步时钟
剩下两个 数据线

通信选择状态 低电平
高电平(释放总线)

时钟脉搏 一个周期 一位数据 交换

一个完整方波为一个周期

上升沿 为 准备数据
下降沿 为 采集数据
期间 保证 信号线的电平 是稳定的(数据有效性)
MOSI/MISO上数据也是同时进行的
SPI数据传输流程

在这里插入图片描述

STM32硬件SPI接口简介

SPI接口 利用库函数初始化配置

ESP32

https://www.eepw.com.cn/zhuanlan/315164.html

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

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

相关文章

深度学习中的“钩子“(Hook):基于pytorch实现了简单例子

目录 基本概念一个详细的示例 基于resnet50的一个hook应用例子前向传播示例反向传播示例 基本概念 在深度学习中,“钩子”(Hook)是一种机制,可以在神经网络的不同层或模块中插入自定义的代码,以便在网络的前向传播或反…

python开发数字人助理版

Fay数字人助理版是fay开源项目的重要分支,专注于构建智能数字助理的开源解决方案。它提供了灵活的模块化设计,使开发人员能够定制和组合各种功能模块,包括情绪分析、NLP处理、语音合成和语音输出等。Fay数字人助理版为开发人员提供了强大的工…

第三章《补基础:不怕学不懂概率统计》笔记

3.1 什么是概率 概率亦称“或然率”,它反映随机事件出现的可能性大小,在现实生活中有着极其普遍的应用。 3.1.1 最简单的概率的例子 3.1.2 概率论与数理统计的关系 概率论与数理统计的关系可以概括为,概率论是数理统计的理论基础&#xf…

fastspar微生物相关性推断

fastspar 简介 fastspar是基于Sparcc通过C编写的,速度更快,内存消耗更少。sparcc是基于OTU的原始count数,通过log转换和标准化去除传统相对丰度的天然负相关(因为所有OTU之和为1,某些OTU丰度高另外一些自然就少&…

nssm部署nginx

nssm install Nginx8098 --安装nginx nssm start Nginx8098 --启用nginx nginx 选择nginx路径,安装

Kyligence Copilot 亮相第六届进博会,增添数智新活力

11月5日,第六届中国国际进口博览会(以下简称“进博会”)在上海国家会展中心盛大启幕,众多新科技、新成果、新展品亮相本届进博会。作为阿斯利康(AstraZeneca)合作伙伴,跬智信息(Kyli…

ApiFox添加全局参数

文章目录 Apifox右上角打开 管理环境Apifox右上角打开 管理环境 我们发现,从登录以后,在请求其他接口,每次都需要添加一个Header 头信息.这样很繁琐.那Apifox是否支持我们设置全局参数呢?方便我们每次调用需要添加Header参数的接口需要每次都重新编写.当然支持,下面带着大家配…

Hikyuu 1.3.0 发布,高性能量化交易研究框架

Hikyuu 是一款基于 C/Python 的高性能开源量化交易研究框架,用于快速策略分析及回测。与其他量化平台或回测软件相比,具备: 超快的回测速度;对完整的系统交易理念进行抽象,并分解为不同的组件,通过重用不同…

Redis被攻击纪实

一、前言 声明:本文仅供技术交流使用,严禁采用本文的方法进行任何非法活动。 上周新来的同事分享Redis的原理和机制,想起2017年的时候测试环境Redis被攻击,最后只能重新安装服务器,今天试验一把利用Redis漏洞进行攻击…

Hybrid综合应用

1、需求 实现不同vlan间PC不可互访,而不同vlan的PC均可访问服务器的特殊效果,具体要求如下。 1)在交换机中创建相关vlan 2)修改端口模式与pvid 3)修改端口允许通过的数据帧 4)结果验证,vlan5与…

docker搭建mysql环境

1. 基础环境 名称描述CentOS 7.6Linux操作系统版本docker 20.10.5docker版本mysql 8.0.29mysql镜像版本 2. 下载安装 使用docker命令下载mysql镜像 [rootzhouwei ~]# docker pull mysql:8.0.29查看docker仓库是否已经下载了mysql镜像 [rootzhouwei ~]# docker images将mys…

一体化HIS医疗信息管理系统源码:云HIS、云电子病历、云LIS

基于云计算技术的B/S架构的HIS系统,为医疗机构提供标准化的、信息化的、可共享的医疗信息管理系统,实现医患事务管理和临床诊疗管理等标准医疗管理信息系统的功能。系统利用云计算平台的技术优势,建立统一的云HIS、云病历、云LIS,…

Android:OkHttp同步请求和异步请求

一、前言 网络请求之前工作中用到的是post请求,然后了解之后发现请求的种类还有很多种。下面着重讲到是get和post的同步请求和异步请求。 二、具体内容 1.Okhttp的特点: 支持Http/2并允许对同一主机的所有请求共享一套接字;如果非HTTP/2&…

jenkins2

jenkins插件管理安装:docker-build jenkins安装了docker 配置docke builder 添加 unix:///var/run/docker.sock rootubuntu20:~# usermod -G docker jenkins 修改docker中service文件添加 -H tcp://0.0.0.0:2376 jenkins中系统管理中 tcp://localhost:2376

不同规模的企业如何借助宁盾LDAP统一用户认证实现安全和效率需求?

中小企业要解决安全和业务效率问题,须提前规划软件基础设施,其中最基础的部分是建立统一账号和统一用户身份认证体系。这个体系相当于在软件系统之间建立了一套统一的身份标准,基于这套标准创建的账号让员工方便、高效地访问公司内的大部分软…

项目文件下载器,基于Thread多线程

目录 1、Http 工具类 2、关于下载的关系类 2.1 展示下载信息 #下载信息展现线程类 #在主下载类中,进行调用上述线程类 2.2 文件的分块下载 #文件分块下载类 #文件按分块进行分别切分的方法 # 使用 LongAdder 类型,更改 DownLoadInfoThread 展现…

clang插件对llvm源码插桩,分析函数调用日志(1)

tick_plot__compile.ipynb 时长边界_时上链异数: 长短函数调用链列表 0. 用matplotlib找系统中字体文件大于1MB的 中文字体通常很大,这样过滤出的 通常有中文字体 结果中 看名字 ‘AR PL UMing CN’ 果然是中文字体 from matplotlib.font_manager import fontManag…

网页制作-引入icon

1.如何引入icon 1.1 进入https://www.iconfont.cn/ 1.2 登录或者注册一下 1.3 在搜索框输入你想搜索的内容 1.4 加入购物车 1.5 在购物车中点击下载代码 1.6 若是普通的html项目,则至需要将如下两个拷贝到你的项目中 1.7 在你需要的网页中引入iconfont.css就可以使…

教你解决msvcp140.dll丢失方法,全面分析msvcp140.dll丢失原因

msvcp140.dll是一个Microsoft Visual C库文件,主要用于支持C应用程序的运行。当找不到msvcp140.dll时,可能导致程序无法正常执行。下面是五个解决方法以及msvcp140.dll丢失的原因介绍: 一、msvcp140.dll丢失的原因: 系统故障&am…

Android T窗口动画添加移除流程(更新中)

APP侧窗口动画demo 如何创建一个窗口动画?我们通过先从APP创建一个窗口,以这个窗口的创建过程的窗口动画为例 这个demo就是点击BUTTON显示窗口,点击CLOSE WINDOW关闭窗口,下面简述关键代码 //定义WindowManager和LayoutParams…