资源简介
对两路信号进行ADC同时采样。由于一路信号将作为参考信号解调另一路信号,所以要确保两路信号的每次采样是同时进行的。所以,需要将ADC设置成“多重ADC模式”中的“规则同时模式”下的“双重ADC模式”(ADC_DualMode_RegSimult)。由于待采样的信号心率范围不确定,但是又要求每次采样之间的时间间隔较为精确,故需要ADC采样率可调但是又不能简单的使用delay()函数,所以要求ADC的每次转换由定时器触发(ADC_ExternalTrigConvEdge_Rising)。
资源参考:https://blog.csdn.net/kai73/article/details/86763320

代码片段和文件信息
/**
******************************************************************************
* @file ADC/ADC_DualModeRegulSimu/main.c
* @author MCD Application Team
* @version V1.8.0
* @date 04-November-2016
* @brief Main program body
******************************************************************************
* @attention
*
* © COPYRIGHT 2016 STMicroelectronics
*
* Licensed under MCD-ST Liberty SW License Agreement V2 (the “License“);
* You may not use this file except in compliance with the License.
* You may obtain a copy of the License at:
*
* http://www.st.com/software_license_agreement_liberty_v2
*
* Unless required by applicable law or agreed to in writing software
* distributed under the License is distributed on an “AS IS“ BASIS
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
******************************************************************************
*/
/* Includes ------------------------------------------------------------------*/
#include “main.h“
/** @addtogroup STM32F4xx_StdPeriph_Examples
* @{
*/
/** @addtogroup ADC_DualModeRegulSimu
* @{
*/
/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
__IO uint16_t aADCDualConvertedValue[4];
/* Private function prototypes -----------------------------------------------*/
static void DMA_Config(void);
static void GPIO_Config(void);
static void ADC1_CH10_CH11_Config(void);
static void ADC2_CH11_CH12_Config(void);
/* Private functions ---------------------------------------------------------*/
/**
* @brief Main program
* @param None
* @retval None
*/
int main(void)
{
ADC_CommonInitTypeDef ADC_CommonInitStructure;
/*!< At this stage the microcontroller clock setting is already configured
this is done through SystemInit() function which is called from startup
files (startup_stm32f40_41xxx.s/startup_stm32f427_437xx.s/startup_stm32f429_439xx.s)
before to branch to application main.
To reconfigure the default setting of SystemInit() function refer to
system_stm32f4xx.c file
*/
/* Enable peripheral clocks *************************************************/
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_DMA2 ENABLE);
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC2 ENABLE);
/* DMA2 Stream0 channel0 configuration **************************************
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-02-05 20:50 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\
目录 0 2019-02-05 20:46 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\
文件 8160 2016-11-05 01:32 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\main.c
文件 2377 2016-11-05 01:32 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\main.h
文件 4515 2016-11-05 01:32 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\readme.txt
文件 35840 2016-11-05 01:32 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\simulation.xls
文件 4492 2016-11-05 01:32 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\stm32f4xx_conf.h
文件 4463 2016-11-05 01:32 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\stm32f4xx_it.c
文件 2207 2016-11-05 01:32 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\stm32f4xx_it.h
文件 29386 2016-11-05 01:32 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\ADC_DualModeRegulSimu\system_stm32f4xx.c
目录 0 2019-02-05 20:45 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\
目录 0 2019-02-05 20:45 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\CORE\
文件 109142 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\CORE\core_cm4.h
文件 22735 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\CORE\core_cm4_simd.h
文件 17146 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\CORE\core_cmFunc.h
文件 20513 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\CORE\core_cmInstr.h
文件 29605 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\CORE\startup_stm32f40_41xxx.s
目录 0 2019-02-05 20:45 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\
目录 0 2019-02-05 20:45 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\
文件 6924 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\misc.h
文件 32880 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_adc.h
文件 27318 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_can.h
文件 2416 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_crc.h
文件 14481 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_cryp.h
文件 14946 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_dac.h
文件 4296 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_dbgmcu.h
文件 12977 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_dcmi.h
文件 28882 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_dma.h
文件 19692 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_dma2d.h
文件 8012 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_exti.h
文件 24467 2016-04-15 22:03 stm32f407实现定时器3(Timer3)触发ADC双通道同时采样(ADC_DualMode_RegSimult)并在DMA中断读取每次转换的结果\myTest-20190203-dualADCandTimerTrigAndDMAinterrOk\FWLIB\inc\stm32f4xx_flash.h
............此处省略417个文件信息
相关资源
- stm32f407上的两个can发送和接收例程
- 基于STM32F4x9的LCD显示
- stm32F4+w5300
- FreeModbus_Slave+STM32F407+USART2代码亲测可
- STM32F407 串口配置 串口1~6 六串口同时
- STM32F407_6个串口同时使用的代码
- STM32F407实时时钟_DS1302实时时钟模块和
- STM32F429内部FLASH读写程序
- stm32f407读写flash的demo,基于正点原子
- STM32F4x7_ETH_LwIP_V1.0.0
- 基于STM32F407的视频采集与传输系统设
- W5500Test-20180314.7z
- STM32F407ZG_ESP8266例程
- Keil5下的STM32F407程序
- zw_OLED-STM32F4-IIC.zip
- USART基于hal库stm32f407串口通讯.rar
- STM32F4基于HAL库的LCD显示实验
- stm32f4+ov5640颜色识别.zip
- 完整的STM32F407_MODBUS通信工程代码。
- STM32指针式时钟工程项目
- stm32f4简易声音存储录放3秒存放
- stm32f407和摇杆制作的控制手柄代码
- STM32F407. 基于PID速度环的步进电机速度
- STM32F407 基于232或485的57&42;步进电机旋
- stm32f4 摄像头颜色识别
- 基于stm32F4的tcs3200程序
- stm32f4控制步进电机程序
- STM32F407与OV2640的二维码识别实验
- PCA9685驱动16舵机电机调速STM32F4代码
- stm32f407+ov5640颜色识别与追踪
评论
共有 条评论