雅特力

简介

时钟是芯片正确高效运行的基础,正确的时钟配置是芯片能正确运行的必要条件,其重要性不言而喻。AT32各系列产品的时钟配置部分可能存在细微的差异和需要注意的事项,本文档就着重针对各系列的情况来详细介绍如何结合雅特力提供的V2.x.x的板级支持包(BSP)来配置时钟。

以下介绍时钟配置的方法主要分两种:

1、以手动编写代码调用BSP中提供的驱动函数接口来进行时钟配置。

2、采用时钟工具来配置并生成相应的源码文件。

时钟树

在进行时钟配置之前,应充分了解对应芯片的时钟树结构,这样在进行时钟配置时才会游刃有余。对于系统时钟频率及路径的配置我们需要关注时钟源、倍频及系统时钟部分。类似如下图:

1.png图1. 时钟框图

可由图中得到以下几个关键信息:

1) SCLKSEL:系统时钟可以由HEXT、PLLCLK、HICK三大时钟源提供。

2) HEXT:HEXT是外部高速时钟,其可以外接范围是4~25 MHz的晶振或时钟源。

3) HICK:HICK RC是内部高速振荡器,频率为48 MHz。HICK时钟由内部振荡器给出,但在初始情况下由HICKDIV控制并默认6分频后为8 MHz,亦可配置为不分频,保持48 MHz的频率。

4) PLLCLK:PLL时钟=PLL输入时钟*PLL倍频系数。

5) PLL输入时钟:PLL的输入时钟由PLLRCS及PLLHEXTDIV共同决定,其细分可分为三个来源:HICK 4MHz、HEXT和HEXTDIV,HEXTDIV由HEXT时钟2分频。

代码配置解析

以下将以库函数接口为核心来对时钟配置流程和方法进行说明。

函数接口

各系列产品对应提供的BSP中对硬件的时钟设置部分已封装好接口函数以供调用,以下罗列出时钟配置常用的函数接口,各函数的具体参数及返回值类型等请参考at32f425_crm.c/.h文件。

2.png

时钟配置流程

按常规应用来讲解时钟配置流程,其内容可大致分为如下步骤:

3.png

图2. 时钟配置流程图

复位(CRM Reset)

首先按规范流程应复位CRM配置参数,其主要是将系统时钟切换到HICK,其余的系统时钟配置寄存器写入默认值,待后续进行新配置参数的写入。函数调用的代码实现如下:

4.png

Flash等待周期(Set Flash Wait Cycle)

AT32F425片上采用的是嵌入式Flash,当运行在不同的主频下时需对应设定Flash等待周期。flash等待周期与运行主频关系如下:

5.png

函数调用的代码实现如下:

6.png

时钟源配置(Clock Source Configuration)

与系统时钟相关的高速时钟源主要包括HEXT和HICK,PLL也是使用以上时钟源来进行倍频。需要在配置使能PLL前将所使用的PLL参考时钟源开启并等待其稳定。

  • HEXT

外部高速时钟如采用外接有源时钟的方式时,可开启旁路模式来进行使用,采用晶振时,不能开启旁路模式,旁路模式应在外部高速时钟源使能前进行设定,其默认情况为关闭。旁路模式使能代码实现如下:

7.png

使能HEXT时钟源并等待HEXT时钟稳定,代码实现如下:

8.png

  • HICK

内部高速时钟是由芯片内部振荡器提供,使能HICK时钟源并等待HICK时钟稳定,代码实现如下:

9.png

PLL配置(PLL Configuration)

PLL配置主要包括:PLL时钟源、PLL倍频系数、PLL倍频频率范围等的设置。倍频时钟公式为:PLLCLK=PLL输入时钟*PLL倍频系数。

  • PLL时钟源

PLL时钟源细分有三个来源:1、HICK(4 MHz),2、HEXT,3、HEXT分频时钟,PLL时钟源应在PLL配置使能前开启并等待稳定。以上PLL时钟源在crm_pll_config函数中对应的参数定义如下:

10.png

当选择PLL时钟源为CRM_PLL_SOURCE_HEXT_DIV时,HEXT的分频系数默认为2分频。

  • PLL倍频系数

倍频系数为2~64倍可选,但应该注意最高主频限制,以此按实际情况来合适选择倍频系数,如8倍频使用参数CRM_PLL_MULT_8。

当PLL参数设置完成后,即可开启PLL并等待PLL稳定。示例:外部时钟晶振8 MHz,采用HEXT 2分频时钟作为PLL时钟源,PLLCLK倍频到96 MHz的代码实现如下:

11.png

总线分频(Set Bus Frequency Division)

总线分频包含SCLK到AHBCLK分频、AHBCLK到APB1CLK分频、AHBCLK到APB2CLK分频。AHB总线1分频、APB1/APB2总线1分频的代码实现如下:

12.png

切换系统时钟(Switch System Clock)

系统时钟来源主要有三个:HICK、HEXT、PLLCLK。在切换系统时钟到如上时钟源时应提前确保对应时钟源已稳定。

  • HICK系统时钟

内部高速时钟在系统复位重新运行时默认作为系统时钟,后期代码进行设定时,可有两种频率值来进行设定(8 MHz和48 MHz)。如图1所述HICK默认情况下用的是8 MHz,可配置为48 MHz。

HICK 8 MHz用作系统时钟的代码实现如下:

13.png

HICK 48 MHz用作系统时钟的代码实现如下:

14.png

  • HEXT系统时钟

外部高速时钟用作系统时钟时,其系统时钟频率以实际使用的外部时钟频率为准,范围为4~25 MHz。HEXT用作系统时钟的代码实现如下:

15.png

  • PLLCLK系统时钟

PLLCLK用作系统时钟时,其系统时钟频率以实际的PLL倍频结果为准。其最高频率应满足芯片规格为基础。PLLCLK用作系统时钟的代码实现如下:

16.png

更新核心频率(Update Core Frequency)

提供的BSP中,其代码框架内保留了一个表示系统核心频率的参数值system_core_clock,其保存的是CPU核心的运行频率值,应该在每次系统时钟配置完成后来进行更新。为的是在整个代码框架下,各外设驱动的频率配置能很快获取到当前核心运行频率值并使用。代码实现如下:

17.png

时钟配置示例

以下将以完整的时钟配置流程来进行说明,示例:由8 MHz外部时钟晶振作为时钟源,其2分频路径经PLL倍频到96 MHz并用做系统时钟,AHB采用1分频,APB1/APB2采用1分频。函数system_clock_config代码实现如下:

18.png

时钟工具

时钟配置工具是雅特力科技为方便对AT32系列MCU进行时钟配置而开发的一个图形化配置工具,其主旨是使用户清晰了解时钟路径和配置出期望的时钟频率并生成源码文件。

环境要求

  • 软件要求

需要Windows7及以上操作系统支持。

安装

  • 软件安装

本软件不需要安装,只需直接运行可执行程序AT32_New_Clock_Configuration.exe。

功能介绍

本章节将介绍此工具的基本操作,其主要的启动界面和配置界面如下所示

19.png

图3. 启动界面

20.png

图4. 配置界面

菜单栏

菜单栏内容如图所示:

21.png

图5. 菜单栏

  • “项目”(Project)菜单:

新建:新建时钟配置项目打开:打开已存在的配置项目保存:保存已打开的配置项目

  • “语言”(Language)菜单:

English:选择English作为显示语言简体中文:选择简体中文作为显示语言

  • “生成代码”(General code)菜单:

