0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

航芯通用MCU技术常见问题 | F4专题

上海航芯 2022-09-07 09:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

航芯“通用MCU技术常见问题”上线啦!

航芯“通用MCU技术常见问题”专题持续更新中!本文将介绍F4专题,如对产品有其他疑问,欢迎加入航芯MCU技术交流群共同探讨!

F4专题 - 工具篇

1

KEIL

1.1 Keil-Debug 工具

ACM32F4XX 系列支持的在线仿真器包括:J-Link-V9(含)以上、U-Link2、CMSIS-DAP等,使用 J-Link 在线调试时,Keil 推荐在 MDK5.31(含)以上,J-Link 驱动建议在 V6.70e(含)以上。

eba3c180-2d5d-11ed-9ade-dac502259ad0.png

1.2 Keil-Pack 支持包

ACM32F4XX 系列提供 PACK 支持包,详细信息如下表:

ebcd4208-2d5d-11ed-9ade-dac502259ad0.png

1.3 Keil 工程编译失败或 F12 无法跳转

请确认工程文件目录没有中文名称。

2

IAR

2.1 IAR-Debug 工具

ACM32F4XX 系列支持的在线仿真器包括:J-Link-V9(含)以上、CMSIS-DAP 等,使用 J-Link 在线调试时,IAR 推荐在 IAR8.50(含)以上,J-Link 驱动建议在 V6.70e(含)以上。

ec0097a2-2d5d-11ed-9ade-dac502259ad0.png

1.2 IAR-Pack 支持包

ACM32F4XX 系列提供 PACK 支持包,详细信息如下表:

ec29b6f0-2d5d-11ed-9ade-dac502259ad0.png

3

开发板仿真调试

ACM32F4XX 系列开发板自带 CMSIS-DAP 在线仿真器,用户使用时可直接使用 USB 连接线将开发板 LinkUSB 端口与 PC 端的 USB 接口直接连接,WIN7 需要安装 SDK 中的USB 驱动(AisinoChipCDC.inf),WIN7 以上系统免驱。

4

开发板串口调试

ACM32F4XX 系列开发板自带串口调试芯片,与 CMSIS-DAP 为同一个 USB 接口,连接 PC 端后需要安装 USB 转串口驱动(AisinoChipCDC.inf),此时设备管理器显示设备名称:AisinoChip Virtual Com Port,该虚拟串口主要有两个功能:

1.作为串口下载 MCU 固件使用。

2.作为用户 APP 应用程序串口调试输出。

注意:ACM32F4XX 芯片使用 PA9/PA10 作为串口的输入/输出管脚,因此在使用 MCU的 PA9/PA10 与第三方串口助手连接调试时,需要将其与串口调试芯片断开。

F4专题 - 应用篇

1

硬件设计

1.1 是否与 SXX32FXXX 硬件兼容?

ACM32F4XX 系列芯片硬件管脚可以与 SXX32FXXX 管脚做到兼容,原 SXX32FXXX的部分电源管脚被 ACM32F4XX 复用作为外设管脚,详细的硬件管脚配置及复用功能可参考《ACM32FXXX 对比 SXX32FXXX 差异说明.pdf》,具体以文档为准。

1.2 硬件设计注意事项

1.2.1 电源电路

ACM32F4XX 系列芯片 VDD/VDDA 电压输入范围:1.7V~3.6V,VDD 与 VDDA 之间建议用磁珠隔离,GND 与 AGND 之间建议用 0Ω 电阻隔离。

1.2.2 外部晶振电路

ACM32F4XX 系列芯片外部高速晶振输入范围:4~48MHz,典型值推荐使用 8MHz 或者 12MHz,无需外接 RF反馈电阻。

1.3 是否支持 FSMC/SDIO/以太网/ISO7816 接口?

暂不支持。

2

SDK 接口驱动库

2.1 驱动库版本

2.1.1 Keil-MDK 接口驱动库版本

ACM32F4XX 系列芯片外设接口驱动库提供 HAL 库(Hardware Abstraction Layer)、SPL库(Standard Peripherals Library),LL 库(Low-Layer)暂不支持,详细信息可咨询销售或FAE。

