当前位置: 首页 > article >正文

STM32单片机学习记录(1.17)

一、STM32

        10.3 - I2C通信外设

                1. I2C外设简介

                (1)STM32内部集成了硬件I2C收发电路,可以由硬件自动执行时钟生成、起始终止条件生成、应答位收发、数据收发等功能,减轻CPU的负担;

                (2)支持多主机模型、7位/10位地址模式和不同的通讯速度,标准速度(高达100 kHz),快速(高达400 kHz);

                (3)支持DMA,兼容SMBus协议;

                (4)串口同时支持软件模拟和硬件模拟器自动触发,对于串口异步时序,几乎全由硬件实现。对于I2C的同步时序,软件实现则更加灵活简单。

                2. SMBus协议

                (1)SMBus(System Management Bus)协议是一种用于计算机系统内部设备管理的串行通信协议,是基于I2C协议,但进行了扩展和标准化,以满足系统管理的特定需求;

                (2)起始条件:当SCL线为高电平时,SDA线从高电平变为低电平,表示通信开始;

                (3)数据传输:数据在SCL的每个时钟周期内传输一个字节,数据位在SCL的上升沿被采样,SDA线上的数据在SCL的下降沿变化;

                (4)应答位:每个数据字节后,接收设备发送一个应答位(ACK)或非应答位(NACK),表示数据是否正确接收;

                (5)停止条件:当SCL线为高电平时,SDA线从低电平变为高电平,表示通信结束。

                3. SMBus与I2C的区别

                (1)速度:SMBus的速度通常为10kHz到100kHz,而I2C的速度可以高达400kHz(快速模式)或3.4MHz(高速模式);

                (2)数据包格式:SMBus的数据包格式更加严格,包括起始条件、地址字节、数据字节、应答位和停止条件,而I2C的数据包格式相对灵活;

                (3)设备地址:SMBus的设备地址范围是0x00到0x7F,而I2C的设备地址范围是0x00到0x7F(7位地址)或0x0000到0x7FFF(10位地址);

                (4)应答机制:SMBus的应答机制更加严格,每个数据字节后都有一个应答位,而I2C的应答机制相对灵活。

                4. I2C基本结构

        10.4 - 硬件I2C读写MPU6050

                1. I2C在Keil 5中的初始化设定

                (1)开启I2C外设和对应GPIO口的时钟;

                (2)把I2C外设对应的GPIO口初始化为复用开漏模式;

                (3)使用结构体,对整个I2C进行配置;

                (4)I2C_Cmd,使能I2C

                2. 基础函数

                (1)l2C_GenerateSTART:生成起始条件;

                (2)I2C_ModeI2C模式;

                (3)I2C_ClockSpeed:配置时钟速度;

                (4)I2C_DutyCycle:时钟占空比;

                (5)I2C_Ack:配置寄存器ACK位;

                (6)I2C_AcknowledgedAddress:响应几位的地址(7位/10位);

                (7)I2C_OwnAddress1:指定STM32的自身地址。

二、空气动力学

        第一章、空气动力学引述

                4、空气对物体的力:

                (1)压力(Pressure):沿物体法线方向;

                (2)剪切力(Share Stress):沿物体切线方向;

                在对各点以上的力微积分求合力之后得到空气中物体所受的力。

                5、空气动力R(Resultant)

                (1)升力L(Lift):水平分力;

                (2)阻力D(Drag):竖直分力;

                这里的水平与竖直对应的是自由来流的方向。以上成为风轴系。

                如果一直迎角(即翼弦与自由来流的夹角),则可以求出:

                (1)法向力N(Normal):沿机翼方向(默认向上是正);

                (2)轴向力A(Axial):垂直于机翼方向。这称为体轴系。

                6、力矩M(Moment):通常求空气动力对机翼的前缘或者后缘产生的力矩:力×力臂;

                (1)若力矩使物体:抬头则为正,低头则为负;

                (2)力矩计算要有参考点,LE:前缘,TE:后缘。


http://www.kler.cn/a/512891.html

相关文章:

  • HTML语言的计算机基础
  • 逆波兰表达式求值(力扣150)
  • systemverilog中的force,release和assign
  • html,css,js的粒子效果
  • HTML<img>标签
  • C语言内存之旅:从静态到动态的跨越
  • Failed to load API definition
  • vue 如何判断每次进入都会刷新页面
  • 【WPF】WPF设置自定义皮肤主题
  • 数据结构初 - 链表
  • 第01章 11 分别使用DCMTK和gdcm库,解析DICOM文件系列的dicom标准数据信息
  • SpringBoot 搭建 SSE
  • Numpy基础01(Jupyter基本用法/Ndarray创建与基本操作)
  • vue.draggable 拖拽
  • 2025年国产化推进.NET跨平台应用框架推荐
  • MyBatis操作数据库(入门)
  • 【Java实现导出Excel使用EasyExcel快速实现数据下载到Excel功能】
  • Qt之QDjango-db的简单使用
  • 三格电子——MODBUS TCP 转 CANOpen 协议网关
  • 网络通信---MCU移植LWIP
  • 从零开始:使用 Brain.js 创建你的第一个神经网络(一)
  • Redis - 通用命令
  • Spring Boot 整合 PageHelper 实现分页功能
  • 线程池遇到未处理的异常会崩溃吗?
  • Redis的Windows版本安装以及可视化工具
  • PHP代码审计学习01