当在对应型号的操作配置界面将所期望的时钟路径和时钟频率配置完成之后,可点击“生成代码”菜单来选择源码文件的存储路径并生成相应的源码文件。

  • “帮助”(Help)菜单:

新版本下载:联网进行新版本下载版本:查看当前版本

新建配置项目

双击打开时钟配置工具,可看到图示的启动界面,可点击“项目”菜单-->“新建”,进行配置项目的新建,在新建配置项目的过程中需要对芯片的系列所属进行选择,操作方法如下图所示

22.png

图6. MCU选择界面

MCU系列的选择,可点击下拉框来进行选择,当选择好MCU后点击“确定”可进入到时钟配置界面。

配置界面的使用

配置界面主要用来进行时钟路径及参数的配置,以下的介绍将以AT32F425系列作为示例来展开进行,其余系列的配置方法与此类似。

整个配置界面主要可以分为四个大块,如下图所示

23.png

图7. 配置界面框架

1. 标题部分:用于展示当前配置项目所选择的MCU系列。

2. 配置部分:用于对时钟路径和时钟参数进行选择和配置,以达到期望的应用需求。

3. 输出部分:用于时钟输出(CLKOUT)的配置。

4. 在SCLK栏也可在选中PLL为系统时钟时作为输入框,可输入期望的系统时钟频率来反向自动配置出倍频参数。

5. 结果部分:用于显示当前外设所使用的时钟频率及总线上的外设。

接下来就着重介绍一下配置部分的使用。配置部分的流程界面是对应着MCU时钟树来进行的,各系列MCU的此部分可能存在着差异,但使用方式大同小异。时钟路径的配置可按流程对各开关进行点选来进行选择,配置部分如下图所示,将逐个流程点的功能及其注意事项进行介绍。

24.png

图8. 时钟配置框

1. ertc使能:ertc时钟代码配置的使能下拉框。

2. ertcsel:点选框,ertc时钟源选择。当ertc使能开启后,此点选框可配置。

3. lext bypass:外部低速时钟的旁路使能。

4. hext:此为输入框,8 MHz为所采用外部时钟源的默认频率,用户可根据实际使用的外部时钟源频率进行修改。(注:此8 MHz被修改为其他频率值时,对应的BSP中demo目录下的inc/at32f415_conf.h文件内的HEXT_VALUE宏定义也应该一致修改,也可以采用工具生成的at32f415_conf.h文件来进行使用)。

5. hext bypass:高速外部时钟的旁路使能。

6. pllhextdiv:点选框,当HEXT作为PLL时钟源时,可配置输入频率为HEXT分频或HEXT不分频。

7. pllrcs:点选框,可配置PLL时钟源为HEXT或HICK。

8. pll_mode:下拉框,可选择PLL的配置模式(normal或flexible)

9. 倍频系数:选择normal模式时使用PLL_MULT参数进行倍频,计算公式为:PLLCLK=PLL输入时钟*PLL_MULT,选择flexible模式时使用PLL_MS、PLL_NS和PLL_FR参数进行倍频,计算公式为:PLLCLK=PLL输入时钟/PLL_MS*PLL_NS/PLL_FR。为了用户的使用方便,在选定PLL输入时钟源后,结果部分的sclk框中输入目标时钟并按下键盘“Enter”键,会自动计算一组倍频参数以满足用户期望或相近的时钟频率sclk select:点选框,可配置HEXT、PLL或HICK作为系统时钟。

10. sclk select:点选框,可配置HEXT、PLL或HICK作为系统时钟。

11. sclk频率:当采用正向配置时,此作为系统时钟频率的配置结果显示,当将其用作输入框时,输入期望的频率后点击回车键,会根据此输入值反向计算一组合适的或最接近期望值的PLL配置参数。

12. hick to sclk:点选框,当sclk select选择HICK作为系统时钟时,可配置HICK的8 MHz或48MHz到系统时钟(注:当选择48 MHz HICK到系统时钟后,CLKOUT输出HICK时的频率也为48 MHz)。13. usbdiv:下拉框。当PLL时钟被选作为USB的时钟来源时,此处配置PLL时钟到USB时钟的分频系数。

14. USB使能:USB时钟代码配置的使能下拉框。

15. USB时钟频率的显示。此显示栏会实时计算USB时钟的频率并显示,如果配置出来的USB时钟不等于48 MHz时,显示出来的USB时钟频率会标注为红色,而实际应用中没有用到USB时选择disable则不会显示。(注:此部分只针对USB时钟频率的配置,USB外设时钟使能需自行额外打开)

生成代码

当时钟配置完成后,可点击生成代码,然后选择代码生成的路径并确认,最后会在所选目录下生成两个文件夹inc和src,源文件存放在src文件夹下,头文件存放在inc文件夹下。这些文件可结合到BSP_V2.x.x内的工程来进行使用。可以采用新生成的时钟代码文件(at32f4xx_clock.c/at32f4xx_clock.h/at32f4xx_conf.h)将原BSP demo中的对应文件替换,在main函数中进行system_clock_config函数调用即可。

注意事项

外部时钟源(HEXT)修改

因本文档所示例的demo和配置工具都默认采用的8 MHz外部时钟频率,当实际硬件使用的外部时钟源是非8 MHz频率时需注意以下几点。

  • 代码修改

1、以实际的外部时钟频率按文中时钟配置流程章节所描述的时钟配置流程及方法来编写相应的代码,配置出期望的时钟配置及时钟路径。

2、修改对应demo工程中at32f4xx_conf.h文件的HEXT_VALUE值,以实际使用的外部时钟源频率值来进行修改。如实际外部高速时钟使用12.288 MHz的晶振或时钟源时,at32f4xx_conf.h文件应修改如下:

25.png

  • 工具修改

1、在时钟配置工具中的HEXT输入框内填入外部时钟源实际频率值并按“Enter”键确认。

2、配置好所需的时钟路径及时钟频率,生成代码。采用新生成的时钟代码文件(at32f4xx_clock.c/at32f4xx_clock.h/ at32f4xx_conf.h)将原BSP demo中的对应文件替换或取其中函数内容进行替换,在main函数中进行system_clock_config函数调用即可。

工具使用

在使用本时钟配置工具时需注意:

1. 此工具生成的时钟配置源码文件需结合雅特力科技提供的BSP_V2.x.x进行使用。

2. 不同系列所生成的时钟配置源码文件不能型号混用,只能在相对应的工程项目中进行调用。

3. 配置工具中各输入框参数修改后,请以“Enter”键结束。

PS. 案例介绍可点击此处查看

来源:AT32 MCU 雅特力科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 16

随着工业自动化,智能家居及汽车电子的发展普及,直流无刷电机(BLDC)和永磁同步电机(PMSM)在诸多领域有了广泛应用。电机作为机械装备上至关重要的组件之一,无论是产品的性能,或是消费者的使用感受,都关乎于电机驱动和控制技术的好坏。

雅特力致力于建立高效电机控制生态系统,不仅有适用于电机控制的MCU,硬件开发套件,还提供有免费且易于使用的电机控制软件算法。从方波驱动到弦波驱动,从霍尔感测器的回授到无感测器的回授,雅特力都有建立起相关资源,协助电机控制工程师快速实现高效的电机矢量控制方案。

低压电机控制开发板

雅特力电机开发板是一个泛用型的低压三相电机驱动器,应用AT32系列微控制器搭配雅特力电机函数库,可驱动直流无刷电机、交流同步电机,以及异步电机。具备一个微控制器转接插座,可使用不同的AT32系列微控制器,执行电机控制算法。雅特力目前已提供基于双ADC引擎AT32F413的低压电机开发板和基于高速比较器AT32F421的低压电机开发板。

