如程序清单一, STM32启动代码一共 224 行,使用了汇编语言编写,这其中的主要原因下文将会给出交代。现在从第一行开始分析:    第 1 行:定义 是否使用外部 SRAM ,为 1 则使用,为 0 则表示不使用。此语行若用 C 语言表达则等价于: #define DATA_IN_ExtSRAM 0    第 2
本文基于STM32H750核心,学习使用SDMMC1(SDIO)外设,用CubeMX创建HAL库工程,用SDIO读取TF卡,用FATFS文件系统读出里面的文件。文末有工程链接。一、CubeMX创建工程这里跳过H750时钟的配置,主要是SDMMC1(SDIO)的配置和FATFS文件系统配置。因为CubeMX自带了FATFS,所以不需要去网上拷贝。   再配置一个串口,方
1.模仿 STM32 寄存器定义为了开发方便, ST 官方为 STM32F103 编写了一个叫做 stm32f10x.h 的文件,在这个文件 里面定义了 STM32F103 所有外设寄存器,我们可以使用其定义的寄存器来进行开发,比如我 们可以用如下代码来初始化一个 GPIO: 上述代码是初始化 STM32
1.什么是DMA?DMA:Direct Memory Access,直接存储器存取。是一种计算机系统中用于高效地实现数据传输的技术。DMA允许外设设备(如硬盘、显卡、网络适配器等)直接访问主内存,而不需要CPU的干预。2.DMA的作用DMA传输是将数据从一个地址空间搬运到另一个地址空间,提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。这种数据传输无需CPU的干预,因此CPU可以专注于处
一、SD卡简介1、SD卡分类全称Secure Digital Card,称为安全数字卡(安全数码卡)。SD卡系列主要有三种:SD卡(full size)、MiniSD卡和MicroSD卡。我们经常使用的是SD卡(俗称:大卡),和MicroSD卡(TF卡,俗称小卡)。2、SD卡特点容量大、高安全性、 体积小、传输速度快、接口简单。3、SD卡结构下图是一张Kingston®品牌的CANVAS
 在RAM中调试程序指的是将程序下载到RAM里面(而不是Flash里面),然后在RAM中执行程序、调试。为什么要在RAM中调试程序?总结起来有以下两点原因:1. Flash 擦写次数有限,STM32F4xx的Flash擦写次数只有上万次,见图1 Flash规格描述图1. STM32F4xx Flash 寿命与保存时间2. 程序下载到RAM里面要比下载到Flash里面快很多,在需要反复调试
