logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

ADC高速采样和转换(1):常见方案

问:对于stm32f而言,如何最大程度提高adc的采样和转换速度,以及提高da的输出响应速度?应用场景是stm32f4需要采集3个adc通道并且每个通道都要至少采集16次进行软件滤波,然后其中一个ad通道的采集值经过软件运算得到da输出值,给到da外设输出到外部,这里需要ad和da都要响应很快,整体耗时最好能控制在50us以内,请问有哪些方法。

文章图片
#stm32#arm开发#单片机
ADC高速采样和转换(2):数据搬运

DMA相对于软件搬运(尤其是中断方式)节省的时间,主要体现在CPU时间的解放*上。对于16次搬运:*软件中断:CPU花费。

文章图片
#stm32#arm开发#单片机
STM32:(0)上电启动之地址重映射

STM32内部有一个名为“内存地址重映射控制器”复位时,根据BOOT引脚状态生成硬件映射选择信号。通过地址总线切换逻辑,将零地址空间访问转发到目标物理存储区。目标存储区的物理地址被镜像到零地址空间,形成虚拟映射关系。地址重映射是STM32启动过程中的一个重要机制,它通过硬件根据BOOT引脚的状态将不同的存储器映射到0地址。在程序运行时,也可以根据需要通过SYSCFG寄存器改变映射关系。

文章图片
#stm32#嵌入式硬件#单片机
STM32:外部中断——AFIO、EXIT和NVIC

介绍提供了很多中断,方便用于监视各种事件分为内核级别的事件中断和外设级别的事件中断。

文章图片
#stm32#嵌入式硬件#单片机
上电启动过程:(1)概述流程

上电复位,复位脉宽至少20ns。上电复位或者外部手动拉低RST引脚造成的复位,都会使得外设和内核的寄存器都恢复成默认值。而内部看门狗复位,只复位内核寄存器的值,外设寄存器的值保持为原本的配置值。上电后,CPU先执行内部的出厂Bootloader程序,这个程序会只初始化自身代码需要的硬件外设,然后去读取Boot0和Boot1引脚,然后决定将0x0地址映射到哪一块区域:内部flash所在地址,还是内部

文章图片
#单片机#stm32#嵌入式硬件
调试工具链:(1)全流程概述

简单做个资料整理,还有很多东西没搞明白。

文章图片
#stm32#arm开发#单片机
内核、指令集和架构:【3】M0和M3

M0+在M0的基础上增加了硬件除法并优化了功耗,成为了非常受欢迎的超低功耗主力。M4则在M3基础上增加了DSP扩展和可选的FPU,面向信号处理应用。架构,它们共享核心的32位RISC设计理念和Thumb/Thumb-2指令集基础,但在支持的指令子集、性能、功能和扩展方面存在显著差异。ARM Cortex-M系列的内核(M0, M0+, M3, M4, M7, M23, M33, M55等)都基于。

文章图片
#arm开发#stm32
内核、指令集和架构:【1】三者的关系

指令集 (Instruction Set - IS / ISA):指令集是处理器(内核)能理解和执行的所有机器指令的集合及其规范。它定义了:有哪些指令可用(如ADDMOVLDRSTRBBL每条指令的具体功能(这条指令做什么操作)。每条指令的二进制编码格式(机器码长什么样)。指令操作的对象(寄存器、内存地址)。指令执行后对处理器状态(如标志寄存器)的影响。指令集是软硬件之间的契约,是编程模型(Pro

文章图片
#stm32#arm开发#单片机
内存分配基础:修改SCT文件的简单例子

一个简单例子,熟悉最基本的语法,有个初步的理解。

文章图片
#arm开发#stm32#单片机
技巧小结:外部总线访问FPGA寄存器

stm32的fsmc总线挂载fpga,stm32需要访问fpga内部寄存器。

文章图片
#stm32#arm开发#单片机
    共 20 条
  • 1
  • 2
  • 请选择