雅特力

11月7日,2024中国微电子产业促进大会暨第十九届“中国芯”优秀产品征集结果发布仪式在横琴粤澳深度合作区盛大开启。雅特力科技AT32F421系列微控制器荣获“优秀市场表现产品”奖。

1731290683722109.png

“中国芯”优秀产品评选活动由中国电子信息产业发展研究院主办,是国内集成电路领域最具影响力和权威性的行业活动之一,旨在展示我国集成电路领域产品、技术和应用创新成果,得到业界的高度关注和广泛支持。该奖项自2006年设立以来,至今已成功举办十九届。本届活动共收到来自280家芯片企业364款芯片产品报名,雅特力AT32F421在一众产品中脱颖而出,荣登“中国芯”优秀市场表现产品榜单。此次获得该项殊荣是对AT32F421产品价值及市场表现的高度认可。

AT32F421系列MCU着眼于取代及提升传统Cortex®-M0/M3产品的解决方案,导入Cortex®-M4架构的高速主流平台,高达120MHz的CPU主频,同时配备了丰富的接口资源,具有快速高效的算法能力和高性价比的价格优势,广泛适用于工业控制、电机、家电及智能家居等领域,已在国内多家一线智能终端品牌大厂量产应用,具有较大规模的出货量,获得了市场客户的高度认可。基于雅特力AT32F421C8T7的电动两轮车电机控制应用方案,可实现三合一方案,集电控系统、动能回收系统和BMS电池管理系统于一体,真正做到电量准、续航远和骑行舒适,极大提升了该领域电机驱动器的效能,同时销量领跑中高阶电动两轮车电机驱动MCU市场。

中国芯产业在国家政策支持和市场需求驱动下,正朝着自主创新和技术突破的方向快速发展,近年来取得显著成效。雅特力科技通过不断提升研发实力、优化产品性能,为国产芯片的崛起注入了新的活力。凭借对高性能MCU的专注与深耕,逐步实现了在工业控制、电机控制、车载、智能家居、消费等多领域的应用布局,得到了市场的广泛认可。同时,雅特力将继续强化自主创新,为中国芯产业的繁荣与全球竞争力的提升贡献力量。

关于雅特力

雅特力科技于2016年成立,是一家致力于推动全球市场32位微控制器(MCU)创新趋势的芯片设计公司,拥有领先高端芯片研发技术、完整的硅智财库及专业灵活的整合经验,分別在重庆、深圳、苏州、上海、台湾设有研发、销售及技术支持分部。

雅特力坚持自主研发,以科技创新引领智慧未来,专注于ARM® Cortex®-M4/M0+的32位微控制器研发与创新,提供高效能、高可靠性且具有竞争力的产品。全系列产品采用55nm先进工艺,通过ISO 9001质量管理体系认证,缔造M4业界最高主频288MHz运算效能。自2018年正式对外销售至今,累积了相当多元的终端产品成功案例,广泛地覆盖工控、电机、车载、消费、商务、5G、物联网、新能源等领域,助力客户实现产业升级。

来源:AT32 MCU 雅特力科技

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

围观 14

近日,雅特力科技宣布推出AT32M412/M416首款高性能电机控制专用MCU,为出行工具、家电及工业控制等应用提供理想选择。

1730102101931741.png

随着全球工业自动化、智能家居及电动工具市场的迅速增长,市场对高效、精准的电机控制专用芯片需求不断提升。AT32M412/M416针对电机驱动应用场景设计研发,集成丰富的外设接口,具有高速的运算性能,满足市场对于高性能、高可靠性和高精度电机控制解决方案的迫切需求。

硬核算力加持,强化存储效能

AT32M412/M416采用高性能ARM®Cortex®-M4内核,高达180MHz的CPU运算速度,内建单精度浮点运算单元(FPU)与数字信号处理器(DSP),全面满足电机应用处理性能。配备64KB到128KB闪存(Flash)和16KB SRAM,另有1KB OTP数据存储空间。内置存储器可设置任意范围程序区受sLib保护,成为执行代码安全库区。可以实现安全和低功耗的运行,简化系统设计,提高了设计灵活性。

丰富功能与外设,灵活应对多样控制需求

AT32M412/M416系列MCU集成多种外设资源和功能,满足电机应用不同功能需求及高速连接需求。包括4个具有可编程增益(PGA)功能的运算放大器(OP),2个比较器(CMP),2个USART、2个I²C、2个SPI/I²S、1个专为电机控制设计的PWM高级定时器,5个16位通用定时器、2个基本定时器、2个12位共18个外部通道高速ADC(采样率高达2.5Msps)、2个DAC,以及多达46个快速GPIO端口。AT32M412具备CAN总线功能,而AT32M416进一步升级为CAN-FD,满足更高要求的工业控制应用。