前言在学习STM32的过程中,刚好学到了LCD屏,我使用的是STM32F103ZET6,屏幕是正点原子的。但是在我自己新建工程点亮显示LCD屏时遇到了很多问题。解决之后分享在此,希望能帮助到遇到此困惑的朋友。想要快速驱动LCD屏请直接跳转到CubeMX配置FSMC简单介绍FSMC全名叫可变静态存储控制器(Flexible Static Memory Controller,FSMC)是单片机的一种接
完整教STM32H7启动过程详解 本章教程主要跟大家讲STM32H7启动过程,这里的启动过程是指从CPU上电复位执行第1条指令开始(汇编文件)到进入C程序main(
原创 2022-09-22 16:34:54
920阅读
目录一、SDRAM概述二、CubeMX配置三、程序配置 一、SDRAM概述(内容参考正点原子 + 个人经验总结) STM32H743自带1M左右的RAM,虽然已经很大了,但总有不够的时候。RAM不够用,长久之计当然是增加外部RAM。 外部RAM也分两大类,第一类是DRAM,另一类是SRAM。 DRAM:动态随机存储器,以电容的电荷来表示数据(有电荷代表1,无电荷代表零)。因为是电容,会失电,所以
文章目录准备工作FreeRTOS详细的移植步骤FreeRTOS Demo移植过程中出现的错误完整的工程代码 准备工作我这里是基于STM32F407平台移植FreeRTOS,准备资料如下:已经移植STM32F407标准库的工程;FreeRTOSv10.2.1_191129内核源码;(前面有文章说过如何下载FreeRTOS内核源码)FreeRTOS详细的移植步骤解压FreeRTOS就能得到这个目录(
1. 前言玩过Linux的朋友, 是不是对Linux无所不能的串口Shell命令控制台羡慕不已, 要是自己做的STM32F系列低档次的MCU也有这种控制交互能力, 会给调试/维护和配置省下多少麻烦事呀, 比如启动/关闭调试或自检模式, 打印调试信息, 配置系统参数, 传输文件等等, 也有相当多的朋友凭借自己出色的编程能力可以实现这些功能, 这里提出我的这个解决方案, 以作交流.本平台(xc_she
完整教程下载地址:http:/
原创 2022-09-23 14:14:10
1113阅读
1 IIC  1.1 iic定义    iic全称inter integrated circuit,集成电路总线;为串行通信接口协议;通过SCL、SDA 2线进行板间通讯;  1.2 iic速度    iic标准规定在iic协议在快速模式下传输速率最高可达400Kbps,在高速模式下最高3.4Mbps;  1.3 iic用途    iic协议主要用在eeprom存储器,音频解码器,数字电位器,rt
# STM32H7运行Python的探索 随着微处理器技术的快速发展,许多开发者希望在传统的嵌入式系统中集成更高层次的编程语言。Python因其简洁与强大的库支持,成为了许多开发者的首选。因此,在STM32H7这样的高性能微控制器上运行Python,成为了一个颇具吸引力的主题。本文将探索如何实现这一目标,并提供相应的代码示例。 ## STM32H7概述 STM32H7系列是STMicroel
原创 8月前
194阅读
STM32 —— RT-Thread Nano 移植实验目的主程序采用多任务框架,通过移植 RTOS 系统进行实现,比如RT-thread Nano实验原理这里主要是通过对 RT-Thread Nano 系统的移植,实现系统多任务的执行,前面我们已经实现了对 UCOS III 系统的移植,这里的原理相似,可以直接从官网下载代码进行移植,也可以通过 STM32CubeMX 中下载添加 RT-Thre
目录一,STM32的存储器映像二,STM32的位带操作三,STM32启动模式四,STM32的时钟框图 一,STM32的存储器映像STM32的相关认识: STM3232位CPU,数据总线是32位的。STM32的地址总线是32位的(地址总线是32位不是由数据总线是32位决定的),所以 STM32可以访问的地址容量是:4GB(2的32次方Byte)。STM32肯定用不完4GB的空间的,所以就有了:
一. 前言移植了大半天,终于成功在stm32平台上移植了lvgl8.2,真是累。lvgl作为最近较为受欢迎的一款嵌入式GUI开源库,功能非常强大,于是我选择了它。在移植的过程中,踩到了许多坑,在这里分享出来,避免重复踩坑,浪费时间。 先来看一下移植效果,手机拍的不是很清晰,勉强可以看到效果。 完整工程会在 微信公众号 FPGA之旅 给出。 在微信公众号中 回复 STM32移植LVGL 获取下载链接
转载 8月前
126阅读
  外设总结1M的采样率,对于32而言已经很高了,所以这边我们必然是需要使用DMA的,除此之外,我们选用定时器1作为触发源,方便随时修改采样频率的同时,也更为精准的设置采样频率为1M。配置过程首先是定时器的初始化过程。static void ADC_TIME_Config(void){ TIM_HandleTypeDef TIM_HandleADC_TRIG = {0};
最新教ThreadX GUIX移植到STM32H7(IAR) 本章节将为大家介绍ThreadX GUIX的IAR方式移植和设计框架,理论上不建议初学者直接学习,因为本章节涉
原创 2022-09-23 09:00:01
199阅读
最新教程下载:http://www.armbbs.cn/forum.php?mod=viewthread&tid=98429 第1
原创 2022-09-09 09:25:39
254阅读
  • 1
  • 2
  • 3
  • 4
  • 5