1.png

电机开发板设有霍尔信号接口与编码器接口,可回馈转子位置,进行有位置传感器的FOC控制驱动或六步方波驱动。提供剎车电阻接口,可应用于高动态响应控制时的动态剎车功能。具备三相输出端电压检测连接至ADC,以及虚拟中性点电路和比较器电路,可实现多种直流无刷电机(BLDC)六步方波无位置传感器驱动应用。并具备3个相电流检测电阻与1个直流地端母线电流检测电阻,可应用三电阻、两电阻电流检测,以及单电阻电流检测等三种电流检测方式。可执行有位置传感器与无位置传感器等磁场导向(field-oriented)向量控制法则(vector control algorithm)驱动三相交流电机,实现家用、商用以及工业等产品的电机控制应用技术。

2.png

开发板系统架构图在命令输入接口部分,除具有USB转UART界面、UART界面以及I2C接口外,并提供一个电位器模拟输入接口,可改变电位器电阻分压,输出电压命令由ADC读取。此外,有两个指拨开关以及一个按钮开关,可提供程序做控制模式设定,并提供5个LED指示灯,其中包含一个错误指示灯。

AT32电机函数库

雅特力针对电机开发提供了方便易用的AT32F413与AT32F421电机库,包含矢量控制电机库函数(mc_foc_library.lib)和6-step方波控制电机库函数(mc_bldc_library.lib),用户可根据电机控制方式选择电机库,两类电机库皆包含有传感器的控制函数以及无传感器的控制函数,注意在使用电机库时皆须调用初始设定相关函数以进行软件的初始设定。

电机库函数、使用者自定义函数与UI函数均建构于BSP之上,而用户自行撰写的控制程序则植基于电机库函数、用户自定义函数与UI函数之上。因此用户可以很方便地调用电机控制函数控制MCU硬件外设,实现电机控制程序。并可同时经由UI控制函数与外部个人计算机UI软件工具链接,传输实时的电机控制状态或实时改变控制参数与命令。

以下为一个电机控制工程中电机库应用函数与其它MCU基础函数(BSP)、UI通讯程序,以及用户撰写的控制函数与自定义函数之间的关系图。

3.png

电机库控制程序架构图

以下为电机库文档结构说明图。头文件提供设定MCU外设、控制形式、电机参数、控制板参数、控制器参数,相关的设定参数于mc_xxx_globals.c中的函数设定变数初值,MCU外设规划则由mc_hwoio.c文件执行相关外设初使化设定。

4.png

电机库文档结构说明图

雅特力在电机成本、可靠性等方面不断做出突破与改进,AT32F421、AT32F4212、AT32F413三款电机MCU搭配Cortex-M4内核和雅特力电机库算法,具有快速高效的算法能力和高性价比的价格优势,可满足电机控制在系统复杂性、实时性和智能化等方面日益严苛的要求。

来源:AT32 MCU 雅特力科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 7

简介

时钟是芯片正确高效运行的基础,正确的时钟配置是芯片能正确运行的必要条件,其重要性不言而喻。AT32各系列产品的时钟配置部分可能存在细微的差异和需要注意的事项,本文档就着重针对各系列的情况来详细介绍如何结合雅特力提供的V2.x.x的板级支持包(BSP)来配置时钟。

以下介绍时钟配置的方法主要分两种:

1、以手动编写代码调用BSP中提供的驱动函数接口来进行时钟配置。

2、采用时钟工具来配置并生成相应的源码文件。

时钟树

在进行时钟配置之前,应充分了解对应芯片的时钟树结构,这样在进行时钟配置时才会游刃有余。对于系统时钟频率及路径的配置我们需要关注时钟源、倍频及系统时钟部分。类似如下图:

1.png

图1. 时钟框图

可由图中得到以下几个关键信息:

1) SCLKSEL:系统时钟可以由HEXT、PLLCLK、HICK三大时钟源提供。

2) HEXT:HEXT是外部高速时钟,其可以外接范围是4~25 MHz的晶振或时钟源。

3) HICK:HICK RC是内部高速振荡器,频率为48 MHz。HICK时钟由内部振荡器给出,但在初始情况下由HICKDIV控制并默认6分频后为8 MHz,亦可配置为不分频,保持48 MHz的频率。

4) PLLCLK:PLL时钟=PLL输入时钟*PLL倍频系数。

5) PLL输入时钟:PLL的输入时钟由PLLRCS及PLLHEXTDIV共同决定,其细分可分为三个来源:HICK 4MHz、HEXT和HEXTDIV,HEXTDIV由HEXT时钟2分频。

代码配置解析

以下将以库函数接口为核心来对时钟配置流程和方法进行说明。

函数接口

各系列产品对应提供的BSP中对硬件的时钟设置部分已封装好接口函数以供调用,以下罗列出时钟配置常用的函数接口,各函数的具体参数及返回值类型等请参考at32f413_crm.c/.h文件。

2.png

时钟配置流程

按常规应用来讲解时钟配置流程,其内容可大致分为如下步骤:

3.png

图2. 时钟配置流程图

复位(CRM Reset)

首先按规范流程应复位CRM配置参数,其主要是将系统时钟切换到HICK,其余的系统时钟配置寄存器写入默认值,待后续进行新配置参数的写入。函数调用的代码实现如下:

4.png时钟源配置(Clock Source Configuration)

与系统时钟相关的高速时钟源主要包括HEXT和HICK,PLL也是使用以上时钟源来进行倍频。需要在配置使能PLL前将所使用的PLL参考时钟源开启并等待其稳定。

  • HEXT

外部高速时钟如采用外接有源时钟的方式时,可开启旁路模式来进行使用,采用晶振时,不能开启旁路模式,旁路模式应在外部高速时钟源使能前进行设定,其默认情况为关闭。旁路模式使能代码实现如下:

5.png

使能HEXT时钟源并等待HEXT时钟稳定,代码实现如下:

6.png

  • HICK

内部高速时钟是由芯片内部振荡器提供,使能HICK时钟源并等待HICK时钟稳定,代码实现如下:

7.png

PLL配置(PLL Configuration)

PLL配置主要包括:PLL时钟源、PLL倍频系数、PLL倍频频率范围等的设置。倍频时钟公式为:PLLCLK=PLL输入时钟*PLL倍频系数。

  • PLL时钟源

PLL时钟源细分有三个来源:1、HICK(4 MHz),2、HEXT,3、HEXT分频时钟,PLL时钟源应在PLL配置使能前开启并等待稳定。以上PLL时钟源在crm_pll_config函数中对应的参数定义如下:

8.png

当选择PLL时钟源为CRM_PLL_SOURCE_HEXT_DIV时,HEXT的分频系数默认为2分频。

  • PLL倍频系数

倍频系数为2~64倍可选,但应该注意最高主频限制,以此按实际情况来合适选择倍频系数,如8倍频使用参数CRM_PLL_MULT_8。

  • PLL频率范围

频率范围主要以倍频后的PLLCLK频率来做设定,其范围参数以72 MHz为界限设定,如下:

9.png

当PLL参数设置完成后,即可开启PLL并等待PLL稳定。示例:外部时钟晶振8 MHz,采用HEXT 2分频时钟作为PLL时钟源,PLLCLK倍频到192 MHz的代码实现如下:

10.png

总线分频(Set Bus Frequency Division)