2.1.2 能否提供驱动库移植说明?

可以,请参考《ACM32 固件库_使用说明.pdf》文档。

2.1.3 写入启动序列后如何回到 Boot 模式?

软件程序中需要预留 HAL_EFlash_Return_To_Boot()接口函数。

2.1.4 Flash 程序如何实现回到 Boot 模式?

软件程序在执行完 HAL_EFlash_Return_To_Boot()后,如需回到 Boot 模式,可以采用重新上下电、外部 RSTN 管脚复位或 Flash 程序设置 EFC_RST 寄存器进行复位,其中 EFC_RST复位前需要将系统时钟降低至 64MHz 以下。

2.2 系统时钟

2.2.1 系统时钟如何切换至外部时钟源?

ACM32F4XX 系列芯片上电默认使用内部时钟,如需使用外部晶振作为时钟源,需要将软件程序中的宏定义 PLL_SOURCE_FROM 修改成外部时钟即可。

2.2.2 内部 RC 时钟精度是多少?

ACM32F4XX 系列芯片内部 RC64M/RC32K 精度大概率在±1%(含温漂)左右。

2.3 中断优先级配置

2.3.1 M33 内核中断优先级配置

根据 M33 内核手册可知 Application Interrupt and Reset Control Register 寄存器的bit[10:8]用于设置优先级分组,Interrupt Priority Registers 寄存器的bit[7:5]用于设置中断优先级(抢占式优先级和响应式优先级),数字越小优先级别越高,优先级分组说明如下表:

ec3fc5f8-2d5d-11ed-9ade-dac502259ad0.png

抢占式优先级和响应式优先级的区别:

1.高抢占优先级中断可以打断低抢占优先级的中断,实现中断嵌套。

2.抢占优先级相同,当中断同时发生时,高响应优先级的中断先执行,两者没有嵌套关系。

3.抢占和响应优先级都相同,当中断同时发生时,硬件中断编号越小的中断先执行。

4.一般情况下,系统代码只设置一次中断优先级分组,设置好分组之后一般不会再改变分组。随意改变分组会导致中断管理混乱,程序出现意想不到的执行结果。

M33-NVIC 相关函数如下表:

ec6da90a-2d5d-11ed-9ade-dac502259ad0.png

2.4 中断向量表地址偏移

2.4.1 M33-IAP 升级中断向量表地址偏移

根据 M33 内核手册可知该架构提供中断向量偏移寄存器 REG_NVIC_VECTOR,因此在做 IAP 升级功能时,如需要实现中断向量表地址偏移,相关参考代码如下:

/* Vector Table Relocation in Internal FLASH */ 
SCB->VTOR = EFLASH_BASE | VECT_TAB_OFFSET;

2.5 低功耗

2.5.1 STOP 模式下功耗偏高

根据应用电路情况,可将未使用的管脚配置成模拟模式,已使用的管脚根据外部电路,配置成数字模式,选择合适的上下拉或输出合适的高低电平。

3

固件下载

3.1 是否支持 J-Flash 下载固件?

支持,请参考《航芯通用 MCU 使用 JFlash 烧录程序的方法说明.pdf》文档。

3.2 是否支持离线批量烧录?

支持,离线烧录器详细信息可咨询销售或 FAE。

3.3 原厂固件下载工具 UART 波特率自适应失败

请使用最新版本的下载工具(Aisinochip_MCU_Download_Tool_v1.4.0.3.exe(含)以上)。

4

补充功能

4.1 是否支持 Flash 读保护?

支持,请参考《航芯 ACM32F 系列芯片 Flash 读保护功能说明.pdf》文档。

4.2 是否支持 RTOS 操作系统

支持 uCOS-IIFreeRTOSRT-Thread 操作系统,详细信息如下表:

eca8cf58-2d5d-11ed-9ade-dac502259ad0.png

4.3 Dhrystone 测试性能

M33 内核:Keil 优化等级-Ofast,开启 ICACHE 和 DCACHE 的情况下,Dhrystone 2.1测试 1.38 MIPS/MHz。

ecc2fc20-2d5d-11ed-9ade-dac502259ad0.png

