STM32F103ZET6 之 ADC+TIM+DMA+USART 综合实验

本文介绍了如何在STM32F103ZET6上进行一个综合实验,利用TIM1触发ADC进行数据采集,通过DMA将数据传输到内存,并通过USART串口打印。实验目标包括验证ADC采样率与设置相符,以及理解DMA数据传输。实验中还涉及到DAC产生的10KHz正弦波,通过900KHz采样频率的ADC,计算出每个周期大约90个采样点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、实验目的

1)使用 TIM1 触发 ADC,ADC 采集的数据通过DMA 传至内存,然后通过串口打印出采集的数据;  

2)学会 DMA 传输数据并将数据进行保存;

3)验证ADC 的采样率与实际设置的是否相符。


2、硬件资源

1)指示灯

2)ADC

3)DMA

4)TIM

5)杜邦线


3、软件设计

void  Adc_Configuration(void)
{ 	
  DMA_InitTypeDef DMA_InitStructure;
  ADC_InitTypeDef	ADC_InitStructure;	
  GPIO_InitTypeDef GPIO_InitStructure; 

  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC	| RCC_APB2Periph_AFIO, ENABLE);	   
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_Init(GPIOC, &GPIO_InitStructure);
	
  /* Enable DMA1 clock */
  RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);
	
  DMA_DeInit(DMA1_Channel1);		          
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值