总线分频包含SCLK到AHBCLK分频、AHBCLK到APB1CLK分频、AHBCLK到APB2CLK分频。AHB总线1分频、APB1/APB2总线2分频的代码实现如下:

11.png

切换系统时钟(Switch System Clock)

系统时钟来源主要有三个:HICK、HEXT、PLLCLK。在切换系统时钟到如上时钟源时应提前确保对应时钟源已稳定。

  • 顺滑模式

时钟顺滑模式是为了确保整个系统时钟切换过程的稳定而设计,当即将切换为系统时钟的目标时钟频率大于108 MHz时应开启时钟顺滑模式,所以其主要应用对象为PLLCLK用作系统时钟时的场景。

通常使用方法是在系统时钟切换前开始,切换成功后关闭。代码实现如下:

12.png

  • HICK系统时钟

内部高速时钟在系统复位重新运行时默认作为系统时钟,后期代码进行设定时,可有两种频率值来进行设定(8 MHz和48 MHz)。如图1所述HICK默认情况下用的是8 MHz,可配置为48 MHz。

HICK 8 MHz用作系统时钟的代码实现如下:

13.png

HICK 48 MHz用作系统时钟的代码实现如下:

14.png

  • HEXT系统时钟

外部高速时钟用作系统时钟时,其系统时钟频率以实际使用的外部时钟频率为准,范围为 4~25 MHz。HEXT用作系统时钟的代码实现如下:

15.png

  • PLLCLK系统时钟

PLLCLK用作系统时钟时,其系统时钟频率以实际的PLL倍频结果为准。其最高频率应满足芯片规格为基础。PLLCLK用作系统时钟的代码实现如下:

16.png


更新核心频率(Update Core Frequency)

提供的BSP中,其代码框架内保留了一个表示系统核心频率的参数值system_core_clock,其保存的是CPU核心的运行频率值,应该在每次系统时钟配置完成后来进行更新。为的是在整个代码框架下,各外设驱动的频率配置能很快获取到当前核心运行频率值并使用。代码实现如下:

17.png

时钟配置示例

以下将以完整的时钟配置流程来进行说明,示例:由8 MHz外部时钟晶振作为时钟源,其2分频路径经PLL倍频到192 MHz并用做系统时钟,AHB不分频,APB1/APB2采用2分频。函数system_clock_config代码实现如下:

18.png

时钟工具

时钟配置工具是雅特力科技为方便对AT32系列MCU进行时钟配置而开发的一个图形化配置工具,其主旨是使用户清晰了解时钟路径和配置出期望的时钟频率并生成源码文件。

环境要求

  • 软件要求

需要Windows7及以上操作系统支持。

安装

  • 软件安装

本软件不需要安装,只需直接运行可执行程序AT32_New_Clock_Configuration.exe。

功能介绍

本章节将介绍此工具的基本操作,其主要的启动界面和配置界面如下所示

19.png

图3. 启动界面

20.png

图4. 配置界面

菜单栏

菜单栏内容如图所示:

21.png

图5. 菜单栏

  • “项目”(Project)菜单:

新建:新建时钟配置项目打开:打开已存在的配置项目保存:保存已打开的配置项目

  • “语言”(Language)菜单:

English:选择English作为显示语言简体中文:选择简体中文作为显示语言

  • “生成代码”(General code)菜单:

当在对应型号的操作配置界面将所期望的时钟路径和时钟频率配置完成之后,可点击“生成代码”菜单来选择源码文件的存储路径并生成相应的源码文件。

  • “帮助”(Help)菜单:

新版本下载:联网进行新版本下载版本:查看当前版本

新建配置项目

双击打开时钟配置工具,可看到图示的启动界面,可点击“项目”菜单-->“新建”,进行配置项目的新建,在新建配置项目的过程中需要对芯片的系列所属进行选择,操作方法如下图所示

22.png

图6. MCU选择界面

MCU系列的选择,可点击下拉框来进行选择,当选择好MCU后点击“确定”可进入到时钟配置界面。

配置界面的使用

配置界面主要用来进行时钟路径及参数的配置,以下的介绍将以AT32F413系列作为示例来展开进行,其余系列的配置方法与此类似。

整个配置界面主要可以分为四个大块,如下图所示

23.png

图7. 配置界面框架

  1. 标题部分:用于展示当前配置项目所选择的MCU系列。

  2. 配置部分:用于对时钟路径和时钟参数进行选择和配置,以达到期望的应用需求。

  3. 输出部分:用于时钟输出(CLKOUT)的配置。

  4. 在SCLK栏也可在选中PLL为系统时钟时作为输入框,可输入期望的系统时钟频率来反向自动配置出倍频参数。

  5. 结果部分:用于显示当前外设所使用的时钟频率及总线上的外设。

接下来就着重介绍一下配置部分的使用。配置部分的流程界面是对应着MCU时钟树来进行的,各系列MCU的此部分可能存在着差异,但使用方式大同小异。时钟路径的配置可按流程对各开关进行点选来进行选择,配置部分如下图所示,将逐个流程点的功能及其注意事项进行介绍。

24.png

图8. 时钟配置框

1. rtc使能:rtc时钟代码配置的使能下拉框。

2. rtcsel:点选框,rtc时钟源选择。当rtc使能开启后,此点选框可配置。

3. lext bypass:外部低速时钟的旁路使能。

4. hext:此为输入框,8 MHz为所采用外部时钟源的默认频率,用户可根据实际使用的外部时钟源频率进行修改。(注:此8 MHz被修改为其他频率值时,对应的BSP中demo目录下的inc/at32f413_conf.h文件内的HEXT_VALUE宏定义也应该一致修改,也可以采用工具生成的at32f413_conf.h文件来进行使用)。

5. hext bypass:高速外部时钟的旁路使能。

6. pllhextdiv:点选框,当HEXT作为PLL时钟源时,可配置输入频率为HEXT分频或HEXT不分频。

7. pllrcs:点选框,可配置PLL时钟源为HEXT或HICK。

8. 倍频系数:使用PLL_MULT参数进行倍频,计算公式为:PLLCLK=PLL输入时钟*PLL_MULT。为了用户的使用方便,在选定PLL输入时钟源后,结果部分的sclk框中输入目标时钟并按下键盘“Enter”键,会自动计算一组倍频参数以满足用户期望或相近的时钟频率。

9. sclk select:点选框,可配置HEXT、PLL或HICK作为系统时钟。

10. sclk频率:当采用正向配置时,此作为系统时钟频率的配置结果显示,当将其用作输入框时,输入期望的频率后点击回车键,会根据此输入值反向计算一组合适的或最接近期望值的PLL配置参数。

11. hick to sclk:点选框,当sclk select选择HICK作为系统时钟时,可配置HICK的8 MHz或48 MHz到系统时钟(注:当选择48 MHz HICK到系统时钟后,CLKOUT输出HICK时的频率也为48 MHz)。

12. usbdiv:下拉框。当PLL时钟被选作为USB的时钟来源时,此处配置PLL时钟到USB时钟的分频系数。13. hick to usb:点选框,可配置USB时钟由PLL时钟或HICK 48 MHz提供,USB时钟配置代码由下拉框to usb来进行选择控制。因USB时钟需要的是固定48 MHz,所以在usbdiv可分频参数为前提下,PLL倍频出来的频率可能不满足USB 48 MHz的时钟需求。

14. USB使能:USB时钟代码配置的使能下拉框。