5

GPIO

5.1 输入是否支持 5V tolerant?

ACM32F4XX 系列部分管脚支持,详细信息可参考对应型号的 DataSheet 文档。

5.2 GPIO 管脚上电默认状态?

ACM32F4XX 系列芯片上电,除部分特殊的功能管脚外(见下表),其余管脚默认状态为模拟模式(数字功能失效,上下拉电阻失效)。详细信息请参考《航芯 ACM32FXXX 系列芯片 GPIO 应用手册.pdf》文档。

ed024b3c-2d5d-11ed-9ade-dac502259ad0.png

5.3 PC13/14/15 作为通用管脚注意事项

除正常配置 GPIO 管脚功能外,还需要调用 RTC 相关寄存器,相关参考代码如下:

/* RTC access enable */ 
System_Enable_Disable_RTC_Domain_Access(FUNC_ENABLE); 
__HAL_RTC_PC13_SEL(0); // GPIO function 
__HAL_RTC_PC13_PULL_UP_ENABLE(); 
__HAL_RTC_PC13_DIGIT();

5.4 GPIO 最高翻转速率?

GPIO 翻转速率最高 50Mbps。

5.5 FT 和 TC 管脚的区别

FT:5V 耐压的管脚 IO,TC:标准 1.7V~3.3V 的管脚 IO。FT 管脚相对于 TC 管脚可以防止外部 IO 电流倒灌。

6

TIMER

6.1 PWM-duty=0 输出异常

建议通过配置成 GPIO 功能软件绕过,或通过 MOE/OSSI/OSSR/CCxE/CCxNE 组合位配置 PWM 模式绕过。

6.2 CCRx 输出比较波形周期不准

建议尝试打开 CCRx 寄存器预装载功能。如使用 CCRx 功能实现计数延时功能,则需要关闭 CCRx 预装载功能。

6.3 TIMx 刹车源信号极性如何配置?

对于 TIMx_BKIN 外部管脚和 COM1&2_OUT 源信号,可通过 TIMx_BDTR 寄存器的BKP 位设置;对于 CPU_LOCKUP、SRAM_PARITY 和 LVD_LOCK 内部信号,刹车源极性不需要设置。

7

ADC

7.1 ADC_VBAT(1/4 分压)需要外部分压吗?

不需要,内部已配置 1/4 电阻分压,外部不需要单独的分压电路,如下图所示,内部分压电阻 R1+R2 总阻值为 1.2KΩ 左右,VBAT 为芯片 ADC 的输入管脚。详细信息请参考《航芯 ACM32FXXX 系列芯片 ADC 应用手册.pdf》文档。

ed23778a-2d5d-11ed-9ade-dac502259ad0.png

7.2 ADC_Buffer 通道与普通通道是否有区别?

有区别,ADC 的 Buffer 是指缓冲放大器,相对于普通的 ADC 通道,带 Buffer 的 ADC通道输入范围小一点,输入阻抗大一点,详细信息可参考对应型号的 DataSheet 文档。

7.3 ADC 如何使用内部参考电压?

部分封装芯片 VREFP 管脚内部与 VDDA 连接在一起,因此无法使用内部参考电压。对于单独封装出 VREFP 管脚的封装芯片可以通过悬空 VREFP 管脚配置使用内部参考电压。

7.4 ADC 正常采样结果计算不准

可通过调用 ADC_GetVrefP 函数校准参考电压(出厂前使用 3.0V 对 BGR 校验)。

7.5 ADC 外部分压后采样值偏低,如何处理?

ADC 采样时间不足的情况下会引入 RAIN 电阻,导致外部管脚分压偏低,可以通过增大 ADC 采样时间恢复正常。

8

RTC

8.1 是否支持 RTC 外部独立供电?

ACM32F4XX 没有单独 vBat 接口给内部 RTC 模块供电(不支持外部电池给 RTC 供电,主区供电可关闭-StandBy 模式),下图为芯片内部电源示意图,此时 IWDT 和 RTC 仍能继续工作。如需外部独立给 RTC 供电方案,可参考《VBAT&VCC-WAKE_V0.2.pdf》文档。

