*阅读说明:排名不分先后,详细项目描述、源码及原理图资料等请戳原链接查看。
这次我们来聊聊关于APM32 Flash里面的几个关键概念,我们平时经常会使用到,但往往也容易忽略。为了更好的理解这些概念,我总结了以下几个问题和主题,同时也作为本文的一个摘要目录,以便于各位逐步深入探讨: 1、Flash的等待周期是什么?怎么理解?有什么作用? 2、闪存的带宽是128位,怎么理解?可以理解为读取一次(一个读指令)可以读取128位的数据吗?如果是这样,实际MCU芯片的CPU却是32位的,这两者之间怎么协调呢? 3、Flash预取缓冲区到底是个啥?为什么低于2.1V需要关闭预取缓冲区?为什么高于2.1V需要开启预取缓冲区? 4、如何理解I-CACHE和D-CACHE?芯片设计时,为什么D-CACHE要优先于I-CACHE访问? 5、flash中的并行位数到底是什么?影响因素?
在现代网络应用开发中,Socket编程是实现计算机之间高效通信的基础。本文将深入探讨基于LWIP2.2的Socket编程,特别是在APM32嵌入式平台上的应用。Socket作为网络通信的核心工具,允许开发者通过IP地址和端口号建立连接,实现数据的发送和接收。我们将介绍Socket的基本概念、编程流程以及在LWIP中如何使用Socket API进行网络通信。
我们很多人对加密算法这一块都不是太过于了解。就像我们这一次介绍的AES算法,这到底是个什么玩意儿呢?其实,AES算法是一种典型的对称加密算法。
在APM32微控制器的开发中,链接文件和启动文件是固件编写的关键组成部分。它们相辅相成,确保程序从上电到运行的每个环节都能顺利进行。接下来,我们将详细分析这两个文件的内容及其相互关联。
最近在学习操作系统,发现了OSAL这个玩意儿,网上查了一下,OSAL的主要目的是提供一个统一的接口,使得上层应用程序能够独立于底层操作系统的具体实现,从而简化多平台开发的复杂性。目前已经有大佬已经完成了OSAL的移植框架,下面简单讲讲怎么将这个玩意儿移植到APM32F407。
本文将以 APM32 控制器为例,通过实验介绍RAM的相关数据段以及资源分配情况。
最近学习了有关MPU的内容,本帖将对MPU的功能,相关寄存器的配置,以及在实际编程中如何运用MPU这三个方面作一个简单的分享。
本文旨在基于已有的TCP RAW例程,修改并实现一个UDP RAW例程。通过对RAW编程和UDP协议的深入探讨,我们将逐步展示如何在软件中实现这一功能。接下来的内容将涵盖RAW编程的基本概念、UDP的特点以及具体的软件实现步骤。
在构建UDP实例时,我们采用了裸机开发的方式,也就是说没有使用操作系统,因此使用了RAW编程接口。虽然RAW编程接口可以提供更高的程序效率,但它需要对LWIP有深入的了解,并且不适合处理大数据量的场合。本篇文章将介绍NETCONN编程接口。使用NETCONN API时,需要操作系统的支持,这里我们使用的是FreeRTOS操作系统。
在讨论单片机时,一个常见的问题是,main 函数是否在中断处理程序内执行。特别是,当复位中断(Reset_Handler)直接调用 main 函数时,是否意味着所有程序都在复位中断中运行? 并结合 Keil MDK 与APM32 的工程代码来作进一步分析。
准备: 1.APM32F407IG-Tiny。 2.已经移植好的DHCP的例程 3.一根TYPE-C的USB数据线,网口线。
这篇文章,我会以Segger的SystemView为例,讨论如何在ucos3环境中移植和使用SystemView。
最近了解了ETH的TCP相关知识,准备在mbedos上开发一个TCP Client Demo,这篇文章从TCP的定义以及后面具体的代码实现,记录了我在开发时遇到的一些问题以及经验。
介绍了 mbed rtos 的一些基本知识,以及线程的同步机制
介绍 mbedos 的线程间的通讯以及在中断服务函数中的使用。
RTC在APM32中是一个简单但功能强大的外设,不仅具有计时和中断触发功能,还能在掉电情况下继续运行,保留重要数据。
本文将探讨Keil编译器中不同优化等级对代码执行效率的关系。 测试环境: 开发板:APM32F407 主频:168MHz
这篇文章我们聊聊当我们选择不同的编译优化等级时,这段代码到底做了什么样的优化,优化的点到底在哪,并且当优化等级的提高时,代码的内存占用有什么变化。
本文将深入探讨uC/OS中的消息队列功能,包括其工作原理、实现方法以及使用实例。
分析一下其相关函数的实现细节。
|