15. USB时钟频率的显示。此显示栏会实时计算USB时钟的频率并显示,如果配置出来的USB时钟不等于48 MHz时,显示出来的USB时钟频率会标注为红色,而实际应用中没有用到USB时选择disable则不会显示。(注:此部分只针对USB时钟频率的配置,USB外设时钟使能需自行额外打开)

生成代码

当时钟配置完成后,可点击生成代码,然后选择代码生成的路径并确认,最后会在所选目录下生成两个文件夹inc和src,源文件存放在src文件夹下,头文件存放在inc文件夹下。这些文件可结合到BSP_V2.x.x内的工程来进行使用。可以采用新生成的时钟代码文件(at32f4xx_clock.c/at32f4xx_clock.h/at32f4xx_conf.h)将原BSP demo中的对应文件替换,在main函数中进行system_clock_config函数调用即可。

注意事项

外部时钟源(HEXT)修改

因本文档所示例的demo和配置工具都默认采用的8 MHz外部时钟频率,当实际硬件使用的外部时钟源是非8 MHz频率时需注意以下几点。

  • 代码修改

1、以实际的外部时钟频率按文中时钟配置流程章节所描述的时钟配置流程及方法来编写相应的代码,配置出期望的时钟配置及时钟路径。

2、修改对应demo工程中at32f4xx_conf.h文件的HEXT_VALUE值,以实际使用的外部时钟源频率值来进行修改。如实际外部高速时钟使用12.288 MHz的晶振或时钟源时,at32f4xx_conf.h文件应修改如下:

25.png

  • 工具修改

1、在时钟配置工具中的HEXT输入框内填入外部时钟源实际频率值并按“Enter”键确认。

2、配置好所需的时钟路径及时钟频率,生成代码。采用新生成的时钟代码文件(at32f4xx_clock.c/at32f4xx_clock.h/at32f4xx_conf.h)将原BSP demo中的对应文件替换或取其中函数内容进行替换,在main函数中进行system_clock_config函数调用即可。

工具使用

在使用本时钟配置工具时需注意:

1. 此工具生成的时钟配置源码文件需结合雅特力科技提供的BSP_V2.x.x进行使用。

2. 不同系列所生成的时钟配置源码文件不能型号混用,只能在相对应的工程项目中进行调用。3. 配置工具中各输入框参数修改后,请以“Enter”键结束。
PS. 案例介绍可点击此处查看

来源:AT32 MCU 雅特力科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 6

简介

时钟是芯片正确高效运行的基础,正确的时钟配置是芯片能正确运行的必要条件,其重要性不言而喻。AT32各系列产品的时钟配置部分可能存在细微的差异和需要注意的事项,本文档就着重针对各系列的情况来详细介绍如何结合雅特力提供的V2.x.x的板级支持包(BSP)来配置时钟。以下介绍时钟配置的方法主要分两种:

1、以手动编写代码调用BSP中提供的驱动函数接口来进行时钟配置。

2、采用时钟工具来配置并生成相应的源码文件。

时钟树

在进行时钟配置之前,应充分了解对应芯片的时钟树结构,这样在进行时钟配置时才会游刃有余。对于系统时钟频率及路径的配置我们需要关注时钟源、倍频及系统时钟部分。类似如下图:

1.png

图1. 时钟框图

可由图中得到以下几个关键信息:

1) SCLKSEL:系统时钟可以由HEXT、PLLCLK、HICK三大时钟源提供。

2) HEXT:HEXT是外部高速时钟,其可以外接范围是4~25 MHz的晶振或时钟源。

3) HICK:HICK RC是内部高速振荡器,频率为48 MHz。HICK时钟由内部振荡器给出,但在初始情况下由HICKDIV控制并默认6分频后为8 MHz,亦可配置为不分频,保持48 MHz的频率。

4) PLLCLK:PLL时钟=PLL输入时钟*PLL倍频系数。

5) PLL输入时钟:PLL的输入时钟由PLLRCS及PLLHEXTDIV共同决定,其细分可分为三个来源:HICK 4MHz、HEXT和HEXTDIV,HEXTDIV由HEXT时钟2分频。

代码配置解析

以下将以库函数接口为核心来对时钟配置流程和方法进行说明。

函数接口

各系列产品对应提供的BSP中对硬件的时钟设置部分已封装好接口函数以供调用,以下罗列出时钟配置常用的函数接口,各函数的具体参数及返回值类型等请参考at32f421_crm.c/.h文件。

2.png

时钟配置流程

按常规应用来讲解时钟配置流程,其内容可大致分为如下步骤:

3.png

图2. 时钟配置流程图

复位(CRM Reset)

先按规范流程应复位CRM配置参数,其主要是将系统时钟切换到HICK,其余的系统时钟配置寄存器写入默认值,待后续进行新配置参数的写入。

4.png

Flash等待周期(Set Flash Wait Cycle)

AT32F421片上采用的是嵌入式Flash,当运行在不同的主频下时需对应设定Flash等待周期。flash等待周期与运行主频关系如下:函数调用的代码实现如下:

5.png

函数调用的代码实现如下:

6.png

时钟源配置(Clock Source Configuration)

与系统时钟相关的高速时钟源主要包括HEXT和HICK,PLL也是使用以上时钟源来进行倍频。需要在配置使能PLL前将所使用的PLL参考时钟源开启并等待其稳定。

  • HEXT

外部高速时钟如采用外接有源时钟的方式时,可开启旁路模式来进行使用,采用晶振时,不能开启旁路模式,旁路模式应在外部高速时钟源使能前进行设定,其默认情况为关闭。旁路模式使能代码实现如下:

7.png

使能HEXT时钟源并等待HEXT时钟稳定,代码实现如下:

8.png

  • HICK

内部高速时钟是由芯片内部振荡器提供,使能HICK时钟源并等待HICK时钟稳定,代码实现如下:

9.png

PLL配置(PLL Configuration)

PLL配置主要包括:PLL时钟源、PLL倍频系数、PLL倍频频率范围等的设置。倍频时钟公式为:PLLCLK=PLL输入时钟*PLL倍频系数。

  • PLL时钟源

PLL时钟源细分有三个来源:1、HICK(4 MHz),2、HEXT,3、HEXT分频时钟,PLL时钟源应在PLL配置使能前开启并等待稳定。以上PLL时钟源在crm_pll_config函数中对应的参数定义如下:

10.png

当选择PLL时钟源为CRM_PLL_SOURCE_HEXT_DIV时,HEXT的分频系数默认为2分频。

  • PLL倍频系数

倍频系数为2~64倍可选,但应该注意最高主频限制,以此按实际情况来合适选择倍频系数,如8倍频使用参数CRM_PLL_MULT_8。

当PLL参数设置完成后,即可开启PLL并等待PLL稳定。示例:外部时钟晶振8MHz,采用HEXT 2分频时钟作为PLL时钟源,PLLCLK倍频到120 MHz的代码实现如下:

11.png

总线分频(Set Bus Frequency Division)

总线分频包含SCLK到AHBCLK分频、AHBCLK到APB1CLK分频、AHBCLK到APB2CLK分频。AHB总线1分频、APB1/APB2总线2分频的代码实现如下:

12.png

切换系统时钟(Switch System Clock)

系统时钟来源主要有三个:HICK、HEXT、PLLCLK。在切换系统时钟到如上时钟源时应提前确保对应时钟源已稳定。

  • 顺滑模式

时钟顺滑模式是为了确保整个系统时钟切换过程的稳定而设计,当即将切换为系统时钟的目标时钟频率大于108 MHz时应开启时钟顺滑模式,所以其主要应用对象为PLLCLK用作系统时钟时的场景。

