版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-------------作者:青 青 技术 硬件平台:青云QY-nRF51822开发 蓝牙BLE接收数据内部FLASH 3应用与调 测 青风带你玩蓝牙nRF51822系列 作者 青风电子社作者 青:淘宝店硬件平台:青云QY-nRF518222.2蓝牙BLEFLASH读很多朋友希望能够在协议栈的状态下对FLASHNRF51822BLE协议栈实际上是提供了FLASH库函数,采用这些库函数,能够很方便的在带协议栈的BLE工程中进行flash操作。本章将主要讲述如何采用FLASH写与读。1:nRF51822蓝牙内部FLASH处理函数在工程树中,专门提供了一个库函数pstorage.c文件为FLASH编写的 pstorage_inituint32_tuint32_t pstorage_handle_t 本函数用于的持久性接口功能@参数 模块的参@参数 标识符来标识的永久内存块时成 pstorage_handle_t*函数来获得你要操作的block_num(申请的block数量)@参数 在时收到的基块ID@参数 块编号,第一个块编号为零@参数 当API成功要求的块编号块标识符 uint8_t* uint8_t uint32_tuint32_tpstorage_load(uint8_t 上面三个函数就是内部FLASH 包含数据源地址 处理函数使用注意FLASH处理函数storeupdataflash数一个标志位FLAG,标志上次操作以及完成,避免发生数据堵塞错误。2:函数编写FLASH操作初始化FLASH读写,同时申请一个voidvoid{ pstorage_module_param_tmodule_param;module_param.block_count1;申请一个块module_param.cb=my_cb;//反馈函数 FLASHerr_code=pstorage_register(&module_param,&block_id);// ID}4:一个FLASH其中反馈函数,这里必须写出,回调返回状态机到底是哪一种my_cbOP_CODE判断出来状志位,决定是否继续FLASH操作。staticstaticvoidmy_cb(pstorage_handle_t*handle,uint8_top_code,uint32_tresult,uint8_t*p_data,uint32_tdata_len){{caseif(result=={{}{//Updateoperation}}上抛给app相应的sys_evt事件(类似sd会上抛给APPBLE的事件)。同时因为pstorage需要获得sys_evt(flashstaticstaticvoid{uint32_t//InitializeSoftDevice.//EnableBLEstack.#if(defined(S130)||defined(S132))err_code===//SubscribeforBLE} 非常特殊,它决定了协议栈下操作FLASH是否成功:staticstaticvoidsys_evt_dispatch(uint32_t{}FLASH读写验并且申请了操作地址。现在我们需要在发送数据过来的时候将数据更新到flash中。那么在ble_nus.c中的ble_nus_on_ble_evt函数中有对写事件的处理。处理是在函数on_write中做的,我们在这个函数中添加自己的代码:voidvoid{uint32_talign(4) uint8_tread[16]; err_code=pstorage_block_identifier_get(&m_data_num_handle,0,&block_handle);}主函数编主函数写一个测试函数,用于把我们写入到FLASH中的数据主函数写一个测试函数,用于把我们写入到FLASH中的数据主函数中直接调用flash_init();然后调用flash_test()函数FLASH内的intint{uint32_t //Initialize. err_code=for(;;){}3应用与 连接好后首先协议栈,本例使用的协议栈为S110.8.0版本,位于文件夹第4部打开 进行,可以参考软件篇介绍。如图所示,起始地址96K,首先整片擦除,后协议栈完后可以工
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025民用航空运输行业市场预测与技术演进
- 中班艺术亲子活动策划方案三篇
- 资信评估合同
- 酒店客房合同书
- 国内工业研发设计软件市场现状
- 粉刷承包合同
- 部编版七年级道德与法治上册《1.1.2少年有梦》听课评课记录
- 个人黑色奔驰出租合同
- 厨房设备购销合同书
- 农业种植项目投资合同
- 2024年新华文轩出版传媒股份有限公司招聘笔试参考题库含答案解析
- 课件:曝光三要素
- 春节文化研究手册
- 小学综合实践《我们的传统节日》说课稿
- 《铝及铝合金产品残余应力评价方法》
- IATF-16949:2016质量管理体系培训讲义
- 记账凭证封面直接打印模板
- 人教版八年级美术下册全册完整课件
- 北京房地产典当合同
- 档案工作管理情况自查表
- 毕业论文-基于51单片机的智能LED照明灯的设计
评论
0/150
提交评论