stm32f103 adc 锁相环
在STM32F103系列微控制器中,ADC(模数转换器)和锁相环(PLL)是两个重要的功能模块,它们在时钟配置和模拟信号采集中扮演关键角色。以下是它们的关系及配置要点:
1. ADC(模数转换器)
STM32F103的ADC模块是12位精度的逐次逼近型ADC,支持多通道输入(外部通道和内部通道,如温度传感器、VREFINT等)。关键配置点包括:
- 时钟源:ADC的时钟由APB2总线时钟分频得到,需确保ADC时钟 ≤ 14 MHz。
- 采样时间:可配置的采样周期(如1.5/7.5/13.5…个时钟周期),需根据信号源阻抗调整。
- 工作模式:单次转换、连续转换、扫描模式等。
- 校准:上电后需执行一次ADC校准(调用
HAL_ADCEx_Calibration_Start())。
2. 锁相环(PLL)
PLL用于将外部或内部时钟倍频,生成更高的系统时钟(SYSCLK)。STM32F103最大支持72 MHz系统时钟,典型配置如下:
- 时钟源选择:
- HSI(内部8 MHz RC振荡器)或HSE(外部晶振,如8 MHz)。
- 通过PLL倍频后作为SYSCLK。
- PLL配置示例:
- 若使用HSE(8 MHz外部晶振),PLL倍频因子设置为9,则系统时钟 = 8 MHz × 9 = 72 MHz。
- ADC与PLL的关系:
- ADC时钟来自APB2总线,而APB2时钟由SYSCLK分频得到(通常不分频,即APB2 = SYSCLK = 72 MHz)。
- 需对ADC时钟进行分频,确保其 ≤ 14 MHz。例如,若APB2为72 MHz,需设置ADC分频系数为6(72 MHz /6 = 12 MHz)。
3. 配置步骤(关键代码示例)
(1) 配置PLL和系统时钟(使用HAL库)
// 在SystemClock_Config()函数中:
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9; // HSE 8MHz × 9 = 72 MHz
HAL_RCC_OscConfig(&RCC_OscInitStruct);
// 设置APB2不分频(72 MHz)
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2);
(2) 配置ADC时钟
// 在ADC初始化中设置分频系数(确保ADC时钟 ≤ 14 MHz)
ADC_HandleTypeDef hadc;
hadc.Instance = ADC1;
hadc.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV6; // 72 MHz /6 = 12 MHz
hadc.Init.Resolution = ADC_RESOLUTION_12B;
HAL_ADC_Init(&hadc);
// 执行校准
HAL_ADCEx_Calibration_Start(&hadc);
4. 常见问题
- ADC采样不准确:检查时钟分频是否超限,或是否未执行校准。
- PLL配置失败:确保HSE/HSI已使能,且倍频因子未超过芯片限制。
- 多通道采样时序问题:在扫描模式下,需结合DMA或中断处理数据。
通过合理配置PLL和ADC时钟分频,可以在STM32F103中实现高精度模拟信号采集,同时充分发挥72 MHz系统时钟的性能。
学习STM32F103的ADC功能
三勺最近在学习STM32F103的ADC功能,居然连最简单的独立模式的单通道的电压采集都不能实现,这就不能忍了,这是对智商的侮辱。
2023-10-24 16:06:03
锁相环是如何实现倍频的?
锁相环是如何实现倍频的? 锁相环(Phase Locked Loop, PLL)是一种电路,用于稳定和恢复输入信号的相位和频率。它可以广泛应用于通信、计算机、音频等领域中。其中一个重要的应用就是
2023-09-02 14:59:37
GD32F103与STM32F103的区别 2021.6.2
GD32F103和STM32F103区别介绍关键词Key words:GD32F103、
资料下载
李杰
2021-12-08 11:06:03
采用STM32F103硬件ADC功能进行光照强度采集
光照强度采集ADC方式采集,STM32F103本身自带有硬件ADC功能。将采集到的数据实时刷新到屏幕上即可完成波形显示。
2022-05-31 11:32:52
STM32F4为什么有两个锁相环
目录一、时钟树示意图简介二、时钟①②③④+锁相环的介绍2.1 时钟①②③④的介绍2.2 锁相环(PLL)的介绍2.3 STM32F4为什么有两个
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- EDA是什么?有什么作用?
- dtmb信号覆盖城市查询
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 什么是场效应管?它的作用是什么?
- 如何进行编码器的正确接线?接线方法介绍
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- 苹果nfc功能怎么复制门禁卡
- 单片机和嵌入式的区别是什么
- amoled屏幕和oled区别
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 通讯隔离作用
- 苹果笔记本macbookpro18款与19款区别
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机
- 元宇宙概念龙头股一览