此外,运放OP输入端内置保护电路,可直接输入高压,简化MOS管电流采样外置电路。2个ADC共18个外部通道均具有独立的通道数据采样寄存器。高级定时器支持两路刹车输入和双向刹车功能,可快速响应异常事件,从而保护电路或电机。

多样封装选择,适用广泛应用场景

AT32M412/M416提供TSSOP24、QFN32、LQFP32、LQFP48在内的4种封装共8个型号选择。满足工业级温度范围(-40°C至105°C),工作电压范围2.4V至3.6V。从简单的直流电机、步进电机,到复杂的无刷直流电机(BLDC)和永磁同步电机(PMSM),都能实现精准、高效的控制,特别适合电动两轮车、电动摩托车、助力车、洗衣机、压缩机、变频器、工业风机、伺服电机及电动工具等应用。

2.png

完善电机开发生态系统,提升开发效率

雅特力具备完善的电机开发生态体系,提供方便易用的软硬件开发工具,包括AT-START-M412/M416电机开发板,AT-MOTOR-EVB电机开发板,AT32M412电动两轮车E-Bike开发板,搭配电机控制算法库,PMSM(BLDC)电机,AT-Link或第三方调试下载器使用,可驱动直流无刷电机、交流同步电机,以及异步电机。配置免费的电机监控上位机调试软件,友好的电机监控和调试软件UI界面,可实时监看电机运转参数、状态与动态显示响应波形,便于进行在线调试相关控制参数,满足工程人员开发需求,提升电机控制产品上市进程。

3.png

4.png

5.png

目前,AT32M412和AT32M416系列产品已经正式投入量产供货并提供样片申请!

来源:AT32 MCU 雅特力科技

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

围观 22

新建项目

新项目向导

AT32 ID提供支持雅特力MCU的C语言项目模板,方便用户快速创建项目。菜单栏【File】>【New】>【C Project】。新建项目向导的对话框将出现。在对话框内,输入项目名称,这里以AT32F403AVGT7为例,项目名称输入AT32F403AVGT7;项目类型选择AT32F403A_407 Project;工具链默认选择Arm Cross GCC,点击Next按钮继续。

1.png

图1. 新项目向导

备注:项目名称只能使用大写字母、小写字母、数字和下划线,不能包含空格。

目标芯片配置

根据实际目标MCU,选择AT32F403A对应的目标芯片,这里选择AT32F403AVGT7。外部时钟External clock一般默认都是0x08000000;其他配置根据实际选择。

2.png

图2. 目标芯片配置

调试配置

默认,点击Next继续

3.png

图3. 调试配置

GNU工具链配置

GNU工具链配置,默认选择GNU Tools for ARM Embedded Processors(arm-none-eabi-gcc),工具链路径这里也集成到了AT32 IDE 中,不需要单独进行选择。点击Finish创建项目。

如果不能自动选择Toolchain path,可以手动选择,gcc-arm-none-eabi和Build Tools都包含在了IDE的环境中。目录分别为:

gcc-arm-none-eabi的目录:AT32IDE\platform\tools\gcc-arm-none-eabi-10.3-2021.10\binBuild Tools的目录:AT32IDE\platform\tools\Build Tools\bin。

4.png

图4. GNU工具链配置

完成项目创建

AT32F403AVGT7项目创建完成后,如下图所示:

5.png

图5. 完成项目创建

构建项目


右键单击项目,在弹出菜单中选择“Build Project”,或者选择项目,点击菜单栏的“Build Project”对项目进行构建,生成elf文件。如下图所示:

6.png

图6. 工具栏构建项目

7.png

图7. 构建项目

构建的项目日志在控制台进行打印。如下图所示:

8.png

图8. 构建结果

项目构建配置

项目创建完成之后,我们也可根据需要对项目构建重新配置。选择菜单【Project】>【Properties】或右键项目选择【Properties】,将出现项目的属性对话框。在C/C++ Build>Settings,我们可以根据实际情况来更改构建配置,点击应用按钮使配置生效。设置完成后,我们可以根据当前的配置重新构建项目。

9.png

图9. 构建配置

调试项目

调试配置

在启动程序调试前,必须先进行调试配置,包含所有关于调试所需的信息。

选择菜单【Run】>【Debug Configurations…】打开调试配置对话框。双击GDB AT-Link Debugging,将自动创建AT-Link调试配置,并再右边进行显示。所有的调试配置信息都会自动生成,一般可以不需要进行修改。

Main标签页

Main标签页中,项目应与创建创建的项目名称一致,创建时会自动生成。C/C++程序一般会自动搜索项目中构建的elf文件,这里自动填写Debug\xxxxx.elf。如果没有提前构建项目,找不到elf文件,则自动填写Debug\${project_name}.elf,当构建产生以项目名称命名的elf时,这里的配置也可以正常使用。