通常使用方法是在系统时钟切换前开始,切换成功后关闭。代码实现如下:

13.png

  • HICK系统时钟

内部高速时钟在系统复位重新运行时默认作为系统时钟,后期代码进行设定时,可有两种频率值来进行设定(8 MHz和48 MHz)。如图1所述HICK默认情况下用的是8 MHz,可配置为48 MHz。

HICK 8 MHz用作系统时钟的代码实现如下:

14.png

HICK 48 MHz用作系统时钟的代码实现如下:

15.png

  • HEXT系统时钟

外部高速时钟用作系统时钟时,其系统时钟频率以实际使用的外部时钟频率为准,范围为4~25 MHz。HEXT用作系统时钟的代码实现如下:

16.png

  • PLLCLK系统时钟

PLLCLK用作系统时钟时,其系统时钟频率以实际的PLL倍频结果为准。其最高频率应满足芯片规格为基础。PLLCLK用作系统时钟的代码实现如下:

17.png

更新核心频率(Update Core Frequency)

提供的BSP中,其代码框架内保留了一个表示系统核心频率的参数值system_core_clock,其保存的是CPU核心的运行频率值,应该在每次系统时钟配置完成后来进行更新。为的是在整个代码框架下,各外设驱动的频率配置能很快获取到当前核心运行频率值并使用。代码实现如下:

18.png

时钟配置示例

以下将以完整的时钟配置流程来进行说明,示例:由8 MHz外部时钟晶振作为时钟源,其2分频路径经PLL倍频到120 MHz并用做系统时钟,AHB采用1分频,APB1/APB2采用1分频。函数system_clock_config代码实现如下:

19.png

时钟工具

时钟配置工具是雅特力科技为方便对AT32系列MCU进行时钟配置而开发的一个图形化配置工具,其主旨是使用户清晰了解时钟路径和配置出期望的时钟频率并生成源码文件。

环境要求

  • 软件要求

需要Windows7及以上操作系统支持。

安装

  • 软件安装

本软件不需要安装,只需直接运行可执行程序AT32_New_Clock_Configuration.exe。

功能介绍

本章节将介绍此工具的基本操作,其主要的启动界面和配置界面如下所示

20.png

图3. 启动界面

21.png

图4. 配置界面

菜单栏

菜单栏内容如图所示:

22.png

图5. 菜单栏“项目”(Project)

  • 菜单:

新建:新建时钟配置项目

打开:打开已存在的配置项目

保存:保存已打开的配置项目

  • “语言”(Language)菜单:

English:选择English作为显示语言

简体中文:选择简体中文作为显示语言

  • “生成代码”(General code)菜单:

当在对应型号的操作配置界面将所期望的时钟路径和时钟频率配置完成之后,可点击“生成代码”菜单来选择源码文件的存储路径并生成相应的源码文件。

  • “帮助”(Help)菜单:

新版本下载:联网进行新版本下载

版本:查看当前版本

新建配置项目

双击打开时钟配置工具,可看到图示的启动界面,可点击“项目”菜单-->“新建”,进行配置项目的新建,在新建配置项目的过程中需要对芯片的系列所属进行选择,操作方法如下图所示

23.png

图6. MCU选择界面

MCU系列的选择,可点击下拉框来进行选择,当选择好MCU后点击“确定”可进入到时钟配置界面。

配置界面的使用

配置界面主要用来进行时钟路径及参数的配置,以下的介绍将以 AT32F421 系列作为示例来展开进行,其余系列的配置方法与此类似。整个配置界面主要可以分为四个大块,如下图所示

24.png

图7. 配置界面框架


1. 标题部分:用于展示当前配置项目所选择的MCU系列。

2. 配置部分:用于对时钟路径和时钟参数进行选择和配置,以达到期望的应用需求。

3. 输出部分:用于时钟输出(CLKOUT)的配置。

4. 在SCLK栏也可在选中PLL为系统时钟时作为输入框,可输入期望的系统时钟频率来反向自动配置出倍频参数。

5. 结果部分:用于显示当前外设所使用的时钟频率及总线上的外设。

接下来就着重介绍一下配置部分的使用。配置部分的流程界面是对应着MCU时钟树来进行的,各系列MCU的此部分可能存在着差异,但使用方式大同小异。时钟路径的配置可按流程对各开关进行点选来进行选择,配置部分如下图所示,将逐个流程点的功能及其注意事项进行介绍。

25.png

图8. 时钟配置框

1. ertc使能:ertc时钟代码配置的使能下拉框。

2. ertcsel:点选框,ertc时钟源选择。当ertc使能开启后,此点选框可配置。

3. lext bypass:外部低速时钟的旁路使能。

4. hext:此为输入框,8 MHz为所采用外部时钟源的默认频率,用户可根据实际使用的外部时钟源频率进行修改。(注:此8 MHz被修改为其他频率值时,对应的BSP中demo目录下的inc/at32f421_conf.h文件内的HEXT_VALUE宏定义也应该一致修改,也可以采用工具生成的at32f421_conf.h文件来进行使用)。

5. hext bypass:高速外部时钟的旁路使能。

6. pllhextdiv:点选框,当HEXT作为PLL时钟源时,可配置输入频率为HEXT分频或HEXT不分频。

7. pllrcs:点选框,可配置PLL时钟源为HEXT或HICK。

8. pll_mode:下拉框,可选择PLL的配置模式(normal或flexible)

9. 倍频系数:选择normal模式时使用PLL_MULT参数进行倍频,计算公式为:PLLCLK=PLL输入时钟*PLL_MULT,选择flexible模式时使用PLL_MS、PLL_NS和PLL_FR参数进行倍频,计算公式为:PLLCLK=PLL输入时钟/PLL_MS*PLL_NS/PLL_FR。为了用户的使用方便,在选定PLL输入时钟源后,结果部分的sclk框中输入目标时钟并按下键盘“Enter”键,会自动计算一组倍频参数以满足用户期望或相近的时钟频率。

10. sclk select:点选框,可配置HEXT、PLL或HICK作为系统时钟。

11. sclk频率:当采用正向配置时,此作为系统时钟频率的配置结果显示,当将其用作输入框时,输入期望的频率后点击回车键,会根据此输入值反向计算一组合适的或最接近期望值的PLL配置参数。

12. hick to sclk:点选框,当sclk select选择HICK作为系统时钟时,可配置HICK的8 MHz或48 MHz到系统时钟(注:当选择48 MHz HICK到系统时钟后,CLKOUT输出HICK时的频率也为48 MHz)

生成代码

当时钟配置完成后,可点击生成代码,然后选择代码生成的路径并确认,最后会在所选目录下生成两个文件夹inc和src,源文件存放在src文件夹下,头文件存放在inc文件夹下。这些文件可结合到BSP_V2.x.x内的工程来进行使用。可以采用新生成的时钟代码文件(at32f4xx_clock.c/at32f4xx_clock.h/at32f4xx_conf.h)将原BSP demo中的对应文件替换,在main函数中进行system_clock_config函数调用即可。

注意事项

外部时钟源(HEXT)修改

因本文档所示例的demo和配置工具都默认采用的8 MHz外部时钟频率,当实际硬件使用的外部时钟源是非8 MHz频率时需注意以下几点。

  • 代码修改

1、以实际的外部时钟频率按文中时钟配置流程章节所描述的时钟配置流程及方法来编写相应的代码,配置出期望的时钟配置及时钟路径。

