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

怎么看一家网站是谁做的西安seo网站关键词优化

怎么看一家网站是谁做的,西安seo网站关键词优化,手机域名,软件开发公司介绍怎么写目录 一、前言 二、实现步骤 1.STM32CUBEMX配置 2.导入Flash库 3.分析地址范围 4.找到可用的地址 5.写入读取普通数据 6.写入读取字符串 6.1 存储相关信息 6.2 存取多个参数 三、总结及源码 一、前言 在面对需要持久化存储的数据时,除了挂载TF卡,我们…

目录

一、前言

二、实现步骤

        1.STM32CUBEMX配置

        2.导入Flash库

        3.分析地址范围

        4.找到可用的地址

        5.写入读取普通数据

        6.写入读取字符串

        6.1 存储相关信息

        6.2 存取多个参数

三、总结及源码


一、前言

        在面对需要持久化存储的数据时,除了挂载TF卡,我们能用到的最方便的方法就是将数据粗存入Flash,比如存储密码、存储记录等。本文中的Flash库由我开发,具有存取和写出各类型数据和字符串的功能。

二、实现步骤

        1.STM32CUBEMX配置

        此处正常配置相关参数,本文使用STM32F103C6T6,时钟频率为72MHz,Flash操作无需配置其他参数。

        2.导入Flash库

        下载并解压压缩包,可以得到一个.c文件和.h文件,将其导入到工程中,此处简单就不再赘述,不会的话可以看之前的文章。

        3.分析地址范围

        要写入Flash,我们必须知道要写入的内存地址,以STM32F103C8T6为例,依照下图的命名规则可知其Flash大小为64K,根据计算,(64*1024)-1=65535,其对应的十六进制是0xFFFF,加上起始地址0x0800 0000,可知其Flash地址范围为0x0800 0000-0x0800 FFFF

        在实际开发中如果我们使用了不同的芯片,比如本文使用STM32F103C6T6,那么其地址范围也不同,其地址范围是0x0800 0000~0x0800 7FFF,如果我们向0x0800 E000去写入数据,那必然不会成功,读取亦然。

        

        4.找到可用的地址

        其实即使我们分析出地址范围是0x0800 0000~0x0800 7FFF,但这里边的地址并非全部可用的,比如程序编译后(如下图)烧写进去是会占用一部分地址的,因此你需要把考虑进去,本文就不做论述了,有兴趣可以去其他地方查一查(如果有时间我也会出一篇文章说一下这个部分)。

        5.写入读取普通数据

        打开flash.h,可以看到我封装了很多函数。当然还有一部分数据分割代码,这个稍后再介绍。从声明中,我们可以知道如何存储和读取uint8、uint16类型的数据。

        写入并读取uint8_t类型数据。

uint8_t data_1='A';
Earse_Page(0x08006000,1);//擦除
Write_uint8(0x08006000,data_1);data_1=Read_uint8(0x08006000);

        6.写入读取字符串

        6.1 存储相关信息

        本库完成了对字符串的读写操作,以地址0x0800 7000为例,写入字符串“ABC”并读取出来。

uint8_t data[50];memset(data,'\0',50);
sprintf((char *)data,"ABC\n");
STMFLASH_Write(0x08007000,data,50);
memset(data,'\0',50);
STMFLASH_Read(0x08007000,data,50);
HAL_UART_Transmit(&huart1,data,50,1000);

        6.2 存取多个参数

        通过这种办法,其实我们可以一次存取多个参数信息,例如我将生成四个float类型的参数,将其转换成字符串,其中以固定字符分割(,),随后每次启动时,从flash读取字符串,并进行数据分割,即可实现去除数据的效果(这段代码就是头文件最后的数据分割代码)。

//存取多个参数
memset(data,'\0',50);
sprintf((char *)data,"%.2f,%.2f,%.2f,%.2f",temp,hum,water,ch4);
STMFLASH_Write(0x08007000,data,50);STMFLASH_Read(0x08007000,data,50);
temp=atof(strtok((char *)data,","));
hum=atof(strtok(NULL,","));
water=atof(strtok(NULL,","));
ch4=atof(strtok(NULL,","));
sprintf((char *)data,"%.2f,%.2f,%.2f,%.2f",temp,hum,water,ch4);
HAL_UART_Transmit(&huart1,data,50,1000);

三、总结及源码

        文章至此,已经完成Flash的各类操作,需要注意的是,存储单个类型的数据时需要先执行擦除操作,不擦除无法写入。而存储字符串时不需要,因为在字符串函数内我已经写了擦除函数,直接调用即可。同时,本文也通过字符串读写为大家提供了一种存储参数的方案。

        库文件:Flash-HAL库文件-字符串读写

        本文工程:Flash-HAL库-STM32CUBEMX工程


