STM32F4的关键要点分析

news2024/11/25 2:28:49

1.

从以上截图信息可以看出:

        1.当外设数据宽度和内存数据宽度不相等时,要传输的数据项数目的数据宽度由外设数据宽度确定;

        2.在直接模式下(不使用FIFO),不能进行数据的封装/解封,且源数据宽度和目标数据宽度必须相等,且等于外设数据宽度(实际上此时内存数据宽度无效)

2.

即当PSIZE小于MSIZE时,NDTR必须是(MSIZE/PSIZE)的整数倍,很好理解,因为此时要传输的数据项数目的数据宽度由PSIZE确定,假设PSIZE是8位而MSIZE是16位,然后此时NDTR是9的话,就表示总共只需要传输9字节的数据,那对于memory那边来说的话就会少一个字节。

3.

         1.突发传输的意思就是每个DMA请求传输多少次,比如DMA_PeripheralBurst_INC4(外设突发4次传输)则表示每个DMA请求传输4次,每次的数据大小由PSIZE决定;突发传输的数据会暂存在FIFO中;

        2.在直接模式下(不使用FIFO)突发传输的配置无效,只能进行单次传输;

        3.如果使用了突发传输,则相应的字节对齐要倍乘,如PSIZE为字节的话,对于单次传输传输地址只需要4字节对齐就行,如果是突发4次传输,则需要16字节对齐;

        4.如果内存地址不递增,则内存突发传输位应该为0;如果外设地址不递增,则外设突发传输位应该为0;

4.总结:FIFO的作用

        1.用于PSIZE和MZISE不同时作数据的封装/解封;

        2.用于配置了突发传输时暂存数据用;

        所以,当FIFO关闭时候,不能做数据的封装/解封,PSIZE和MSIZE也就需要一样;并且不能配置为突发传输(硬件强制为单次传输);

5.突发大小与数据大小的乘积不得大于FIFO大小(FIFO的最大大小为4字),即若突发大小是4,数据大小是字,那么此时应该开启全部的FIFO;若数据大小是半字,则应该开启至少1/2的FIFO;

6.貌似只有SDIO外设能够向DMA发出结束传输指令;

7.每次DMA传输最多只能传65535个数据项(注意不是字节),所以每次最多可以传输65535*4字节的数据;

8.每个DMA下面有8个数据流,每个数据流下有8个通道;但是每个数据流同时只能配置为采集一个通道的数据;每个数据流都有4个优先级可配置,当两个优先级相同的数据流产生DMA请求时优先响应数据流号低的(如数据流2优先与数据流3);

9.当使能FIFO时,只有当存入FIFO的数据量达到FIFO的阈值级别时才会将数据传输到目标地址,如FIFO的阈值级别时1/2FIFO(2个字),则只有在存入FIFO的数据量达到8字节时才会触发DMA将数据传输到目标地址;

 10.在传输方向为存储器到存储器时,使用的是DMA流控,由软件触发DMA传输,每次传输的字节数由NDTR和PSIZE决定(NDTR*PSIZE);这种模式必须使用FIFO,并且只有DMA2能够使用这种模式;此时拷贝的源地址应该写到外设地址寄存器处,目的地址写到内存地址寄存器处。

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

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

相关文章

Docker-Docker安装nginx

目录 一,容器之间的相互通信 ping 1.1 两个容器在同一网段 1.2 两个容器在不同网段 二,安装Nginx 2.1 nginx是什么 安装步骤 2.4 部署前端项目 上传项目 步骤 一,容器之间的相互通信 ping 1.1 两个容器在同一网段 1.2 两个容器在不同网段…

旋转机械 | 基于ANSYS WB平台的滑动轴承分析工具(一)

导读:本文主要针对Tribo-X inside ANSYS的功能及各方向应用实例进行介绍,限于篇幅关系会分五篇进行介绍,第一篇主要结合软件的需求、理论、功能及应用方向进行介绍,第二篇至第五篇将结合具体应用方向的示例进行介绍。本篇为第一篇…

软件测试工程师的简历项目经验该怎么写?

想要找一份高薪的软件测试工作,简历项目必不可少(即使是应届生,你也要写上实习项目)。所以很多自学的朋友找工作时会碰到一个令人颇感绝望的拦路虎:个人并没有实际的项目工作经验怎么办? 怎么办&#xff1…

【PS】画笔工具

目录 画直线 拾取颜色 改变画笔大小 改变画笔硬度 不透明度 流量 画笔预设 自定义图片做笔刷 工具预设 画笔面板 画直线 Shift键可画出直线只用点两个点就画出直线:先点一个点,按住shift,再在别处点一点,这时候直线就形…

Python 中如何使用pybind11调用C++

Python 中如何使用pybind11调用C1. pybind11简介与环境安装2. 求和函数3. STL和python内建数据类型的对应关系3.1 **返回vector**3.2 **返回struct**4. pybind11与numpy图像数据接口和速度对比:以图像rgb转化为gray的例子Reference: 混合编程:如何用pyb…

银联卡8583协议小额免密免签交易总结

