当前位置: 首页 > news >正文

单位网里建网站me域名公司网站

单位网里建网站,me域名公司网站,百度推广网站域名费,山东平台网站建设哪里有GD25Q32是一款基于SPI的Flash芯片#xff0c;容量为32/84M bytes。它的引脚如下#xff1a; 该芯片支持多种SPI操作方式#xff0c;包括#xff1a;Standard SPI(标准SPI)、Dual SPI(双线 SPI)和Quad SPI(四线 SPI) 。有关SPI的介绍可以参考#xff1a; SPI通信原理-CSDN… GD25Q32是一款基于SPI的Flash芯片容量为32/84M bytes。它的引脚如下 该芯片支持多种SPI操作方式包括Standard SPI(标准SPI)、Dual SPI(双线 SPI)和Quad SPI(四线 SPI) 。有关SPI的介绍可以参考 SPI通信原理-CSDN博客文章浏览阅读302次点赞5次收藏7次。而之所以会有双线SPI和四线SPI的出现其实主要是因为某些情况下并不需要全双工但对通信速度有更高的要求所以对引脚功能做了些调整。但是既然都叫SPI说明仍然是符合SPI的协议标准的本次只讲解标准SPI理解了后感兴趣可以自行研究双线SPI和四线SPI。SPI是一种一主多从的工作模式不同于IIC它只有一个主机读写操作全部由主机发起从机被动响应。假设CPOL为0那么在第一个上升沿时发送方往数据线上发送一位数据在下降沿时接收方读取一位数据如此循环8次一个字节就被发送和接收了。https://blog.csdn.net/u011436603/article/details/136008066其中CS为片选使能脚 SO,WP,SCLK,SIHOLD为SPI通信引脚使用标准SPI通信的话一般只需考虑SCLK,SO和SI就已足够了。 与标准SPI的引脚对应为 名称标准GD25Q32片选CSCS#时钟CLKSCLK主机发MOSISI(IO0)主机收MISOSO(IO1) GD25Q32属于FLASH因此和EEPROM不同的是它无法按字节写入必须按page去写。擦除的时候可以按扇区或块擦除。每个page有256bytes注意到每个block可以有32K或64K bytes这个在后面会影响具体的操作。 接下来直接展示驱动代码具体解析可以看注释使用STM32的硬件SPI //使用spi3读一个字节用的标准库 unsigned char flash_spi_rchar(void) {while((SPI3-SRSPI_I2S_FLAG_TXE)0) ;SPI3-DR 0xff;while((SPI3-SRSPI_I2S_FLAG_RXNE)0) ;return SPI3-DR; }//使用spi3写一个字节 void flash_spi_wchar(unsigned char ucChar) {while((SPI3-SRSPI_I2S_FLAG_TXE)0) ;SPI3-DR ucChar;while((SPI3-SRSPI_I2S_FLAG_RXNE)0) ;SPI3-DR; } 首先列举一下芯片的默认指令后面代码中出现的指令可以直接对照参考 继续上代码主要是读写的驱动函数 unsigned char flash_read_status(void) {unsigned char ucChar;FLASH_CS_EN;flash_spi_wchar(0x05); //读取状态ucChar flash_spi_rchar();FLASH_CS_DIS;return ucChar; }void flash_write_trail(unsigned int nAddress,unsigned char* ucData,unsigned int nLength) {unsigned int i,n;while(flash_read_status()0x01); //忙FLASH_CS_EN;flash_spi_wchar(0x06); //写使能FLASH_CS_DIS;FLASH_CS_EN;flash_spi_wchar(0xd8); //擦除BLOCK按64K擦除flash_spi_wchar((nAddress16)0xff); //存储地址flash_spi_wchar((nAddress8)0xff);flash_spi_wchar(nAddress0xff);FLASH_CS_DIS;while(flash_read_status()0x01); //忙for(n1; (n*256)nLength; n) //256的倍数表示按页写{while(flash_read_status()0x01); //忙FLASH_CS_EN;flash_spi_wchar(0x06); //写使能FLASH_CS_DIS;FLASH_CS_EN;flash_spi_wchar(0x02); //写入数据flash_spi_wchar(((nAddress(n-1)*256)16)0xff);flash_spi_wchar(((nAddress(n-1)*256)8)0xff);flash_spi_wchar((nAddress(n-1)*256)0xff);for(i0; i256; i)flash_spi_wchar(*ucData);FLASH_CS_DIS;}while(flash_read_status()0x01); //忙FLASH_CS_EN;flash_spi_wchar(0x06); //写使能FLASH_CS_DIS;FLASH_CS_EN;flash_spi_wchar(0x02); //写入数据flash_spi_wchar(((nAddress(n-1)*256)16)0xff);flash_spi_wchar(((nAddress(n-1)*256)8)0xff);flash_spi_wchar((nAddress(n-1)*256)0xff);for(i0; i(nLength%256); i)flash_spi_wchar(*ucData);FLASH_CS_DIS; }unsigned char flash_read_char(unsigned int nAddress) {unsigned char ucChar;while(flash_read_status()0x01); //忙FLASH_CS_EN;flash_spi_wchar(0x03); //读数据flash_spi_wchar((nAddress16)0xff); //存储地址flash_spi_wchar((nAddress8)0xff);flash_spi_wchar(nAddress0xff);ucChar flash_spi_rchar();FLASH_CS_DIS;return ucChar; } 以上就是GD25Q32的驱动代码驱动函数中是按64K擦除的如果需要按32K擦除则使用0x52指令即可。 差点忘了FLASH_CS_EN和FLASH_CS_DIS表示片选使能和失能即CS引脚的拉高或拉低由于低电平有效因此FLASH_CS_EN表示的是引脚拉低。
http://www.zqtcl.cn/news/582792/

相关文章:

  • 济南建站公司注意事项做钓鱼网站要什么工具
  • 网站建设数据录入创建网络公司
  • 行业网站建设报价摄影标志logo设计欣赏
  • 做reference的网站网站首页 模板
  • 微信php网站开发流程图做网站优化好的网络公司
  • 网站显示百度地图长沙制作网页的基本步骤
  • 免费做封面的网站哈尔滨网页制作要多少钱
  • html免费网页素材网站优化教程
  • 百度关键词网站排名优化软件seo服务 收费
  • 中英文切换网站网站建设的关键问题
  • 5款免费网站管理系统wordpress 本地
  • 企业网站制作公司盈利百度云搜索
  • 微云影视自助建站系统大理州建设局网站门户网
  • 构建网站需要会什么意思辽宁省朝阳网站建设
  • 网站建设捌金手指专业1公司域名邮箱注册
  • 建设工程协会网站建设工程合同属于专属管辖吗
  • 网站建设费可分摊几年电子商务网站建设基础
  • wordpress api 发贴北京网站优化seo
  • 青岛网站制作服务商wordpress红包
  • 网站响应式设计如何提高网站文章收录
  • 网站 橙色如何做自己网站的seo
  • 网上商城网站建设公司兰州网站制作公司怎么样
  • 网站的动态图怎么做的获取网站访客qq
  • 黑龙江网站建站建设知名品牌形象设计公司
  • 网站建设去哪可接单怎么做微信小程序平台
  • 做外贸重新设计网站兰州网站建设慕枫
  • 服装销售 网站建设论文搭建企业网站需要什么
  • cnnic网站备案html网站建设代码
  • 金华网站建设明细报价表c苏宁网站开发
  • 在手机上怎么做微电影网站湖南人工智能建站系统软件