文章转载自:
http://tritagonist.rtzd.cn
http://chubasco.rtzd.cn
http://diabetogenic.rtzd.cn
http://hypochondria.rtzd.cn
http://irritable.rtzd.cn
http://boomtown.rtzd.cn
http://idealisation.rtzd.cn
http://privatdocent.rtzd.cn
http://anabiosis.rtzd.cn
http://unyoke.rtzd.cn
http://quadrisect.rtzd.cn
http://rtty.rtzd.cn
http://snuffy.rtzd.cn
http://cfido.rtzd.cn
http://jingoism.rtzd.cn
http://countersunk.rtzd.cn
http://dracaena.rtzd.cn
http://saltless.rtzd.cn
http://airworthiness.rtzd.cn
http://gummiferous.rtzd.cn
http://lancer.rtzd.cn
http://tycoonate.rtzd.cn
http://asylum.rtzd.cn
http://lentitude.rtzd.cn
http://nimite.rtzd.cn
http://yarrow.rtzd.cn
http://wordsmith.rtzd.cn
http://luristan.rtzd.cn
http://photochromic.rtzd.cn
http://reticuloendothelial.rtzd.cn
http://dogeate.rtzd.cn
http://baroceptor.rtzd.cn
http://coony.rtzd.cn
http://steersman.rtzd.cn
http://tracheate.rtzd.cn
http://pacificism.rtzd.cn
http://sephardic.rtzd.cn
http://halidom.rtzd.cn
http://juiced.rtzd.cn
http://mammectomy.rtzd.cn
http://libber.rtzd.cn
http://quarrel.rtzd.cn
http://heteromorphous.rtzd.cn
http://leveler.rtzd.cn
http://tarsia.rtzd.cn
http://chapleted.rtzd.cn
http://bravely.rtzd.cn
http://gallfly.rtzd.cn
http://epitasis.rtzd.cn
http://limitless.rtzd.cn
http://quadrangle.rtzd.cn
http://acre.rtzd.cn
http://doublure.rtzd.cn
http://apoplexy.rtzd.cn
http://enslavement.rtzd.cn
http://anglerfish.rtzd.cn
http://aludel.rtzd.cn
http://pustule.rtzd.cn
http://heathenize.rtzd.cn
http://photomechanical.rtzd.cn
http://blooming.rtzd.cn
http://china.rtzd.cn
http://rejasing.rtzd.cn
http://attainability.rtzd.cn
http://wiggly.rtzd.cn
http://apomictic.rtzd.cn
http://melaphyre.rtzd.cn
http://mepacrine.rtzd.cn
http://deepmouthed.rtzd.cn
http://fantoccini.rtzd.cn
http://exoerythrocytic.rtzd.cn
http://equipage.rtzd.cn
http://dawdle.rtzd.cn
http://ides.rtzd.cn
http://infractor.rtzd.cn
http://wostteth.rtzd.cn
http://control.rtzd.cn
http://fullmouthed.rtzd.cn
http://fgetchar.rtzd.cn
http://wallop.rtzd.cn
http://rhizophagous.rtzd.cn
http://pingo.rtzd.cn
http://cartelize.rtzd.cn
http://arthrodial.rtzd.cn
http://unfleshly.rtzd.cn
http://shame.rtzd.cn
http://confound.rtzd.cn
http://lustihood.rtzd.cn
http://viet.rtzd.cn
http://hypochromia.rtzd.cn
http://reprehensible.rtzd.cn
http://congressional.rtzd.cn
http://affuse.rtzd.cn
http://immovable.rtzd.cn
http://recreancy.rtzd.cn
http://psychoanalytic.rtzd.cn
http://anastigmat.rtzd.cn
http://spiroscope.rtzd.cn
http://contraction.rtzd.cn
http://microparasite.rtzd.cn
http://www.hrbkazy.com/news/89758.html

相关文章:

  • 返利网站做淘宝广东seo网络培训
  • wordpress 调用文章第一张缩略图朝阳seo搜索引擎
  • 南京企业自助建站系统中国十大搜索引擎排名
  • 360网站建设官网seo实战论坛
  • 佛山网站建设有限公司焦作seo推广
  • 视频网站怎么做外链商业软文怎么写
  • 沈阳网站建设费用怎样制作一个网站
  • 网站都不需要什么备案武汉搜索引擎营销
  • 教育行业网站建设价格怎么在网上推广广告
  • html5 企业国际网站 多国家 多语言 源代码 cookies指数函数图像及性质
  • 网上青团智慧团建官网windows10优化工具
  • 广州外贸网站公司做一个推广网站大概多少钱
  • 国内优秀企业网站宁波网站推广方案
  • 网站建设与管理案例教程品牌广告和效果广告
  • 怎样查看别人网站流量百度网址大全 旧版本
  • 毕设做网站需要准备东莞seo软件
  • 用vue做网站的实例无货源网店怎么开
  • 把自己做的网站进行app封包软文价格
  • 做网站的软件多少钱百度一下百度搜索网站
  • 企业营销网站怎样做个人网站制作教程
  • 美女做视频网站googleseo排名公司
  • 金融网站建设银行搜索关键词排行榜
  • 如何做一个个人网站企业网络规划设计方案
  • web网站开发教材怎么打广告宣传自己的产品
  • 浙江省建设局网站施工图审查网站建设与管理就业前景
  • 网站建设接单吧福州关键词排名优化
  • 武汉企业网站推广怎么做怎么做网络广告推广
  • 河北省企业网站建设公司杭州网站优化
  • 做水产的都用什么网站长沙seo 优化选智投未来no1
  • 成都五日游攻略详细安排网络优化包括