2、 修改对应demo工程中at32f4xx_conf.h文件的HEXT_VALUE值,以实际使用的外部时钟源频率值来进行修改。如实际外部高速时钟使用12.288 MHz的晶振或时钟源时,at32f4xx_conf.h文件应修改如下:

26.png

  • 工具修改

1、在时钟配置工具中的HEXT输入框内填入外部时钟源实际频率值并按“Enter”键确认。

2、配置好所需的时钟路径及时钟频率,生成代码。采用新生成的时钟代码文件(at32f4xx_clock.c/at32f4xx_clock.h/at32f4xx_conf.h)将原BSP demo中的对应文件替换或取其中函数内容进行替换,在main函数中进行system_clock_config函数调用即可。

工具使用

在使用本时钟配置工具时需注意:1. 此工具生成的时钟配置源码文件需结合雅特力科技提供的BSP_V2.x.x进行使用。2. 不同系列所生成的时钟配置源码文件不能型号混用,只能在相对应的工程项目中进行调用。3. 配置工具中各输入框参数修改后,请以“Enter”键结束。

PS. 案例介绍可点击此处查看。

来源:AT32 MCU 雅特力科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 13

ACC简介

HICK时钟校准器(ACC)利用OTGFS作为设备时产生的SOF信号作为参考信号达到校准HICK的目的,SOF信号为主机发给设备其周期为1ms的脉冲信号。ACC控制器采用“跨越回归”算法,可以将HICK频率尽可能校准到靠近目标频率。

1.png

图1. ACC控制器架构

ACC功能解析

主要特性

ACC控制器具备如下特性:

  • 校准HICK,已达到对OTGFS设备提供48MHz±0.25%精度的时钟
  • SOF标志可选择来源:OTGFS1或者OTGFS2
  • 可配置的触发校准功能的边界频率
  • 两种校验方式:粗校验和精校验
  • 状态标志:校准就绪标志和SOF参考信号丢失标志
  • 带标志的中断源:校准就绪标志中断源和SOF参考信号丢失标志中断源

中断请求

拥有两个中断请求源:校准就绪中断源和SOF参考信号丢失中断源

2.png

表1. ACC中断源

当设置了对应的使能位,当产生了对应的中断,就会进入对应的中断处理函数。

3.png

图2. ACC中断示意图

校准原理

首先需要了解到,如果系统使用的是HICK作为系统时钟源,而本身ACC模块又是对HICK进行校准,那么此时整个系统是不具备校准条件的,因为没有一个准确的参考信号作为校准的基准,所以就引入了OTGFS的SOF信号。SOF信号是外部主机提供的,主机将准确的SOF信号(1ms周期)给到设备(待校准系统),然后ACC模块采样SOF信号,并进行一系列的计算达到判定HICK是否准确,如若发现HICK不准确那么就会进行校准动作。

SOF周期信号:1毫秒的周期性必须是准确的,是自动校准模块能够正常工作的前提条件;

SOF信号通过PA8输出,如下图:

4.png

图3. SOF信号示意图

cross-return策略(跨越回归算法):计算出离理论值最近的校准值;从理论上来说,可以将校准后的实际频率调校到离目标频率(8MHz)约0.5个step的精度范围以内。

5.png

图4. 跨越回归算法示意图

如上图所示,一旦触发自动校准的条件满足,自动校准就会按照step所规定的步长调整HICKCAL或者HICKTRIM。

跨越(cross):

在满足自动校验的条件后的第一个1毫秒采样周期内的实际采样值要么小于C2,要么大于C2。当这个值小于C2,自动校准按照step的定义,增加HICKCAL或者HICKTRIM,直到实际采样值比C2大,实现实际采样值由小到大对C2的跨越。

当这个值大于C2,自动校准按照step的定义,减少HICKCAL或者HICKTRIM,直到实际采样值比C1小,实现实际采样值由大到小对C2的跨越。

回归(return):

在跨越完成后,比较在跨越前后的实际采样值和C2之间的差值(按绝对值计算),得到离C2最近的实际采样值,从而得到最佳的校验值HICKCAL或者HICKTRIM。

若跨越后的实际采样值和C2之间的差值小于跨越前的实际采样值和C2之间的差值,则以跨越后的校验值为准,并结束校验流程,直到满足下一个满足自动校验的条件。

若跨越后的实际采样值和C2之间的差值大于跨越前的实际采样值和C2之间的差值,则以跨越前的校验值为准,那么校验值会退回一个step,并返回到跨越前的那个校验值,并结束校验流程,直到满足下一个满足自动校验的条件。

按照cross-return策略,在理论上,可以得到离中心频率约0.5个step所对应的频率精度。

如下四种情形会启动自动校准:

  • CALON的上升沿(从0到1);

  • 当CALON=1时,参考信号丢失之后又恢复;

  • 当采样计数器的值小于C1;

  • 当采样计数器的值大于C3。

在CALON的上升沿,即便采样计数器的值大于C1并小于C3,也会启动自动校准,其目的在于,在CALON之后,能够尽快将HICK的频率调整到中心频率的0.5个step以内。

以上四种情形的自动校准的结果均能将HICK的频率调整到中心频率的0.5个step以内。所以为了获得最佳的校准精度,建议将step保持为默认值1。若将step设为0,则HICKCAL或者HICKTRIM将无法改变,也即,无法校准。

ACC配置解析

以下对ACC的配置接口及流程进行说明。

函数接口

6.png表2. 配置函数列表

配置流程

  • 系统以HICK作为系统时钟源,并打开ACC时钟;

  • OTG_FS以HICK为时钟源并初始化OTGFS;

  • 使能ACC相关中断;

  • 配置C1/C2/C3值;

  • 选择SOF源;

  • 使能ACC并选择粗校验或者精校验。

案例 ACC校准HICK

功能简介

实现了使用ACC模块将HCIK校准在要求的精度内。

资源准备

1) 硬件环境:

对应产品型号的AT-START BOARD

2) 软件环境

project\at_start_f4xx\examples\acc\calibration

软件设计

1) 配置流程

  • 开启ACC/OTGFS外设时钟

  • 配置OTGFS设备和ACC模块

  • 开启ACC

2) 代码介绍

  • main函数代码描述

7.png

  • 中断处理函数

8.png

实验效果

  • 如若HICK时钟偏离正常值,ACC将自动启动校准(前提是OTGFS设备与主机成功连接),校准完成后在中断函数内会翻转LED2;产生SOF信号丢失后也会进入对应中断函数内翻转LED3。

来源:AT32 MCU 雅特力科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 20

4月20日,雅特力正式推出AT32F423系列超值型Cortex®-M4F MCU,内建单精度浮点运算单元(FPU),支持多管脚及封装选择,具备高效能、高集成和高性价比等特点,为AT32家族超值型产品线又增添了一名生力军。AT32F423片上集成丰富外设资源,提供高速的数据传输及处理能力,聚焦超低预算开发需求,同时兼顾成本敏感及高性能需求的嵌入式应用。

1.png

AT32F423系列MCU最高主频为150MHz,提供多达256KB Flash和48KB SRAM,包含1个高阶外部储存器(XMC)扩展,兼容8080/6800模式作为LCD并口。且支持1个12位5.33Msps A/D转换器,多达24个外部输入通道,满足更多应用高速数据采集及处理要求,提高产品测量精度及系统监测与控制能力。

