这边会出针对APM32F035电机应用控制的系列专题,重点围绕该款芯片从芯片性能、外设资源、硬件电路设计、软件架构开发、电机控制算法实现、应用方案等多层次依次开展介绍。
本篇将开展第一的篇章,初识APM32F035,从芯片功能及外设的简介、时钟树的配置介绍,部分外设的优势。
1.1 芯片功能及外设简介
APM32F035是一款基于Arm Cortex-M0+内核,集成FOC算法中常用的数**算加速器(Cordic,Svpwm,硬件除法器等),并且集成了运放、比较器等模拟外设,以及CAN控制器的高性能电机控制专用MCU。如下图所示。详细内容可以查阅芯片用户手册。
1.2时钟树的配置介绍
时钟系统可以大致分为以下几个部分:
时钟源:APM32F035有多个时钟源,包括:
内部高速时钟(HSI):一个内部的8 MHz RC振荡器。
外部高速时钟(HSE):可以连接到外部晶体振荡器或谐振器,频率范围通常在4 MHz到32 MHz。
内部低速时钟(LSI):一个内部的约40 kHz RC振荡器,用于看门狗和实时时钟(RTC)。
外部低速时钟(LSE):可以连接到一个外部32.768 kHz晶体,主要用于RTC。
系统时钟(SYSCLK):这是微控制器核心的主要时钟源,它可以选择HSI、HSE或PLL(相位锁定环路)作为源。
PLL(相位锁定环路):PLL可以将HSI或HSE的频率乘以一个因子,以生成更高的系统时钟频率。核心细节:使用HIS最高只能配置到64MHz,而使用HSE最高可以配置到72MHz。
时钟分频器和选择器:不同的外设和总线可以选择不同的时钟源,并可以通过分频器来降低时钟频率。例如:
AHB总线时钟(HCLK):可以从SYSCLK直接获取时钟,或者通过一个可配置的分频器。
APB总线时钟(PCLK):可以从HCLK直接获取时钟,或者通过一个可配置的分频器。
ADC时钟:可以选择来自于PCLK或其他时钟源,并且可以通过分频器来降低频率。
1.3部分外设的优势
1.3.1 高级定时器TMR1
16位高级定时器,支持多种输出模式,专为电机控制PWM调制设计,最多可以输出4对互补PWM,可覆盖磁阻电机控制、步进电机驱动等;
支持和ADC模块联动,可以单周期多次触发ADC,实现单电阻采样的硬件支持;
硬件关断Break,具有滤波功能,避免干扰,且可以和内部比较器联动,减少外围器件及走线。
1.3.2 内置32位通用定时器TIMER2
支持编码器和多种信号测试捕获模式,简化编码器应用;
32位计数器,可以大大提高编码器读取精度;
内置滤波器,有效降低信号干扰。
1.3.3 内部集成独立运放模块
独立4运放模块,支持各种电机控制场景使用;
支持内部增益和外部增益,使用外部增益支持差分输入;
增益一致性可达1%,确保电机相电流精确重构。
1.3.4内置硬件加速协处理器(M0CP)
32bit/32bit除法器:支持有符号和无符号计算,可以单独得到商和余数,最少计算耗时10 clocks;
CORDIC:支持旋转模式和向量模式,其中旋转模式可进行sin/cos计算,向量模式可用来进行求开平方及反正切,其中反正切结果范围为-pi~pi,最少计算耗时12 clocks;
SVPWM:支持5段式/7段式调制计算,最少计算耗时 6 clocks 。
|