*阅读说明:排名不分先后,详细测评过程及源码资料等请戳原链接查看。
使用栈回溯方法自动分析定位 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环境下,如何自定义一个函数,实现中断服务函数的重映射。
|