版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
-------------作者:青 青 技術 硬件平臺:青云QY-nRF51822開發(fā) 藍牙BLE接收數(shù)據(jù)內(nèi)部FLASH 3應用與調(diào) 測 青風帶你玩藍牙nRF51822系列 作者 青風電子社作者 青:淘寶店硬件平臺:青云QY-nRF518222.2藍牙BLEFLASH讀很多朋友希望能夠在協(xié)議棧的狀態(tài)下對FLASHNRF51822BLE協(xié)議棧實際上是提供了FLASH庫函數(shù),采用這些庫函數(shù),能夠很方便的在帶協(xié)議棧的BLE工程中進行flash操作。本章將主要講述如何采用FLASH寫與讀。1:nRF51822藍牙內(nèi)部FLASH處理函數(shù)在工程樹中,專門提供了一個庫函數(shù)pstorage.c文件為FLASH編寫的 pstorage_inituint32_tuint32_t pstorage_handle_t 本函數(shù)用于的持久性接口功能@參數(shù) 模塊的參@參數(shù) 標識符來標識的永久內(nèi)存塊時成 pstorage_handle_t*函數(shù)來獲得你要操作的block_num(申請的block數(shù)量)@參數(shù) 在時收到的基塊ID@參數(shù) 塊編號,第一個塊編號為零@參數(shù) 當API成功要求的塊編號塊標識符 uint8_t* uint8_t uint32_tuint32_tpstorage_load(uint8_t 上面三個函數(shù)就是內(nèi)部FLASH 包含數(shù)據(jù)源地址 處理函數(shù)使用注意FLASH處理函數(shù)storeupdataflash數(shù)一個標志位FLAG,標志上次操作以及完成,避免發(fā)生數(shù)據(jù)堵塞錯誤。2:函數(shù)編寫FLASH操作初始化FLASH讀寫,同時申請一個voidvoid{ pstorage_module_param_tmodule_param;module_param.block_count1;申請一個塊module_param.cb=my_cb;//反饋函數(shù) FLASHerr_code=pstorage_register(&module_param,&block_id);// ID}4:一個FLASH其中反饋函數(shù),這里必須寫出,回調(diào)返回狀態(tài)機到底是哪一種my_cbOP_CODE判斷出來狀志位,決定是否繼續(xù)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} 非常特殊,它決定了協(xié)議棧下操作FLASH是否成功:staticstaticvoidsys_evt_dispatch(uint32_t{}FLASH讀寫驗并且申請了操作地址?,F(xiàn)在我們需要在發(fā)送數(shù)據(jù)過來的時候將數(shù)據(jù)更新到flash中。那么在ble_nus.c中的ble_nus_on_ble_evt函數(shù)中有對寫事件的處理。處理是在函數(shù)on_write中做的,我們在這個函數(shù)中添加自己的代碼:voidvoid{uint32_talign(4) uint8_tread[16]; err_code=pstorage_block_identifier_get(&m_data_num_handle,0,&block_handle);}主函數(shù)編主函數(shù)寫一個測試函數(shù),用于把我們寫入到FLASH中的數(shù)據(jù)主函數(shù)寫一個測試函數(shù),用于把我們寫入到FLASH中的數(shù)據(jù)主函數(shù)中直接調(diào)用flash_init();然后調(diào)用flash_test()函數(shù)FLASH內(nèi)的intint{uint32_t //Initialize. err_code=for(;;){}3應用與 連接好后首先協(xié)議棧,本例使用的協(xié)議棧為S110.8.0版本,位于文件夾第4部打開 進行,可以參考軟件篇介紹。如圖所示,起始地址96K,首先整片擦除,后協(xié)議棧完后可以工
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 南朝山水詩課件
- 【課件】理財牛金融工程及程序化交易平臺
- 宏觀經(jīng)濟研究:2025年1月大類資產(chǎn)配置報告
- 單位管理制度展示合集【人員管理篇】十篇
- 中國清潔套裝行業(yè)投資潛力分析及行業(yè)發(fā)展趨勢報告
- 單位管理制度展示匯編【職工管理】
- 2024年上海市《消防員資格證之二級防火考試題庫》必刷1000題及參考答案【考試直接用】
- 單位管理制度品讀選集人力資源管理篇
- 《課程概述教學》課件
- 2025出租車司機勞動合同書范本
- 2023-2024學年貴州省遵義市新蒲新區(qū)八年級(上)期末數(shù)學試卷(含答案)
- 2022屆河北省石家莊市高一上學期期末考試化學試題(含解析)
- 2025年日歷臺歷中文版縱向排版帶節(jié)假日調(diào)休周日開始
- TB 10012-2019 鐵路工程地質勘察規(guī)范
- GB/T 19923-2024城市污水再生利用工業(yè)用水水質
- 2022-2023學年北京市海淀區(qū)高一(上)期末地理試卷
- 小學一年級班會課教案匯編 全冊
- 公司董事會、總經(jīng)理辦公會議事清單.docx
- 煤礦礦井供電設計(DOC26頁)
- 中國鶴翔莊氣功之五站樁功
- 走遍西班牙1~19筆記
評論
0/150
提交評論