10.png

图10. Main标签页

Debugger标签页

Debugger 标签页中的信息创建时也自动进行了配置。OpenOCD的执行程序和脚本文件配置路劲是相对路劲,因为这些工具都已近存放在AT32 IDE的安装文件中。这里自动配置了执行程序路径、SVD文件路径,并根据芯片类型配置了Config options。当然也可以根据实际情况就行修改。如需要使用WinUSB,则需要勾选“WinUSB”,则Config options的信息中将自动配置为“-f ./interface/atlink_dap_v2.cfg”。

如下图所示:

11.png

图11. Debugger标签页

启动调试

选择上一步创建的调试配置“AT42F403AVGT7 Debug”,并点击工具栏“Launch in ‘Debug’ mode”按钮,启动项目调试。如下图所示:

12.png

图12. 启动调试

弹出切换透视图对话框,点击“切换”按钮切换到Debugger透视图。如下图所示:

13.png

图13. 切换透视图

项目启动调试,并切换到调试透视图。在调试透视图可以进行各种调试功能操作。如查看变量值、表达式值、外围寄存器等。如下图所示:

14.png

图14. 调试透视图

下载与擦除

下载

工程构建完成,并创建了AT-Link调试器,选中需要下载的项目,单击工具栏的下载按钮,将构建生成的程序下载到设备中。

擦除

选中需要下载的项目,单击工具栏的擦除按钮,将会自动对MCU的Flash进行全部擦除操作。

来源:AT32 MCU 雅特力科技

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

围观 49

随着人工智能、物联网等技术的发展,传统家电逐渐向智能家电转型。洗衣机作为家庭生活中不可或缺的电器之一,其智能化升级对于提升生活品质具有重要意义。当前,洗衣机制造企业已纷纷将智能洗涤、高效节能、大容量配置、超薄嵌入、极致静音体验以及衣物护理功能作为产品竞争力的核心要素,同步响应行业政策对能效要求的提升,这一系列要求无疑对电机控制技术提出了更高的挑战。

1726627545350654.jpg

MCU作为电机控制系统的核心“大脑”,肩负着多样化的控制使命,其性能至关重要。雅特力AT32 MCU以其卓越的性能和完善的电机开发生态,为洗衣机、电动两轮车和电摩等电机应用产品提供高效电机控制驱动方案,并已实现规模量产。

01、高效驱动,精准控制

AT32F421着眼于取代及提升传统Cortex®-M0/M3产品的解决方案,导入Cortex®-M4架构的高速主流平台,集成丰富的外设接口,具有快速高效的算法能力和高性价比的价格优势,为智能家电、电机控制和工业自动化等应用领域量身打造,满足洗衣机电机控制对精度、效率和安全性的要求。

1.png

AT32F421达120MHz CPU主频,64KB Flash及16KB SRAM,可快速完成FOC算法和电流调节。高PWM频率与解析度,保证电机高效稳定运转,进一步提升了洗衣机的洗涤效果和节能性能。AT32F421还扩展了1个高速轨到轨输入/输出模拟电压比较器,有效节省BOM成本,实现过流保护,确保洗衣机在异常情况下能够迅速响应,保护产品及用户安全。

此外,AT32F421内置1个采样率2Msps的12位高速ADC,转换频率可高达28MHz,最短采样时间仅54ns,全部转换时间仅0.5us,非常适用于单电阻电流采样的驱动器,并可在极短的采样时间窗口正确采样。这使其在洗衣机的控制回路计算中能够轻松胜任,无论是电流、速度还是位置等控制回路,AT32F421都能提供高频取样率,确保洗衣机的运行稳定且精确。

02、高效电机引领,洗衣体验全面升级

直驱控制

基于AT32F421的洗衣机应用方案采用直驱变频(DD)技术,摒弃了传统的皮带或齿轮传动方式,直接将电机与洗衣桶或滚筒相连,实现了动力传输的高效与精准。这种技术不仅减少了能量损耗,降低了运行噪音,还提高了洗衣机的响应速度和洗涤效率。直驱电机能够精确控制洗涤节奏,确保衣物得到恰到好处的清洁,同时延长了洗衣机的使用寿命。

由于直驱电机设计更加紧凑,这意味着洗衣机可以有更小的机身设计,同时确保其洗涤容量不变,这对于空间有限的家庭来说尤为友好。省去皮带和滑轮系统,直驱洗衣机可以为滚筒和内部结构提供更多的空间,实现同等尺寸下更大的洗涤容量。

深度弱磁算法

