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

    文章

    1621

    浏览量

    147735
  • STM32
    +关注

    关注

    2265

    文章

    10870

    浏览量

    354685
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1700

    浏览量

    91291
收藏 人收藏

    评论

    相关推荐

    Air201模组教程:SPI通信与外部Flash的连接之道!

    今天我们要学习的是Air201定位模组LuatOS快速入门,本文将通过Air201+扩展板读写外部flash的演示,教你使用SPI示例,可根据实际需求灵活应用。
    的头像 发表于 11-18 00:23 90次阅读
    Air201模组教程:<b class='flag-5'>SPI</b>通信与外部<b class='flag-5'>Flash</b>的连接之道!

    LuatOS入门课|Air201模组与SPI Flash的交互艺术

    今天我会把我了解的关于如何使用SPI读写外部Flash教给大家,本文将通过Air201+扩展板读写外部flash的演示,教你使用
    的头像 发表于 11-17 09:51 150次阅读
    LuatOS入门课|Air201模组与<b class='flag-5'>SPI</b> <b class='flag-5'>Flash</b>的交互艺术

    物联网行业存储方案详解_SPI NOR Flash

    物联网系统中为什么要使用SPI NOR FLASH 物联网系统中使用SPI NOR FLASH的原因主要基于其独特的性能特点和在嵌入式系统中的广泛应用。以下是详细的分析: 1、高可靠性
    的头像 发表于 09-24 14:39 221次阅读
    物联网行业存储方案详解_<b class='flag-5'>SPI</b> NOR <b class='flag-5'>Flash</b>

    STM32CUBEMX(10)--Flash读写

    概述 本例程主要讲解如何对芯片自带Flash进行读写,用芯片内部Flash可以对一些需要断电保存的数据进行保存,无需加外部得存储芯片,本例程采用的是STM32F030R8T6,64K大
    发表于 09-10 15:36

    Verilog:【8】基于FPGA实现SD NAND FLASHSPI协议读写

    在此介绍的是使用FPGA实现SD NAND FLASH读写操作,以雷龙发展提供的CS创世SD NAND FLASH样品为例,分别讲解电路连接、读写时序与仿真和实验结果。 目录   1
    发表于 06-21 17:58

    【GD32F303红枫派开发板使用手册】第二十讲 SPI-SPI NAND FLASH读写实验

    通过本实验主要学习以下内容: •SPI通信协议,参考19.2.1东方红开发板使用手册 •GD32F303 SPI操作方式,参考19.2.2东方红开发板使用手册 •NAND FLASH基本原理 •
    的头像 发表于 06-20 09:50 785次阅读
    【GD32F303红枫派开发板使用手册】第二十讲 <b class='flag-5'>SPI-SPI</b> NAND <b class='flag-5'>FLASH</b><b class='flag-5'>读写</b>实验

    【GD32H757Z海棠派开发板使用手册】第十一讲 SPI-SPI NOR FLASH读写实验

    通过本实验主要学习以下内容: •SPI简介 •GD32H7 SPI简介 •SPI NOR FLASH——GD25Q128ESIGR简介 •使用GD32H7
    的头像 发表于 06-04 11:42 858次阅读
    【GD32H757Z海棠派开发板使用手册】第十一讲 <b class='flag-5'>SPI-SPI</b> NOR <b class='flag-5'>FLASH</b><b class='flag-5'>读写</b>实验

    基于FPGA的SPI Flash控制器的设计方案

    摘要:传统的Flash读写是通过CPU软件编程实现,其读写速度较慢,且占用CPU资源,另外由于Flash芯片本身功能指令较多,使得对芯片进行直接操作变得非常困难。 本文提出一个基于FP
    发表于 06-03 10:13

    STM32H750DMA+SPi内存数据不一致的原因?

    发现用stm32H750 dma+spi读写数据时发现当spi速度大于8M时出现内存不一致的问题,我再读之前已经用SCB_CleanInvalidateDCache_by_Addr这个
    发表于 05-24 07:53

    【GD32F470紫藤派开发板使用手册】第十一讲 SPI-SPI NOR FLASH读写实验

    通过本实验主要学习以下内容: •SPI简介 •GD32F470 SPI简介 •SPI NOR FLASH——GD25Q32ESIGR简介 •使用GD32F470
    的头像 发表于 05-17 09:57 1642次阅读
    【GD32F470紫藤派开发板使用手册】第十一讲 <b class='flag-5'>SPI-SPI</b> NOR <b class='flag-5'>FLASH</b><b class='flag-5'>读写</b>实验

    如何使用SPI的DMA模式读写FLASH

    出来。 因为我下一步想做一个监测系统,想提高flash读写效率,使用DMA模式 MCU一直在监测,不断往数组中写入数据,一旦满了,数据通过DMA模式往FLASH传,MCU继续监测。读也一样。 1、为了试验,我
    发表于 04-16 07:59

    STM32H750 QSPI flash重映射模式下有方法能实现读写操作吗?

    STM32H750 QSPI flash重映射模式下有方法能实现读写操作吗
    发表于 03-25 08:06

    求助,关于SPI读写Flash的理解

    利用SPI读写Flash指令的过程中,当主机发送指令后,为什么还需要再发送“任意的数据”,才能够获取指令解释后的返回值。 当读取Flash的JEDEC_ID指令时,按
    发表于 03-20 06:06

    STM32G474RCT6超出FLASH之外的地址,依然可以正常读写,这正常吗?

    有大佬碰到过超出FLASH之外的内存,也可以正常读写的情况吗?我用的芯片是STM32G474RCT6,FLASH为 256kB的,但是我对 Page64页、Page65页或者后面几页
    发表于 03-15 08:17

    stm32 flash写数据怎么存储的

    stm32 flash写数据怎么存储的  STM32是一款广泛应用于嵌入式系统开发的微控制器,它的Flash存储器是其中一个重要的组成部分。在本文中,我将详细介绍
    的头像 发表于 01-31 15:46 2247次阅读