之前做过金融支付这块儿。到过北京石景山区银行卡检测中心过检PBOC的level2认证,去过上海银联总部和湖南银联对接银联卡和扫码支付。对金融支付和卡交易这块儿熟悉。现在这块儿知识用不上了总结下留作备忘,同时分享给有需要的人。 关于免密免…

【云原生 | Kubernetes 实战】12、K8s 四层代理 Service 入门到企业实战应用(下)

目录 一、创建 Service:type 类型是 NodePort 1.1 创建一个 pod 资源 1.2 创建 service,代理 pod 在集群外访问 service: 数据转发流程: 二、创建 Service:type 类型是 ExternalName 2.1 创建 pod 2.2 创建…

相关数据库

h2 需要用以下 初始化一下 第一次启动需要加入下面代码 h2 创建表 可以直接用jdbc 然后进行测试 不需要链接mysql redis 想要启动redis 现在 该目录下 输入俩个cmd 一个cmd 输入redis-cli 到启动太 输入 shutdown 然后再另一个cmd 输入 redis-server.exe redis.windows.con…

如何利用电商模式,灵活结合当地产品生态全力助农,实现乡村振兴

随着互联网时代的发展,人们的消费观念和消费习惯逐渐被改变,绿色环保观念深入人心,人们加大了对农产品的高要求和高需求,同时,近年来国家对农业的重视和政策支持,促进了农产品电商的蓬勃发展,已…

YOLOV7学习记录之原理+代码介绍

博主计划做一个目标检测跟踪项目,考虑使用YOLO系列模型来作为目标检测器,如今YOLO项目已经更新到了YOLOV7版本,因此便来学习一下相关原理,完成相关实验工作。 论文链接:https://arxiv.org/abs/2207.02696 网络结构 YO…

【字节码】Java Instrumentation 简介 以及 ASM 组合案例

1.概述 本文来自:深入理解JVM字节码 并且对其进行补充。 2.Java Instrumentation简介 JDK从1.5版本开始引人了java.lang.instrument 包,开发者可以更方便的实现字节码增强。其核心功能由java.lang.instrument.Instrumentation 提供,这个接口的方法提供了注册类文件转换器…

python列表添加元素append(),extend(),insert(),+list的区别及说明

这篇文章主要介绍了python列表添加元素append(),extend(), insert(),list的区别及说明,具有很好的参考价值,希望对大家有所帮助。 列表添加元素append(),extend(),insert(),list区别 回忆初学python的时候,对列表list添加元素时&#xff0c…

[附源码]Nodejs计算机毕业设计基于web技术的米其林轮胎管理系统Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…

C# 程序的组织

一 程序的组织 ① 名字控件 程序的逻辑组织; ② 嵌套类型 类中嵌套类型; ③ 程序集 程序的物理组织; 二 名字空间 1 名字控件的概念 逻辑划分;避免名字冲突; 2 名字空间的声明 namespace xxx.xxxxx{} 可嵌套 3 …

Jmeter 性能测试之阶梯式场景、波浪式场景

推荐阅读: [内部资源] 想拿年薪30W的软件测试人员,这份资料必须领取~ Python自动化测试全栈性能测试全栈,挑战年薪40W 1 阶梯式场景(负载测试) 该场景主要应用在负载测试里面,通过设定一定的并发线程数…

云游戏拉开产业化大幕

配图来自Canva可画 在过去十多年间,音乐和视频已经完成了线下存储到线上串流的变迁,VCD、CD、MP3也早已成为有历史记忆的收藏品,然而游戏业的“革命”——云游戏行业才刚刚开始。 尤其是随着5G和边缘计算的发展,更高的带宽、更低…

cubeIDE开发, 定时器TIM与外部中断NVIC实践案例

一、定时器功能 1.1 定时器分类 STM32 的定时器分为高级定时器、 通用定时器 、基本定时器三种。 这三个定时器成上下级的关系,即基本定时器有的功能通用定时器都有,而且还增加了向下、向上/向下计数器、PWM生成、输出比较、输入捕获等功能;而…

高并发编程之多线程锁和CallableFuture 接口

5 多线程锁 5.1 锁的八个问题演示 package com.xingchen.sync;import java.util.concurrent.TimeUnit;class Phone {public static synchronized void sendSMS() throws Exception {//停留4秒TimeUnit.SECONDS.sleep(4);System.out.println("------sendSMS");}publ…

AXI协议规范超详细中文总结版

link AXI协议规范中文翻译版 来源:https://github.com/lizhirui/AXI_spec_chinese 综述 本文参考分析整理总结了AMBA AXI and ACE Protocol Specification文档的AXI总线协议规范部分,错误之处欢迎指出。 AMBA AXI协议支持高性能高频的系统设计&#xff0…

【视觉高级篇】25 # 如何用法线贴图模拟真实物体表面

说明 【跟月影学可视化】学习笔记。 什么是法线贴图? 法线贴图就是在原物体的凹凸表面的每个点上均作法线,通过RGB颜色通道来标记法线的方向,你可以把它理解成与原凹凸表面平行的另一个不同的表面,但实际上它又只是一个光滑的平…