0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32_ SPI读写Flash

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-04-08 10:26 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天讲解“STM32F103SPI读写Flash”,其实这第一阶段主要是讲解STM32的SPI功能,所有今天的重点是SPI,关于FLASH我应该要在后面再次讲述。

今天提供并讲解的软件工程,基于软件工程“A0.0.0(STM32F10x_TIM延时)”修改而来。若不知道如何而来,请关注微信公众号“EmbeddDeveloper”获取更多信息。

本着免费分享的原则,将讲解的工程源代码分享给大家,还望看到的朋友关注和推广一下微信公众号,增加一下人气。

每天提供下载的“软件工程”都是在硬件板子上进行多次测试、并保证没问题才上传至360云盘。

今天的软件工程下载地址(360云盘):

https://yunpan.cn/cPzhMXjRPbWzc访问密码 032f

STM32F10x的资料可以在我360云盘下载:

https://yunpan.cn/crBUdUGdYKam2访问密码 ca90

关于“STM32F103SPI读写Flash”我把重要的几点在下面分别讲述,若不明白,请关注微信公众号“EmbeddDeveloper”查阅或留言。

一、RCC时钟配置

该函数位于在bsp.c文件下面;

使能RCC时钟:RCC_APB2Periph_SPI1

二、引脚配置

该函数位于在spi.c文件下面;

这里是对SPI所使用引脚进行配置。

注意:

SPI作为主机,我们使用硬件SPI时,通常只使用SCK, MOSI, MISO三个引脚,片选CS需要单独配置,所以这里配置CS需要和器件对应才行。

三、SPI配置

该函数位于在spi.c文件下面;

对SPI进行配置。

配置的每一条语句都有注释,请看源代码.

这里配置的都比较基础的,后续我会讲解复杂一点的配置(前期第一阶段定位在初级,所以,如果你想了解更高级的功能,请持续关注我的微信公众号)。

四、SPI读写字节

该函数位于在spi.c文件下面;

外设操作SPI时就需要调用这个函数。

五、主函数应用

该函数位于在main.c文件下面;

这里是通过SPI操作FLASH读写数据,但今天主要是测试SPI通信是否正常,所以关于FLASH的函数今天就不在这里讲解,感兴趣的朋友可以研究一下,经过我大量测试,sflash.c文件的接口可以正常使用。

可以看到现象:间隔500ms,LED变化,串口打印出读出flash的数据。

六、今天的重点提示

SPI的对应从机基本上都有片选信号,所以这里要对应起来;还有SPI可作为从机使用,后续我会讲解。

下载方式:长按网站 ->选择复制 ->打开

