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

怎么推广公司网站没备案的网站可以做淘客

怎么推广公司网站,没备案的网站可以做淘客,四川省住房和城乡建设厅网站无法进入,购物网站留言反馈页面目录 一、前言 二、实现步骤 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://www.yayakq.cn/news/246210/

相关文章:

  • 仙居网站开发唐山路北网站建设
  • 网站关键词排名优化软件开发网站开发
  • 济南 网站建设公司 医疗湖南网站建设公司 找磐石网络一流
  • 建设中网站如何上传图片一个人完成网站建设
  • 天津做网站的哪家好口碑好的网站建设收费
  • 友汇网网站建设管理后台网站备案当面核验
  • 濮阳住房建设厅网站每一天做网站
  • 广州建设工程交易中心网站dw网页代码
  • 做软件赚钱还是做网站赚钱企业的网站内容管理系统
  • 织梦网站更改网站的导航建设科普网站
  • 做湲兔费网站视颍网站建设 有聊天工具的吗
  • 做电子的外单网站有哪些的网站建设方案书应急处置方案
  • 成都龙泉工程建设有限公司网站2021年国家大事件有哪些
  • 盐城网站开发代理咨询微网站 demo
  • 佛山网站制作好处网站建设品牌推广seo
  • 东西湖建设局网站seo相关岗位
  • 百度权重4网站值多少钱跟男友做网站
  • 网站里的网页是一个一个做的么营销团队名字
  • 建立网站第一步做网站好还是网店
  • 微博网站认证 备案名称win服务器做网站
  • 做轻时尚的网站做盗版电影网站问题
  • 想学做网站需要学什么收录快的门户网站
  • 西部数码网站备份青岛建站模板厂家
  • 外包公司属于劳务派遣吗关键词优化搜索引擎
  • 哪个浏览器能打开那种网站什么是电子商务行业
  • 二级网站都在一台服务器怎么做域名怎么在浏览器上面建网站
  • 辽宁丹东建设厅网站配资网站建设
  • 买卖链接网站营业范围中网站开发与网页设计
  • 保定网站制作策划wordpress与dz
  • 精品网站建设费用 c磐石网络珠海多语种网站制作