鉴于洗衣机工作周期中低速洗涤模式占据主导地位,电机设计通常侧重于优化低速性能以兼顾扭矩与效率。然而,洗衣机的脱水转速通常介于每分钟800到1600转,对电机高速性能的迫切需求凸显,常规控制策略难以迅速响应这一转变。AT32F421洗衣机应用方案设计了深度弱磁算法,它如同一位智能调节师,依据实时速度需求与负载状况,精细调整D、Q轴电压电流分配,确保电机转速提升平滑无级,彻底消除了传统调速中的台阶感。这一创新不仅满足了脱水模式对电机高速、高效、稳定运行的要求,还提升了用户体验,使洗衣机在高速脱水时更加安静、平稳。

智能称重检测

用户在洗衣时均希望洗衣机能根据衣物的重量自动给出合适的水位,从而避免盲目选择,造成洗不干净或费水费电的情况发生。为了提高检测精度及降低成本,基于AT32F421洗衣机方案凭借高性能的CPU算力,能够自动感知并计算衣物的重量,算法精度远高于行业要求。

不仅避免了水资源的浪费,还确保了衣物得到恰到好处的清洁,保护了衣物纤维,延长了衣物使用寿命。同时,智能秤重也让用户操作更加简便,只需将衣物放入洗衣机,选择相应程序,即可享受智能化的洗涤服务。

衣物不平衡

侦测衣物在洗涤过程中因分布不均导致的偏心问题是传统洗衣机常见的困扰之一。

T32F421通过传感器和算法,以实现衣物不平衡的实时侦测,并对检测结果来进行相应的控制。洗衣机可自动调整洗涤程序,如增加脱水前的再平衡步骤,或通过改变水流方向等方式,有效减少震动,确保洗涤过程的平稳进行。以及对角偏心检测功能,作为偏心检测的补充,实时监测并调整因衣物在洗涤过程中可能发生的移动所导致的偏心量变化。

03、电机生态系统赋能

在电机开发生态上,雅特力提供了丰富多样的电机控制算法库BSP包,包含编码器、霍尔有感与无感FOC弦波矢量控制,可应用于三电阻、双电阻和单电阻等电流反馈方式,以及霍尔有感与无感6-step BLDC控制。提供了霍尔状态自学习、电机线圈参数自动辨识和电流PI控制参数自定义等智能化自动调试功能。电机监控上位机调试软件提供了友好的UI调试界面,可实时监看电机运转参数、状态与动态显示响应波形,便于进行在线调试相关控制参数。这些功能强大的开发工具包和易使用的电机控制算法BSP包,从方波驱动到FOC弦波驱动、霍尔传感器的反馈到无传感器的反馈,全方位支持工程人员实现高效电机控制方案。相对完整的电机开发生态也为智能家电厂商提供了开发便利,快速实现产品量产和上市。

此外,AT32 MCU为家电安全性提供了坚实的保障,全系列产品已顺利通过IEC 60730功能安全认证,可提供符合Class B标准完整的功能安全库,减少家电厂商产品认证时间与成本,从硬件底层架构层面显著增强了产品的稳定性和安全性,为家电产品的市场准入与消费者信赖奠定了坚实基础。

来源:AT32 MCU 雅特力科技

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

围观 32

概述

产品和生态系统安全性的需求比以往任何时候都更加重要。真随机数是所有安全系统的核心,其质量会影响设计的安全性。

因此在没有内置硬件TRNG的AT32的微控制器系列中,如何提高随机数的有效,来符合应用的需求。底下提供两种方法:

提高乱度的方法之一,使用ADC的误差。AT32的微控制器内置最多三个高级12位片上SAR模拟数字转换器(ADC)并提供自校准功能,保证12位ADC静态准确度(accuracy)可达10位以上。这误差可以拿来计算随机数的来源。

提高乱度的方法之二,使用上电时SRAM内容的不确定性。SRAM不保证上电时的内容值,每次上电后,内容也是不容易预测的。我们可以利用这个特性,拿来增加随机数的乱度。

利用ADC的误差来源产生随机数的方法

本章介绍了使用软件触发方式触发ADC,配置普通信道和DMA。根据随机数需要的位数来配置信道数,一次转换最多到16信道,将16信道转换的数值可组合计算成一个32位的随机数。底下是DMA和ADC的配置代码。

  • DMA配置函数代码

1.png
  • ADC配置函数代码

2.png
可以看到,代码中并没有对ADC做自校准,转换时间也使用最短的,这种情况下,ADC的准确度会是最差的,有助于乱度的提升。
  • ADC随机数取得代码

3.png

利用上电时SRAM的内容来计算随机数的方式

这范例只是简单的利用累加来获得一个随机数

  • SRAM配置函数代码

4.png

随机生成应用指南

以上两种方式建议应用在上电后执行,因为SRAM内容在运行后会初始化,ADC也会有其他应用上的需求,上电后执行并获得一个随机数,将这个随机数当成Seed,之后可以利用标准C函式库中提供的随机数生成器,产生后续的随机数。

SRAM的方式限定在POR后使用。如果只是一般的reset,SRAM会维持内容,造成产生的随机数都是相同。