或者复制网站在电脑上下载也可。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FlaSh
    +关注

    关注

    10

    文章

    1715

    浏览量

    154715
  • STM32
    +关注

    关注

    2305

    文章

    11122

    浏览量

    371192
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1866

    浏览量

    99841
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    FPGA实现基于SPI协议的Flash驱动控制芯片擦除

    本篇博客具体包括SPI协议的基本原理、模式选择以及时序逻辑要求,采用FPGA(EPCE4),通过SPI通信协议,对flash(W25Q16BV)存储的固化程序进行芯片擦除操作。
    的头像 发表于 12-02 10:00 1799次阅读
    FPGA实现基于<b class='flag-5'>SPI</b>协议的<b class='flag-5'>Flash</b>驱动控制芯片擦除

    高性能SPI NOR FLASH芯片ZB25VQ系列推荐

    在嵌入式系统、物联网设备及各类存储应用中,SPI NOR FLASH芯片因其接口简单、功耗低、读写速度快等特点,成为代码存储与数据缓存的常见选择。SPI NOR
    的头像 发表于 12-01 14:52 199次阅读

    STM32C011开发(3)----Flash操作

    STM32C011 系列微控制器内置 Flash 存储器,支持程序存储与数据保存,具备页面擦除、双字写入、读写保护等功能。本文将简要介绍 STM32C011 的
    的头像 发表于 09-18 16:48 3651次阅读
    <b class='flag-5'>STM32</b>C011开发(3)----<b class='flag-5'>Flash</b>操作

    通用bootloader无法使用45db161flash怎么解决?

    通用bootloader不选“支持spi flash”,download放于片内flash,正常启动,ota正常,app驱动at45db161读写正常。通用bootloader选“支持
    发表于 09-18 08:23

    【RA4M2-SENSOR】读写Code Flash

    的 code flash大小为512Kb 添加flash的stack 进行配置 这里只进行读写code flash的实验,需要enable Code
    发表于 09-14 10:39

    SPI NOR FLASH是什么,与SPI NAND Flash的区别

    SPI NOR FLASH是什么?   SPI NOR FLASH是一种非易失性存储器,它通过串行接口进行数据传输,具有读写速度快、可靠性高
    的头像 发表于 08-21 09:26 1118次阅读

    SFUD驱动库实战手册:串行SPI Flash开发全流程解析

    针对嵌入式系统中SPI Flash的多样化需求,SFUD库提供了灵活且通用的解决方案。本文将从环境配置、库初始化、基本操作到高级特性,完整展示SFUD库的应用流程,并通过具体示例帮助开发者深入理解其
    的头像 发表于 07-29 13:19 533次阅读
    SFUD驱动库实战手册:串行<b class='flag-5'>SPI</b> <b class='flag-5'>Flash</b>开发全流程解析

    求助,关于STM32F407的flash读写问题求解

    目前flash模拟EEPROM是参考的官方的flash读写代码,但C语言中attribute ((at())绝对定位的应用 网上的一段代码如下 1、定位到flash中,一般用于固化的信
    发表于 07-18 07:14

    瑞萨RA8D1 MCU的OSPI Flash适配指南

    OSPI Flash(Octal SPI Flash)是一种基于SPI(串行外设接口)扩展的高速串行Flash存储器,采用8-bit数据总线
    的头像 发表于 07-17 11:24 2650次阅读
    瑞萨RA8D1 MCU的OSPI <b class='flag-5'>Flash</b>适配指南

    第二十九章 读写内部FLASH

    本文介绍了W55MH32内部FLASH,其含主存储、系统存储等,可存储代码及掉电保存数据。读写需解锁、擦除页等步骤,标准库提供相关函数。还展示了擦除编程测试及模拟EEPROM读写的实验。
    的头像 发表于 06-20 14:09 1002次阅读
    第二十九章 <b class='flag-5'>读写</b>内部<b class='flag-5'>FLASH</b>

    第十七章 SPI——读写串行FLASH

    本章介绍SPI协议,其为高速全双工通信总线,含物理层、协议层内容,还讲解W55MH32的SPI特性、初始化及DMA相关配置。
    的头像 发表于 06-19 17:06 1051次阅读
    第十七章 <b class='flag-5'>SPI</b>——<b class='flag-5'>读写</b>串行<b class='flag-5'>FLASH</b>

    STM32L476 Flash擦除失败的原因?

    开发板MCU型号:STM32L476RG 同样的固件在开发板中flash读写擦除操作都没问题,但在产品中擦除函数返回成功,但flash中的数据其实并没有擦除。 这两款MCU在
    发表于 04-23 08:26

    STM32C031F4 FLASH存储器读写例程各位高能不能提供一个?

    STM32C031F4FLASH存储器 读写例程 各位高能不能提供一个谢谢大家
    发表于 03-13 07:37

    STM32H750内部flash读写的疑问求解

    请教下,STM32H750XBHx我看资料内置flash为128K,并且flash擦除的最小单元也是128K。这样的话我有数据要保存应该怎样处理好呢?写数据时是要将程序部分一起擦除再写回去吗?这样会不会有风险?
    发表于 03-12 06:29

    EE-231:带SHARC处理器的SPI Flash在线编程

    电子发烧友网站提供《EE-231:带SHARC处理器的SPI Flash在线编程.pdf》资料免费下载
    发表于 01-06 15:31 0次下载
    EE-231:带SHARC处理器的<b class='flag-5'>SPI</b> <b class='flag-5'>Flash</b>在线编程