ed5ba2b8-2d5d-11ed-9ade-dac502259ad0.png

9

UART

9.1 是否支持 9bit 数据位传输?

硬件本身不支持 9bit 数据位,根据应用需要,可借助校验位/STOP 位替代增加数据位数。

9.2 FIFO 使能 1 字节发送中断无法产生中断

串口发送使能+串口使能+FIFO 使能的情况下,FIFO 深度配置 1/16 字节时,发送 1 字节会直接将数据填进移位寄存器,而不经由 FIFO,进而不产生中断;如初始化不开启串口发送使能,在数据填充完毕后再开启,则发送数据会经过 FIFO 再到移位寄存器,此时能正常产生中断。

10

OPAMP

10.1 OPAMP 失调电压如何修调?

上电后可使用芯片 NVR 内部保存的修调值,或上电循环自修正。

11

CAN

11.1 接收/发送时是否支持时间戳?

不支持。

11.2 是否支持 BUS_OFF 硬件自恢复?

不支持 BUS_OFF 硬件自恢复(ABOM 功能),可通过在 BUS_OFF 中断中让 CAN 总线进入恢复模式,间接实现 BUS_OFF 硬件自恢复。

11.3 是否支持禁止自唤醒?

不支持,ACM32F4XX 在检测到 CAN_RX 上低电平后会强制唤醒。

11.4 硬件重发能否关闭?

无法关闭,ACM32F4XX 固定使能硬件重发功能。

11.5 接收 FIFO 溢出时数据如何处理?

接收 FIFO 满时,ACM32F4XX 固定会丢弃新数据,保留老数据。

11.6 发送 FIFO 数据帧发送顺序?

ACM32F4XX的 CAN 模块只有13字节的发送 FIFO,因此发送的数据帧只能依次发送,没有额外的数据帧缓存空间。

11.7 接收数据正常,发送数据失败

此类问题通过查看错误代码获取寄存器(CAN_ECC)可以大致了解出错原因,若问题主要集中在 CRC 分隔符/ACK/ACK 分隔符错误码,推荐 CAN 通讯时切换至外部晶振模式。

12

USB

12.1 是否支持免晶振模式?

支持,系统时钟配置使用内部 RC 时钟。

如系统时钟配置外部晶振模式,建议将 USBPHY 时钟通过 OSC_MODE 配置为强制选择内部 RC 模式。

13

SPI

13.1 SPI 最高速率?

