[APM32F4]

国产MCU专栏 第75期 极海APM32F411 新品试用,优秀原创帖合集

[复制链接]
3135|1
手机看帖
扫描二维码
随时随地手机跟帖
21ic小能手|  楼主 | 2024-1-26 17:37 | 显示全部楼层 |阅读模式


*阅读说明:排名不分先后,详细测评过程及源码资料等请戳原链接查看



使用栈回溯方法自动分析定位 Hard Fault 错误。主要实现的功能有:
保存发生错误瞬间的CPU寄存器
自动诊断 Hard Fault 故障原因
自动回溯进入 Hard Fault 中断之前的函数调用关系(当然要精确定位到哪个文件、哪一行需要借助gcc工具链)
对于所有 Cortex-M3/M4 内核的 MCU ,该代码都是适用的。以 APM32F411 为例进行分析。



要在 APM32F411 上运行TinyMaix 框架,需要准备的源码自然是APM32F411相关的SDK,与 TinyMaix 源码。



分享一个基于 APM32F411 MCU 控制的一个软开关电路的设计。



初始化串口1
编写串口1接收中断及判断接收到回车进行发送。



拿到了他们的APM32F411 TINY 板卡后想着搞点事情,手上有一个0.96寸的OLED屏幕,想着拿这个板卡点亮这个屏幕,但想着点亮多没意思,于是便有了这个笔记“基于APM32F411 移植U8g2”。



我只需要搭建GCC+Makefile的本地编译环境就可以在不使用IDE的情况下完成对APM32F411的程序编译了。
完成程序的编译后,我们需要对程序进行下载,由于APM32F411的TINY板卡的板载仿真器是基于CMSIS-DAP而来的,我们可以轻易的就想到使用ARM提供的PyOCD进行程序下载。






该测试代码使用C语言进行编写,涵盖列表、数学矩阵等运算操作,并没有与内核相关的操作,单纯是进行运算测试。



本帖子就APM32F411如何在Eclipse环境下开启FPU,进行一个简单的梳理及分享。



利用pyocd和Python脚本对APM32F411进行了LED输出状态的读取以及读保护的解除。



翻阅APM32F411的手册,竟然发现它是支持ISP启动的。



用Python+pyocd配合APM32F411tinyboard 板卡上的Geehylink对内存里面的数据进行读取然后再用波形描绘出来。



是不是也可以直接读取APM32F411的内存里面的内容然后直接显示出来,想保存的时候就直接保存呢?



正式开始前先简单说一下啥是MCO(可能大家一头雾水),MCO:Main clock output,即主时钟输出功能。它在APM32F411上可以输出内部时钟、外部时钟、PLL时钟、或者主时钟的时钟信号输出到指定的引脚上。



大致了解APM32F411TINY板的硬件设备,下面则是编写代码烧录进芯片中看现象了。



本次测试主要使用APM32F411 TINY板OTG FS外设模拟成HID鼠标,开启OTGFS WAKEUP中断并设置在USB suspend事件中进入内核深度睡眠模式,以此测试OTG FS实际应用时的功耗。



整理一份APM32F411关于FreeRTOS源码移植、验证及过问题的思考记录。



在Keil中发现了可以进行模拟调试,同时,手上刚好收到了极海新出的APM32F411开发板,因此,此次以该系列开发板的工程,进行一次模拟调试记录。



最近在编写DMA_ADC例程的过程中出现了一个中断配置的问题,在ADC采集过程中,结合手册进行ADC连续转换模式配置采集,手册上给出需要进行中断配置的信息,但是真实情况不需要进行中断配置也可以进行ADC连续转换采集,因此,我没过滤掉ADC采集中开启中断配置的信息,开启了ADC中断采集,因此这次以APM32F411官方例程中的DMA_ADC例程,复刻了此次出现的问题。



最近在学习DSP库,有去关注到Ti的DSP库,从中又了解到了Ti的IQmath。IQmath定点库适用于M0,M0+,M3这些不带FPU的硬件FPU的内核上,但最近手头入手了一块极海的APM32F411的M4内核开发板,因此基于APM32F411开发板,进行一个IQmath库的移植操作记录。






最近看了看ADC采样,想着把ADC和DMA以及TMR结合起来研究看看,达到使用定时器触发ADC采样,并使用DMA传输的功能,最近正好收到了APM32F411开发板,就想着使用这款开发板实现一下这个功能。



Mbed OS是由ARM亲自操刀的一款针对Arm Cortex系列芯片的开源物联网RTOS。而我手头上刚好有一块apm32f411的Tiny板,便借由这块板对Mbed OS进行学习。









RTC Demo初始化后,Alarm开始倒计时,LED2亮。五秒钟后,闹钟被唤醒,LED2熄灭。—通过USART1串口助手可以看到监控系统的状态。



APM32F411是一款基于32位Arm Cortex-M4F内核的微控制器。硬件FPU是Arm Cortex-M4F的一大优势。合理应用硬件FPU可以大大缩短运算时间。



感受一下APM32F411部分程序在FLASH和SRAM的运行速度。


















相关基础概念
启动模式
启动文件



本文旨在分析APM32F411系列芯片例程在Keil MDK环境下,如何自定义一个函数,实现中断服务函数的重映射。






访问 极海APM32 MCU 论坛,可查看更多开源作品~

使用特权

评论回复
shenxiaolin| | 2024-2-2 11:44 | 显示全部楼层
感谢分享

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

132

主题

661

帖子

22

粉丝