本次实验为使用SPI的轮询方式读写Flash。采用HAL库进行书写。我使用的主控芯片是stm32f103zet6,上面搭载的Flash芯片是W25Q64芯片,这个芯片的容量是8MB。SPI的硬件接口和通信协议SPI的硬件接口 SPI有四线串行总线,其信号线分别有:SCLK:串行时钟(主机输出)MOSI:主输出从机输入或主机输出从机输入(主机输出的数据)MISO:主输入从输出或主输入从输出
USART串口通讯实验篇1——中断接收与发送最近开始接触了STM32F4xx系列单片机,对于我这个从零开始学习的小白来说,可谓困难重重,我是跟着“正点原子”和“野火”这两个STM32培训机构来学习的,开发板买的是“正点原子”F4系列,视频在之前学习过程中主要看的是“正点原子”的,现在主要参考“野火”的视频,个人感觉“正点原子”的程序框架和“野火”的视频比较适合我,因此两者结合了一下,各取所长吧。正
STM32H743基于V1.7HAL库版本基础工程搭建1.下载V1.7.0HAL版本库文件1.1库文件获取方法通过keil官方网址下载软件包,如下图所示,版本为2.4.0;说明中显示H7的固件库版本为V1.6.0,但HAL库为V1.7.0;通过ST官方网站下载,STM32CubeH7软件包,说明中显示CubeH7的固件库版本为V1.6.0,但HAL库为V1.7.0;2.创建工程2.1 创建工程文件
第十章 STM32CubeMX简介STM32CubeMX是由ST公司开发的图形化代码自动生成工具,能够快速生成初始化代码,如GPIO、时钟树、中间件等,使用户专注于业务代码的开发。现在ST主推HAL库,经典的标准外设库已经停止维护了,新产品也只提供HAL库的代码,因此,我们学习HAL库是更加有优势的,由于HAL库具有低耦合、通用、抽象了硬件层,使得开发者无需太过关注硬件驱动的实现,使得开发更加的简
最近尝试了一下对32的内置flash进行读写,众所周知,芯片的flash是用来存放代码指令和变量的,其中的数据即使掉电也不会丢失。而stm32flash之大,对于初学者的小打小闹完全不用担心不够用的情况。因此,在需要保存一些芯片掉电之后依旧需要保存的数据(数据量不是特别大)时,运用内置flash的空闲部分可以为我们省去一颗eeprom或外置flash的花销。知识总结:1.flash的写入之前需要
转载 2024-04-09 08:46:03
1193阅读
第二十一章 ADC 实验本章我们将向大家介绍 STM32F4 的 ADC 功能。在本章中,我们将利用 STM32F4 的 ADC1通道 9 来采样外部电压值,并在数码管上显示出来。本章将分为如下几个部分:21.1 STM32F4 ADC 简介21.2 硬件设计21.3 软件设计21.4 下载验证21.1 STM32F4 ADC 简介STM32F411xC/E 只拥有 1 个 ADC。
目录一、什么是USART1. USART简介2. STM32F4中的USART2.1 USART的发送/接收引脚2.2 USART转为USB接口二、常用的串口相关寄存器三、程序编写1. 串口配置的一般步骤2. 编写程序四、更复杂的程序(USART_RX_STA寄存器的应用)1. USART_RX_STA 寄存器简介2. 程序编写2.1 程序思路2.2 编写程序 参考正点原子的视频教程,本文我们将
在嵌入式应用开发中,经常会遇到掉电后还要保存的信息,这些信息通常只能保存在外部的一些存储芯片中,如外部flash,外部EEPROM, 其实这些信息同样可以保存在STM32自带的内部flash中 文章目录一、STM32 的内部 FLASH 简介二、工程验证三、小结四、参考链接 一、STM32 的内部 FLASH 简介在 STM32 芯片内部有一个 FLASH 存储器,它主要用于存储代码,我们在电脑上
1、flash概述        flash跟ROM相似,都有断电不会丢失数据的这一特性,可用于存储一些重要的数据。数据是直接存储到内存地址上,所以要写数据时要先了解清楚自己所以芯片的flash地址是从0X08000000 ~0X080XXXXX在开始写地址。本篇从0X08000000 ~0X08020000写起。2、STM32命名规则 &nbsp
转载 11月前
709阅读
目的刚好有需要用到H743的这方面内容,截取核心内容,翻译看看。参考文档【ST官方】H743 参考手册-英文版V7.0【中文版的尚未更新ECC内存相关内容,建议直接看英文的】 【ST官方】H743 ECC内存管理应用手册[编号AN5342]H7系列的芯片都是支持ECC【内存纠错】的,算法是SEC-DED啥是ECC内存请自行百度~支持情况汇总数据来自ST的AN5342 原文如下:CPU系列支持情况H
        项目使用STM32F407ZET6开发,但自带的RAM空间不够,所以需要外扩SRAM作为默认的RAM来使用,使用的SRAM是IS62WV51216BLL,19条地址线,16条数据线,使用的库为HAL库。        外扩的SRAM使用FSMC的NE3作为硬件接口,所以外扩的重要步骤其实是NE3作为SR