ADC的方式则没有限制,但是因为使用ADC外设的资源,推荐放在开机时执行,不会影响后续的ADC应用。

范例运行和分析

本篇应用笔记适用于AT32各系列MCU,只要有ADC外设皆可适用。

范例固件AN0175_SourceCode_V2.0.0运行在AT32403A AT-START版上,透过 PuTTY(免费开源终端仿真器)等终端仿真应用程序,将数据存储在工作站上。

在工作站上编译NIST统计测试集程序包,以生成可执行程序。接下来运行NIST统计测试集程序分析数据以及统计测试。

以下是使用范例固件AN0175_SourceCode_V2.0.0在上电后会产生的一个随机数,在收集约319万笔随机数后,进行NIST统计测试。

5.png

图1. 环境配置
硬件资源
  1. AT32403A AT-START 版

    1) 串口(PA9)

  2. 具有串口的计算机,运行 Linux 系统

软件资源
  1. 下载到AT32403A AT-START版运行

    1) AN0175_SourceCode_V2.0.0

  2. 计算机端运行

    1) 终端仿真器如PuTTY

    2) 统计测试集源程序

    https://csrc.nist.gov/CSRC/media/Projects/Random-Bit-Generation/document...

    https://github.com/usnistgov/SP800-90B_EntropyAssessment

NIST SP800-22b统计测试集

基于NIST统计测试集:April 27, 2010: NIST SP 800-22rev1a (dated April 2010), A Statistical Test Suite for the Validation of Random Number Generators and Pseudo Random Number Generators for Cryptographic Applications, that describes the test suite.

统计测试集源程序下载:

https://csrc.nist.gov/CSRC/media/Projects/Random-Bit-Generation/document...

统计测试集结果:

NIST SP800-90b统计测试集

基于NIST统计测试集:November 21, 2014: NIST requests comments on the latest revision of NIST SP 800-90A, Recommendation for Random Number Generation Using Deterministic Random Bit Generators, which is dated November 2014.

统计测试集源程序下载:

https://github.com/usnistgov/SP800-90B_EntropyAssessment

统计测试集结果:需先转换成符合2-bit-wide symbols数据输入格式。

./ea_non_iid 0421_2.bin 2 -i -a -v

Opening file: '0421_2.bin'

Loaded 50888144 samples of 4 distinct 2-bit-wide symbols

Number of Binary Symbols: 101776288

Running non-IID tests...

Running Most Common Value Estimate...

Bitstring MCV Estimate: mode = 50891714, p-hat = 0.50003507693265448, p_u = 0.50016273956095891

Most Common Value Estimate (bit string) = 0.999531 / 1 bit(s)

Literal MCV Estimate: mode = 12725005, p-hat = 0.25005834364876817, p_u = 0.25021470996034195

Most Common Value Estimate = 1.998761 / 2 bit(s)

Running Entropic Statistic Estimates (bit strings only)...

Bitstring Collision Estimate: X-bar = 2.5000060058338387, sigma-hat = 0.50000000610486417, p = 0.50989562404154842

Collision Test Estimate (bit string) = 0.971726 / 1 bit(s)

Bitstring Markov Estimate: P_0 = 0.49996492306734552, P_1 = 0.50003507693265448, P_0,0 = 0.4999425562646943, P_0,1 = 0.5000574437353057, P_1,0 = 0.49998729655651403, P_1,1 = 0.50001270344348603, p_max = 2.9554800761609014e-39

Markov Test Estimate (bit string) = 0.999936 / 1 bit(s)

Bitstring Compression Estimate: X-bar = 5.2176714331187366, sigma-hat = 1.0152961906603262, p = 0.019654761320726077

Compression Test Estimate (bit string) = 0.944830 / 1 bit(s)

Running Tuple Estimates...

Bitstring t-Tuple Estimate: t = 23, p-hat_max = 0.52357011476148263, p_u = 0.52369763546518522

Bitstring LRS Estimate: u = 24, v = 50, p-hat = 0.50053161737274598, p_u = 0.50065927992920534

T-Tuple Test Estimate (bit string) = 0.933194 / 1 bit(s)

Literal t-Tuple Estimate: t = 11, p-hat_max = 0.27527598152543398, p_u = 0.27543726106146299

Literal LRS Estimate: u = 12, v = 24, p-hat = 0.25086994374062016, p_u = 0.25102647882990431

T-Tuple Test Estimate = 1.860204 / 2 bit(s)

LRS Test Estimate (bit string) = 0.998099 / 1 bit(s)

LRS Test Estimate = 1.994089 / 2 bit(s)

Running Predictor Estimates...

Bitstring MultiMCW Prediction Estimate: N = 101776225, Pglobal' = 0.50008960368099831 (C = 50884239) Plocal can't affect result (r = 26)

