首页 > 其他分享 >STM32H743 ADC+DMA

STM32H743 ADC+DMA

时间:2024-06-05 15:55:19浏览次数:8  
标签:DMA HAL BUFFER STM32H743 ADC DATA hadc1

1.** STM32CubeMX 配置如下:**
ADC:
配置通道

配置ADC的工作模式,这里用到了DMA

使用ADC中断

DMA2的通道4对应ADC2

GPIO的配置,没有配置上下拉

  1. DMA配置:

  2. 用STM32H743用DMA传输ADC的数据会有一个需要注意的点,需要将传输数据的buf配置在固定的某一段RAM中。
    #define ADC_CONVERTED_DATA_BUFFER_SIZE1 ((uint32_t) 7)
    uint16_t ADC_DATA1[ADC_CONVERTED_DATA_BUFFER_SIZE1] __attribute__((section(".ARM.__at_0x24000000")));

  3. 实际在读取多通道ADC数据的时候,需要注意要读两次,保留第二次的数据。

    HAL_ADC_Start_DMA(&hadc1,(uint32_t *)ADC_DATA1,ADC_CONVERTED_DATA_BUFFER_SIZE1);
    delay_US(50);
    HAL_ADC_Stop_DMA(&hadc1);

    HAL_ADC_Start_DMA(&hadc1,(uint32_t *)ADC_DATA2,ADC_CONVERTED_DATA_BUFFER_SIZE1);
    delay_US(50);
    HAL_ADC_Stop_DMA(&hadc1);
    temp[0] = ADC_DATA2[0];
    return temp[0];

标签:DMA,HAL,BUFFER,STM32H743,ADC,DATA,hadc1
From: https://www.cnblogs.com/cxw1996/p/18233191

相关文章

  • 需要帮助对 shadcn/ui 中的选择进行单元测试
    我有一个React组件,我在其中使用了shadcn/ui,具体而言,在本例中使用了Select:<divclassName='flex-1gt<divclassName='flex-1'>;<FormFieldcontrol={form.control}name='clientType......
  • STM32——ADC篇(ADC的使用)
    一、ADC的介绍 1.1什么是ADC        ADC(Analogto-DigitalConverter)模拟数字转换器,是将模拟信号转换成数字信号的一种外设。比如某一个电阻两端的是一个模拟信号,单片机无法直接采集,此时需要ADC先将短租两端的电压这个模拟信号转化成数字信号,单片机才能够进行处理。......
  • STC8H2K系列采用ADC功能实现轻触感应按键(无需电阻电容二极管)
    有感于8H2K系列不自带触摸控制器按键功能(8H4K,8H8K自带),如果要实现这个功能需要使用官方建议的两个IO口(一个PWM另一个ADC)还有一堆外围元器件(电阻电容二极管),这样的设计确实繁琐而且累赘,占用空间也大(如果有这空间我也不会选8H2K)。参考了另一个网友设计,线路减少到一个电容一个电阻,......
  • stm32L431使用SPI+DMA
    stm32L431使用SPI+DMA1.配置SPI和DMA1.1使用hal库配置(stmcubmax)配置可以按选择配置MOSI单线只发送数据则配置TransmitOnlyMasterMOSI,MISO双线配置Full-DuplexMaster1.2配置DMA​ 如1.1图所示我配置的是只发送数据模式!DMA配置模式Normal,地址增长Memory,数据......
  • 51单片机AD转换(ADC0808)
    ADC0808是CMOS单片型逐次逼近式A/D转换器,它有8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器。将参考电压输出成0~255引脚ADC0808芯片有28条引脚,采用双列直插式封装。各引脚功能如下:1~5和26~28(IN0~IN7):8路模拟量输入端。8、14、15和17~21(out1~out8):8位数字量输......
  • Navicat, PDManer,PyMySQL模块,SQL注入问题,PyMySQL进阶之主动提交事务
    ⅠNavicat【一】Navicat介绍Navicat可以充当很多数据库软件的客户端提供了图形化界面能够让我们更加快速的操作数据库【1】介绍Navicat是一款功能强大且广泛使用的数据库管理工具,可用于连接和管理多种数据库系统,如MySQL、MariaDB、Oracle、PostgreSQL等。本文将详细......
  • ch58x/ch59xADC差分采样NTC电阻获取当前温度
    前言:之前的文章中也有关于使用I2C器件进行温度的采集的文章采集温度的方式不止使用传感器,也可以使用NTC温敏电阻进行采集,此方法的外围电路较为简单切成本较低,代码也较为容易实现。实现原理:先通过差分采样电路进行采集,采集之后可以获取NTC或者定值电阻的电压;已知这些信息可以通过......
  • WCDMA LTE FDD TDD 区别
     首先,这四种都是移动网络通讯的标准 WCDMAWCDMA是一种让手机可以更快上网和打电话的技术。它有几个关键特点:宽带:就像一条很宽的高速公路,可以让更多的数据(信息)同时通过。这意味着你上网、看视频或者下载东西的速度会更快。码分多址:这是WCDMA的一种特殊技术,让很多人可以同......
  • VMware转免费后的官方正版下载安装教程(注册BRADCOM)
    最近下载VMware发现点击下载会跳转到一个注册界面,记得原来下载的时候没有过,了解过后得知是VMware被博通收购后转免费了,现在想要下载VMware必须要先注册一个博通账号。转免费后下载变得麻烦很多,不仅要注册账号,还要在BRADCOM自己的界面下载VMware,本文章用于解决BRADCOM界面找不......
  • 玩转STM32-直接存储器DMA(详细-慢工出细活)
    文章目录一、DMA介绍1.1DMA简介1.2DMA结构二、DMA相关寄存器(了解)三、DMA的工作过程(掌握)四、DMA应用实例4.1DMA常用库函数4.2实例程序一、DMA介绍1.1DMA简介DMA用来提供外设与外设之间、外设与存储器之间、存储器与存储器之间的高速数据传输,无需CPU干预,数据可......