SPI 主机模式:ACM32F4XX 受 GPIO 速率影响,最高 50Mbps;SPI 从机模式:ACM32F4XX 最高速率 30Mbps。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    147

    文章

    18613

    浏览量

    387181
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    武汉MCU的功耗如何优化?有哪些低功耗模式和节能技术

    武汉MCU的功耗如何优化,有哪些低功耗模式和节能技术
    发表于 12-08 07:44

    中科CKS32F030F4P6 MCU在电池包中的应用方案

    CKS电池包显示板基于32位低功耗MCU:CKS32F030F4P6设计,内核ARM Cortex-M0+,工作于 48MHz 时钟频率, 高速的嵌入式闪存(FLASH 最高可达 32K 字节
    的头像 发表于 11-12 09:44 3241次阅读
    中科<b class='flag-5'>芯</b>CKS32<b class='flag-5'>F030F4</b>P6 <b class='flag-5'>MCU</b>在电池包中的应用方案

    精彩亮相2025工博会,荣获“集成电路创新成果奖”!

    了“集成电路展区”,受邀参展,在这场工业盛宴中展现了自身的创新实力与前沿技术。1精彩亮相,彰显“中国”力量本次工博会,
    的头像 发表于 09-30 18:02 3430次阅读
    <b class='flag-5'>航</b><b class='flag-5'>芯</b>精彩亮相2025工博会,荣获“集成电路创新成果奖”!

    ZYNQ UltraScalePlus RFSOC QSPI Flash固化常见问题说明

    璞致 ZYNQ UltraScalePlus RFSOC QSPI Flash 固化常见问题说明
    发表于 08-08 15:49 0次下载

    GD32F4xx系列MCU基础工程资料

    GD32F4xx系列MCU基础工程创建.
    发表于 08-04 14:53 2次下载

    源半导体)32位 无线射频,超低功耗,通用高性能MCU,存储芯片 选型

    通用高性能系列 CW32A030C8T7 CW32F002F3U7 CW32F002F3P7 CW32F020F6U7 CW32F020K6
    发表于 07-09 17:11

    PCBA代工避坑指南:常见问题+解决方案全解析

    一站式PCBA加工厂家今天为大家讲讲PCBA代工代购元器件常见问题有哪些?PCBA代工代购元器件常见问题及解决方案。随着科技的不断发展和市场需求的变化,越来越多的企业选择通过外包方式进行PCBA生产
    的头像 发表于 07-09 09:38 470次阅读

    品速递 | 海科技 CS32F090:大容量高性价比MCU

    膨胀的固件与数据,同时还要在功耗上实现突破,延长电池供电设备的使用寿命。海科技(股票代码:688595)凭藉“模拟+MCU”双技术平台优势,持续深耕通用
    的头像 发表于 05-28 17:59 1387次阅读
    <b class='flag-5'>芯</b>品速递 | <b class='flag-5'>芯</b>海科技 CS32<b class='flag-5'>F</b>090:大容量高性价比<b class='flag-5'>MCU</b>

    STM32MCU市场价又暴涨了!顺HK32MCU不涨反降普惠产业,速来Pick!

    HK32MCU顺芯片的主要产品阵列包括基于 ARM Cortex-M0、M3、M4以及 RISC-V 等内核的二十九大家族 300 余款工业 / 商业 / 车规级、通用 / 专用
    发表于 05-28 10:09

    deepin 25系统安装常见问题

    随着 deepin 25 系列版本的发布,我们特别推出 deepin Q&A 常见问题指南,旨在帮助您轻松应对安装、升级及使用过程中可能遇到的常见问题
    的头像 发表于 04-14 14:08 4500次阅读
    deepin 25系统安装<b class='flag-5'>常见问题</b>

    STM32H7和F4做永磁同步电机FOC控制如何选型,哪个开发更好呢?

    研究生新生,导师安排了一个和企业合作的永磁电机FOC驱动项目。希望选用H7或F4的某一款,除了基本的六路PWM,电压电流温度反馈保护等功能外,还希望支持Ethernet,CClink等现场总线通信
    发表于 03-07 07:21

    海康机器人F4系列:搬运多面手,拓宽应用场景

    海康机器人F4系列叉取机器人以其卓越的性能,成功突破了传统叉车在搬运物料上的局限性,大幅拓宽了搬运对象与场景覆盖范围。 这款叉取机器人能够应对多种高度、形态各异的物料搬运需求。无论是圆形物料、超宽
    的头像 发表于 02-19 15:23 1035次阅读

    【新品介绍】F4系列 国产640PIN高密便携式连接器

    F4系列是腾方中科自主研发设计生产的一款小型化连接解决方案。是基于F2的基础上,增加了更多信号通道的连接,可安装4个模块,最大支持640个信号点,支持I/O混合通道模块。以及其便携式的设计,使得它在
    的头像 发表于 02-06 09:15 1117次阅读
    【新品介绍】<b class='flag-5'>F4</b>系列 国产640PIN高密便携式连接器

    电子设备EMC测试整改:常见问题与解决方案

    深圳南柯电子|电子设备EMC测试整改:常见问题与解决方案
    的头像 发表于 12-23 11:47 1857次阅读
    电子设备EMC测试整改:<b class='flag-5'>常见问题</b>与解决方案

    福禄克技术专家莅临智进行技术交流

    过程中,福禄克工程师凭借其丰富的专业知识,详细讲解了A40B系列精密分流器的工作原理、关键技术参数、操作方法以及常见问题的解决方案。智员工们表现出了极高的学习热情和积极性,
    的头像 发表于 12-13 18:02 1012次阅读
    福禄克<b class='flag-5'>技术</b>专家莅临<b class='flag-5'>航</b>智进行<b class='flag-5'>技术</b>交流