Multi Most Common in Window (MultiMCW) Prediction Test Estimate (bit string) = 0.999741 / 1 bit(s)

Literal MultiMCW Prediction Estimate: N = 50888081, Pglobal' = 0.25014573559900838 (C = 12721480) Plocal can't affect result (r = 12)

Multi Most Common in Window (MultiMCW) Prediction Test Estimate = 1.999159 / 2 bit(s)

Bitstring Lag Prediction Estimate: N = 101776287, Pglobal' = 0.50019269251081444 (C = 50894762) Plocal can't affect result (r = 25)

Lag Prediction Test Estimate (bit string) = 0.999444 / 1 bit(s)

Literal Lag Prediction Estimate: N = 50888143, Pglobal' = 0.25015172047634626 (C = 12721800) Plocal can't affect result (r = 13)

Lag Prediction Test Estimate = 1.999125 / 2 bit(s)

Bitstring MultiMMC Prediction Estimate: N = 101776286, Pglobal' = 0.50008456811129076 (C = 50883757) Plocal can't affect result (r = 27)

Multi Markov Model with Counting (MultiMMC) Prediction Test Estimate (bit string) = 0.999756 / 1 bit(s)

Literal MultiMMC Prediction Estimate: N = 50888142, Pglobal' = 0.2502104743048289 (C = 12724789) Plocal can't affect result (r = 13)

Multi Markov Model with Counting (MultiMMC) Prediction Test Estimate = 1.998786 / 2 bit(s)

Bitstring LZ78Y Prediction Estimate: N = 101776271, Pglobal' = 0.50008006313488451 (C = 50883291) Plocal can't affect result (r = 26)

LZ78Y Prediction Test Estimate (bit string) = 0.999769 / 1 bit(s)

Literal LZ78Y Prediction Estimate: N = 50888127, Pglobal' = 0.25021764352136133 (C = 12725150) Plocal can't affect result (r = 13)

LZ78Y Prediction Test Estimate = 1.998745 / 2 bit(s)

H_original: 1.860204

H_bitstring: 0.933194

min(H_original, 2 X H_bitstring): 1.860204

关于雅特力

雅特力科技于2016年成立,是一家致力于推动全球市场32位微控制器(MCU)创新趋势的芯片设计公司,拥有领先高端芯片研发技术、完整的硅智财库及专业灵活的整合经验,分別在重庆、深圳、苏州、上海、台湾设有研发、销售及技术支持分部。

雅特力坚持自主研发,以科技创新引领智慧未来,专注于ARM® Cortex®-M4/M0+的32位微控制器研发与创新,提供高效能、高可靠性且具有竞争力的产品。全系列产品采用55nm先进工艺,通过ISO 9001质量管理体系认证,缔造M4业界最高主频288MHz运算效能。自2018年正式对外销售至今,累积了相当多元的终端产品成功案例,广泛地覆盖工控、电机、车载、消费、商务、5G、物联网、新能源等领域,助力客户实现产业升级。

来源:AT32 MCU 雅特力科技

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

围观 37

简介

AT32系列MCU内部都有提供适合运行的内部高速时钟(HICK),其本质就是内置于芯片的RC振荡器。在25℃下,其典型值频率8MHz的精度由工厂校准到±1%,在-40到105℃,该内部高速时钟的精度达到±2.5%,可见精度会受到温度的影响。

为了降低环境温度对精度造成的影响,用户可在运行时间隙调用校准程序来进行校准。

校准及原理

校准

每颗AT32 MCU芯片的内部高速时钟在出厂时都有被进行校准,待芯片复位后该校准值会自动加载到CRM_CTRL寄存器的HICKCAL[7:0]位,与CRM_CTRL寄存器的HICKTRIM[4:0]位一起作用于HICK的校准,HICKTRIM[4:0]的复位值为0x20(不同系列该复位值可能不同),在外部电压和温度变化对内部高速时钟频率产生影响时,可通过软件对HICKTRIM[4:0]这些位进行编程,对HICK进行微调,以达到满足要求的频率。

原理

校准的原理就是对当前的HICK频率进行较为准确的测量,参考实际的测量值与典型值的比较结果,判断是否达到校准的目的。此处用到的HICK测量方法不是采用外部设备来进行的,而是使用片上定时器来对外部精准的时钟源周期进行计数,因定时器的计数时钟源于HICK,这样就可以通过精确的外部时钟源周期来推算出当前HICK的频率值。

在本应用示例及文档中,精准时钟源采用的是LEXT(通常RTC使用的32kHz晶振),图示显示了如何使用定时器计数个数来测量参考信号周期。

1.png

图1. 参考信号测量

如上所示,为提高计数测量的准确性,实际应用中可连续对多个LEXT周期进行计数,再用求平均值的方式来减小误差。频率计算公式:

Frequencytimer=(count1+count2+…+countN)/N*Frequencylext

因HICK直接或间接的提供给系统时钟,再通过timer频率和主频的关系,推算出此时HICK的频率,当前HICK的频率值减去HICK典型值就是此时HICK的误差频率:

Error(Hz)=Frequencyhick–8000000

硬件实现

由校准原理可知,要想计算出HICK的频率就必须得有一个准确的校准源,该文档示例推荐的是采用LEXT,并且该校准源需要连接到定时器的输入捕获通道。AT32 MCU可通过CLKOUT功能将LEXT校准源输出,再通过内部配置功能或外围连线将CLKOUT与定时器的输入通道连接

2.png

图2. 硬件连接

校准方法

前文提到设置CRM_CTRL寄存器的HICKTRIM位可调整HICK输出,校准流程首先按HICKTRIM的默认值为基点配置,准确的测量出此时HICK实际的频率值,然后按实际频率与典型值计算得到频率误差,判断该误差是否在可接受误差值范围内,如果是,则返回成功,如果不是,则轮询下一个HICKTRIM设置点,再进行测量判断,直到轮询完毕返回失败。

使用说明

函数说明

与本文档对应的示例代码中包含了三个主要的函数

3.png

a) clkout输出配置

主要进行校准源LEXT时钟的开启,并将它配置由clkout来进行输出。由于示例的MCU型号支持clkout与timer10 channel1进行内部连接设置,如果该函数内并未进行clkout对应GPIO Pin脚的初始化,并且采用外部连接,请加入GPIO Pin脚初始化即可。

b) timer输入配置

主要进行timer10的基础时钟配置、输入捕获配置及中断配置,默认采用校准源时钟的上升沿捕获。由于示例的MCU型号支持clkout与timer10 channel1进行内部连接设置,如果该函数内并未进行timer10 channel1对应GPIO Pin脚的初始化,并且采用外部连接,请加入GPIO Pin脚初始化即可。

c) HICK校准接口

该函数为程序运行时的校准函数接口,可在一定时间周期或条件下调用该函数进行HICK的校准,校准到满足误差范围的频率时,该函数返回成功,反之返回失败。

需注意:在校准过程中HICK会有一个调整的过程,故此过程中的的主频或外设频率可能非预期值,所以通讯类接口或时序强相关的外设需暂停使用,待校准完成后再开启使用。

宏定义说明

示例代码中有两个配置宏定义可以由用户按实际使用情况来进行修改。

4.png

ERROR_VALUE_MAX定义了可接受的最大误差范围(单位Hz),如上值(10000)即表示校准成功后的频率精度为±10kHz,用户可自行修改。需注意:由于HICK的校准特性关系,精度要求越高(即ERROR_VALUE_MAX值越小)时校准失败的概率越大。

CAPUTURE_NUM定义了LEXT校准源的捕获次数,再用累计求平均的方式减小误差。需注意:由于捕获计数时间点比较随机的关系,第一个计数值不准确,故读取的timer计数值需丢弃第一个计数,所以该宏定义值需大于1。

校准流程

可在系统运行时状态下调用校准函数接口hick_trimming进行校准。为防止非预期情况的发生,在调用校准前请确保各外设处于空闲未使用的状态。

首先会将校准前CRM_CTRL寄存器中的HICKTRIM值进行保留,初始校准值从TRIM_VALUE_MAX/2开始,对写入校准值后的HICK频率进行测量,量得误差精度是否满足ERROR_VALUE_MAX设定要求,如果是返回校准成功,如果未满足则继续轮询下一HICKTRIM值,直到轮询完所有,回写校准前的HICKTRIM值并返回校准失败。校准流程图如下:

5.png
图3. 流程图

初始校准值选择从HICK_VALUE_MAX/2开始的原因是HICKTRIM的复位值大致就与HICK_VALUE_MAX/2相当,这样更接近频率漂移的中心点,由中间往外轮询的查找方式,通常情况下采用这种方式进行轮询时可以更快的找出符合要求的校准值,减少了校准时间。

校准演示说明

示例代码是基于AT-START进行编写,为了更好的查看到校准效果,可采用示波器量测CLKOUT(PA8)的输出频率,频率值为HICK48(是8MHz典型值的6倍时钟),代码中有故意将HICK48调偏,当按下user button后开始校准,校准完毕串口1会输出校准结果(成功或失败),并可通过CLKOUT量测到校准后的HICK48频率值,示例演示的代码如下

6.png

注意事项

在使用该校准方法时需注意以下几点。

1. 系统时钟应直接或间接的由HICK提供。

2. timer计数时钟频率越高测量到的HICK频率越精确。

3. 示例demo所采用的方式是系统时钟与timer计数时钟同频,如果因应用场景需求有修改后不同频时,需注意调整频率对应关系部分的代码。