AT32F423系列集成了丰富的外设界面,除ADC外,还提供2个12位DAC、 8个USART、3个SPI/I2S、3个I2C、2个CAN、1个OTG控制器(设备模式支持无晶振Xtal-less)及多达87个GPIO还支持端口重映像功能,充份弹性配置I/O脚位和扩充功能,使开发人员灵活运用升级终端产品功能,且不占电路板空间或额外增加物料成本, 优于市场上同级芯片, 几乎以一颗芯片全面涵盖多元应用场域,及满足各种需要灵活的工业标准连接功能的应用需求,如HMI、工业控制、物联网、智能居家、扫地机器人、LED控制、避障模块、LiDAR激光测距、亳米波等。

AT32F423系列提供21个产品型号,最大支持LQFP100封装,满足复杂设计功能对多引脚应用,对应不同市场需求, 还有LQFP64, LQFP48, QFN48, QFN36, QFN32共6种封装类型供选择,且所有AT32 MCU产品在软件和引脚封装方面皆兼容,可协助开发人员随时升级产品和降低扩充项目成本,缩短设计周期。

2.png

雅特力不断构建完善的开发生态体系,提供全面性的开发工具平台,如AT-Link- Family编程调试工具等硬件资源,以及BSP标准库、ICP/ISP编程工具等软件资源,支持Keil, IAR, eclipse, RT-Thread Studio等IDE平台与RT-Thread OS, FreeRTOS及LittlevGL等OS/GUI平台。通过易用的软硬件工具,提升工程人员的开发体验和效能,降低入门使用门槛,并减少重复设置工作,加速开发效率。

在密码保护方面,AT32F423系列搭载雅特力自有开发的sLib安全库 (Security Library) ,支持密码保护指定范围程序区,方案商依需求烧录核心算法到指定范围程序区,有助于下游客户进行二次开发,具备高安全性和可靠性优势。

目前,AT32F423系列产品已经开始发送样片并预计在2023年5月正式投入量产供货。

来源:AT32 MCU 雅特力科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 7

3月29-30日,由全球电子技术领域知名媒体集团AspenCore主办的2023国际集成电路展览会暨研讨会(IIC Shanghai)在上海国际会议中心盛大举行。IIC 2023聚焦“碳中和暨绿色能源”电子产业发展、中国IC设计成就、EDA/IP、MCU技术与应用、高效电源管理及宽禁带半导体技术、射频与无线通信技术等领域,为中国半导体产业链搭建高效交流的互动平台,赋能产业升级!

会议现场,雅特力业务处长蔡柏彤先生发表了“用芯打造智慧未来,雅特力AT32 MCU持续布局多领域应用市场”的主题演讲,与广大电子工程师和行业精英共同探讨MCU市场与技术趋势。

1.png

蔡柏彤在演讲中详细介绍了AT32 MCU全系列产品与最新布局,雅特力致力于开发以ARM® Cortex-M4/M0+为内核的32位MCU,包含低功耗、超值型、主流型、高性能、无线型等五大产品系列MCU。随着汽车电子、工控/医疗、新兴物联网等领域市场的不断发展,对32位MCU芯片的需求量将大幅度提升,但也面临新的突破与挑战。雅特力全系列针对工业级别芯片设计,具有高可靠度和高安全性等特征,保证产品在-40℃~105℃的工作环境稳定运行。AT32 MCU工作主频高达288MHz,领先业界其它同级MCU,Cortex-M4F核心浮点运算提供优异的算法技术,具备快速而精确的计算能力,搭配丰富的高速模拟器件与数字通信接口,满足工业自动化、电机控制、汽车电子、智能家电与新能源等新兴领域应用需求,助力客户产业升级与应用创新。

科技发展日新月异,市场需求复杂多元。面对高速发展的绿色节能市场,雅特力2023年将推出Cortex®-M0+低功耗产品线,超低功耗和快速唤醒可大幅降低产品使用功耗,满足高速数据采集、工业控制与电机应用低功耗要求,属入门级低功耗MCU最佳选择。在热度居高不下的车载应用市场雅特力也不断发力,以高可靠、高安全、高性能等优势迅速占领部分市场,AT32F403A/AT32F413已获得国内前三大汽车厂商采用并量产,同时AT32F403A系列还将通过AEC-Q100 Grade2认证(A: Automotive),满足功能安全标准车规级MCU的能力,同时可广泛适用于车身控制、ADAS辅助驾驶、车载影音等新能源车用场景。

2.png

活动现场还设置高端展览区,雅特力展示了基于AT32 MCU的工控、电机、车载、物联网等领域应用方案,包括变频器、PLC、微机综保、智能断路器、数字电源、智能调光开关、BMS智能保护板、充电枪、E-Bike、运动控制器等多款应用方案,现场氛围十分热烈!

3.jpg
4.jpg

来源:AT32 MCU 雅特力科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 16

3月24-26日,由中国电子学会电路与系统分会主办,温州大学承办的中国电子学会电路与系统分会第32届学术年会暨第二届电子与信息科学前沿论在浙江温州大学举行,全国多所高校和科研机构专家、学者参加会议。雅特力科技作为协办单位出席此次会议活动,展示了基于AT32 MCU的工控、电机、车载、物联网等领域应用方案,并与众多学者、专家进行现场沟通交流,产品技术得到一致认可。

1679897657236398.png

1679897668781287.png

1679897680958638.png

雅特力致力于开发以ARM® Cortex-M4/M0+为内核的32位MCU,包含低功耗、超值型、主流型、高性能、无线型等五大产品系列MCU。全系列针对工业级别芯片设计,具有高可靠度和高安全性等优势,保证产品在-40℃~105℃的工作环境稳定运行。AT32 MCU Cortex-M4F核心浮点运算提供优异的算法技术,具备快速而精确的计算能力,搭配丰富的高速模拟器件与数字通信接口,满足工业自动化、电机控制、汽车电子、智能家电与新能源等新兴领域应用需求,助力客户产业升级与应用创新。

现场应用方案展示

此次活动现场展示了基于AT32 MCU的变频器、PLC、微机综保、智能断路器、数字电源、智能调光开关、BMS智能保护板、充电枪、E-Bike、运动控制器等多款应用方案。

变频器

4.png

• 采用AT32F403A,AT32F421,AT32F415系列MCU

• 高速GPIO处理响应速度

• 稳定,抗干扰能力强

• 快速ADC转换速率,高达2Msps以上转换速率

PLC

5.png

• 采用AT32F435,AT32F437,AT32F403A,AT32F407系列MCU

• 主频和SRAM优势明显,有利于实现多组程序同时执行,同时提升显示效果

• 支持10/100Mbps以太网口控制器

• DMA自由映射方便引脚功能配置和PCB布板

• 稳定,抗干扰能力强

微机综合保护装置

6.jpg

• 采用AT32F403A系列MCU

• ADC转换速度高达2Msps

• USART速率高达7.5MHz bps

• 符合工业级操作温度范围-40~105°C

• 满足各类不同室外环境要求

智能调光开关

7.png

• AT32F415接入Amazon Alexa,可支持亚马逊Amazon Connect Kit (ACK)功能

• 采用高主频、32位定时器,调光范围更大

• 系统存储器作为用户模式,增大闪存空间

BMS智能保护板

1679897746719175.png

• 采用AT32F413系列MCU

• 搭载Cortex-M4内核,支持CAN*2,RS-485,UART等丰富的外设接口,可实现多种通讯模式

• CAN连接电动车控制器,提高系统稳定性和数据传输速率

• 快速ADC转换速率,及时获取电池电压电流和温度数据并作出处理,防止过充过放过流过温

来源:AT32 MCU 雅特力科技

免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 15

页面

订阅 RSS - 雅特力