*阅读说明:排名不分先后,详细项目过程及源码资料等请戳原链接查看。
最近在学习 ETH 模块,ETH 模块具有 HTTP 服务的功能,我将在本帖中探讨如何使用 HTTP 服务搭建一个本地 Web网站,并分享一些我所获得的经验。
CMake 是一个比较流行的跨平台构建工具,它可以自动生成 Makefile,本篇文章主要介绍怎么用 CMake 和 MinGW-w64 构建 APM32 工程,编译器使用 gcc-arm-none-eabi,调试器使用 DAPLink。
最近在做的一个项目中,需要经常把一些参数下载到I2C EEPROM中,然后MCU上电去读取。如果在产品量产过程中,可以使用烧录治具往EEPROM写入一次即可。但是在调试开发阶段,需要经常修改这些数据,调试起来非常不方便。 我调试的环境是MDK-Keil,于是网上了解了下如何制作Keil的下载算法,下面介绍下基于APM32F407如何制作I2C EEPROM(AT24C02型号)的Keil下载算法,这样在我们下载代码时可以一键把数据烧录到EEPROM中。
在这篇帖子中,我打算分享我的学习经验和移植过程,包括如何开始学习uC/OS-III、配置步骤、移植过程中遇到的问题以及解决方法。我希望通过这篇帖子,能够帮助那些和我一样对操作系统感兴趣的朋友们,一起探索如何在APM32F407 上应用 uC/OS-III。
APM32 官方 SDK 中提供了三种开发环境:Keil、IAR 和 Eclipse。不否认这三种环境的强大,但是在 AI 时代做嵌入式开发,用这三种环境就显得有点不够优雅了。本篇文章主要介绍怎么用Clion 开发 APM32,涉及 CMake、Makefile、OpenOCD 和PyOCD 的知识,供大家参考。
本贴主要内容为 MbedOS 的USB Driver 使用方法,及其 USB Device Stack 和 USB Component 介绍。
我们是要在 APM32F411 上运行TinyMaix 框架,需要准备的源码自然是APM32F411相关的SDK,与 TinyMaix 源码。
本文的一个目的主要是解决一个问题:MCU为什么要有ISP?
借助 MicroPython ,我们完全可以通过 Python 这种脚本语言,实现硬件底层的访问和控制,而不用去了解底层寄存器、数据手册、SoC厂的库函数等,就可以轻松的控制硬件,比如 LED灯、LCD显示、读取电压、读取按键等。
下面是使用栈回溯方法自动分析定位 Hard Fault 错误。主要实现的功能有: 1、保存发生错误瞬间的CPU寄存器 2、自动诊断 Hard Fault 故障原因 3、自动回溯进入 Hard Fault中断之前的函数调用关系(当然要精确定位到哪个文件、哪一行需要借助gcc工具链)
我发现可以使用开源工具链GCC+Makefile编译程序。经过分析发现极海的Eclipse工程就是基于GCC工具链进行编译的,这样看来我只需要搭建GCC+Makefile的本地编译环境就可以在不使用IDE的情况下完成对APM32F411的程序编译了。 完成程序的编译后,我们需要对程序进行下载,由于APM32F411的TINY板卡的板载仿真器是基于CMSIS-DAP而来的,我们可以轻易的就想到使用ARM提供的PyOCD进行程序下载。
目前,RTT-Studio 环境已经支持了 APM32F0/F1/F4/E1/S1 系列的 MCU,每个系列 MCU 的 RTT驱动使用方法基本相似。下面我就以 APM32F407 这款 MCU 为例,介绍下在 RTT-Studio 环境下如何使用 APM32 的外设驱动,希望能帮助到大家快速把 APM32 的 RT-Thread 驱动使用起来。
SMC,全称是 StaticMemory Controller ,即静态存储控制器。该外设用于驱动静态存储设备,比如 SRAM、PSRAM、NandFlash、NorFlash、PCCard 。APM32F4xx SMC 内部有四个存储块,每个存储块都对应控制不同类型的存储器,通过配置 SMC 控制寄存器选择不同的存储器类型;任一时刻只能访问一个外部设备;每个存储块都可以单独配置,SMC 控制时序可编程以适用不同的外部存储设备。
在有些情况下,我们想要把代码放到SDRAM运行。下面介绍在APM32的MCU中,如何把代码重定位到SDRAM运行。对于不同APM32系列的MCU,方法都是一样的。
|