7.png

4. 在校准过程中可能导致主频或外设频率的变化,需注意此时如有外设还在运行时可能会出错。

5. 如所使用的系列型号不支持clkout与timer的输入通道内部连接时,需在配置函数中增加相应的GPIO Pin脚初始化。

6. 捕获次数宏定义CAPUTURE_NUM需大于等于2。

7. 最大误差宏定义ERROR_VALUE_MAX越大越容易校准成功,越小越可能校准失败。

来源:AT32 MCU 雅特力科技

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

围观 21
7月8日,2024慕尼黑上海电子展electronica China在上海新国际博览中心拉开序幕,作为全球电子行业的盛会,汇聚了国内外众多优质电子企业,为业界呈现一场前所未有的科技盛宴。

雅特力携高性能AT32 MCU与应用方案齐亮相,呈现了多款电机控制、工业控制、汽车电子、智能家居、消费、商务,及新能源等应用方案。现场人流攒动、氛围热烈!

多元产品布局 助力产业升级与智能化发展

随着科技的不断发展,市场对多元化MCU产品的需求日益增加。雅特力紧跟市场动态,积极应对变化,不断研发并推出符合市场需求的高性能MCU产品,以满足产品日益增长的性能要求与应用场景,此次会场展示了多款近期推出的AT32系列MCU产品。

1720489000403067.jpg

AT32F402/F405主流型MCU,内建独立的HS USB OTG(内建PHY,F405 only)与FS USB OTG,满足电竞市场、工业自动化、USB周边、物联网(IoT)及消费性电子等各种需高运算、高速USB应用需求;AT32L021低功耗系列MCU,最小封装面积仅3x3mm,深睡眠(Deepsleep)下电流约9uA,唤醒时间低于17us,待机模式(Standby)下电流仅为1.2uA,有效延长电池寿命,是便携式设备和物联网应用的理想选择。

此外,针对汽车电子市场的严苛要求,雅特力还推出了AT32A403A与AT32A423车规级MCU,这两款产品均通过了AEC-Q100认证,确保了其在复杂环境下的稳定运行,为汽车电子系统的安全性与可靠性提供了坚实保障。

面对未来市场需求的进一步拓展,雅特力持续加大研发投入,致力于推出更多具有创新性和竞争力的MCU产品。在本次展会现场,首次预告了两款即将面世的新品,雅特力近期将推出AT32M412/M416电机专用MCU,这两款产品集成2个比较器(CMP)和4个运算放大器(OP)(支持PGA模式),专为家电设备、工业设备、逆变器等电机或电源应用场景设计,将为用户带来更加精准、高效的电机控制体验。同时,AT32F455/F456/F457主流型MCU也将面世,它们不仅配备了CAN-FD接口(仅限F456)和USB OTG功能,还提供了144pin大尺寸封装选项,可广泛应用于扫地机,充电桩,DTU,HMI,PLC,安防,数字对讲机,电机控制,车载娱乐,网关等多个领域,满足市场对高性能、多功能MCU的需求。

雅特力以持续的技术创新,不断推动MCU技术的发展和应用领域的拓展,打造多元化的产品布局,进一步推动产业升级和智能化进程。

应用方案展示 

此次会场,雅特力展示了车载智能座椅、汽车定位报警器、汽车氛围灯控制器、攀爬车电调、编码器、洗衣机、电竞键鼠、数字对讲机等多款应用产品,为用户创造更加便捷、舒适、智能的生活体验。

1720489031846009.jpg
1720489037326333.jpg
1720489045172542.jpg
1720489051462315.jpg
1720489057712410.jpg

8k高速键盘及鼠标

采用雅特力AT32F405高速USB微控制器,集成独立的FS和HS USB OTG,内建高速USB PHY,大幅提升电竞键鼠反应速度和精准度,还提供封装尺寸最小为4 x 4mm,可满足各类小体积无线USB Dongle需求。

可实现有线或无线的高Report Rate,最高可达8k Report Rate的速率;通过拓展外部RF可实现三模连接,即USB+BLE+2.4G模式。

攀爬车电调

采用雅特力AT32F421系列超值型MCU,具有高PWM频率与高PWM解析。

智能化扭矩输出,低速时具有极佳线性和大扭矩,满足车辆低速攀爬的同时也可满足暴力启动抬头、直线高速等需求,在玩具车竞赛中表现优异。

车载智能座椅

采用了雅特力新推出的车规级AT32A403A系列芯片,通过AEC-Q100车规级可靠性认证。

车载座椅可根据乘客体型、坐姿的变化,感知压力分布,进行自适应调节座椅;四向压感头枕可以自动识别乘员头部位置,智能调节头枕高度。

来源:AT32 MCU 雅特力科技

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

围观 31

页面

订阅 RSS - 雅特力