转载 2024-09-10 11:19:37
495阅读
1、开发环境硬件:野火挑战者开发板STM32H743IIT6 软件版本: CubeMX 6.7.0 STM32CubeH7 Firmware Package V1.11.0 / 04-Nov-2022原理图:2、配置时钟 时钟树参数仅供参考3、配置MPUMPU配置需要查相关资料,一知半解4、配置调试串口修改GPIO与硬件原理图对应,串口参数默认5、配置网口参数配置与硬件对应 此处网络收发地址非常重
转载 2024-07-06 09:14:18
1062阅读
原料硬件:STM32H743最小系统板,显示屏(7寸,型号7016),SW下载器,PC,软件:CUBEMX4.26.0 (软件包1.3.2), MDK5 (软件包版本2.3.1)  ①环境配置1-时钟配置  时钟来源是外部25MHZ的晶振,系统配置后,CPU运行主频400MHZ,其余各个外设的时钟如配置图所示2-外设配置根据我们需要用到的硬件设备,配置相应的外设。我们工程中需要
说明:此博客用来记录学习过程,防止遗忘。        使用的是STM32F103ZET6,芯片手册里他有Flash有512k,RAM有64k。关于IAP,ICP其实就是数据传输方式不同而已,ICP可以理解成芯片厂商已经固化好了bootloader(升级程序)你下载的.hex文件直接通过它被放进Flash里面。IAP就
一.GPIO的作用 1.当作输入输出口 输出数字信号 0/1 TTL电平 0 0~1.5V 1 2.5~5V STM32中 - 0±0.1V 1 3.3±0.3V 2.直接驱动外部电路 如LED,蜂鸣器等等 3.使用I/O口模拟通信协议 IIC 4.模拟PWM波 通过循环改变占空比来实现二.STM32F407ZGT6芯片中GPIO口的数量及命名 1.114个I/O口,每个I/O口上有不同的通用功
DMA简介DMA(Direct Memory Access,直接存储器访问) ,DMA 传输是将数据从一个地址空间复制到另外一个地址空间。CPU 只负责初始化这个传输动作,传输动作本身是由 DMA 控制器来实行和完成。原理一个完整的DMA传输过程必须经过DMA请求、DMA响应、DMA传输、DMA结束4个步骤。DMA请求 CPU对DMA控制器初始化,并向I/O接口发出操作命令,I/O接口提出DMA请
STM32F4 FLASH简介基本知识代码块简介在我们应用开发时,经常会有一些程序运行参数需要保存,如一些修正系数。这些数据的特点是:数量少而且不需要经常修改,但又不能定义为常量,因为每台设备可能不一样而且在以后还有修改的可能。将这类数据存在指定的位置,需要修改时直接修改存储位置的数值,需要使用时则直接读取,会是一种方便的做法。考虑到这些数据量比较少,使用专门的存储单元既不经济,也没有必要,而ST
转载 2月前
539阅读
“ 有时候需要对一些数据进行掉电可存储,一般来说可以把这些数据存储到外部EEPROM或FLASH,如AT24CXX、SPI FLASH等。对于一些不需要经常写入的少量数据,可以直接存储到单片机内部FLASH,可以节省成本。”前期准备STM32硬件电路板及仿真器(以STM32F072单片机为例)Keil v5以上版本(MDK-ARM)01—FLASH读写流程FLASH不用于EEPROM等存
原创 2022-10-17 11:02:10
1784阅读
华为Liteos和物联网设备侧sdk移植到stm32F03ZE霸道板子上推荐官方教程:https://liteos.github.io/啥是LIteos“开源免费”的实时操作系统,集成了 LwM2M、CoAP、mbed TLS、LwIP 全套 IoT 互联协议栈,且在 LwM2M 的基础上,提供了 AgentTiny 模块,用户只需关注自身的应用,而不必关注 LwM2M 实现细节,直接使用 Age
转载 2024-05-24 09:01:31
541阅读
文章目录:目录一、FLASH的相关背景知识二、FLASH的相关操作。三、项目中遇到的关于FLASH操作的问题。 一、FLASH的相关背景知识STM32的存储器分为RAM 和 ROM。RAM为常说的内存。比如手机的内存2G 4G等等。是程序跑起来时占用的存储空间。特点是掉电数据易丢失。ROM为常说的硬盘。比如手机的128G存储空间。特点是掉电数据不容易丢失。在STM32FLASH 和 E
转载 2024-10-17 09:21:27
263阅读
  • 1
  • 2
  • 3
  • 4
  • 5