娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年06月02日(星期一)

2018年06月02日 | EEPROM(AT24C16)頁寫算法

發(fā)布者:書卷氣息 來源: eefocus關鍵字:EEPROM  AT24C16  頁寫算法 手機看文章 掃描二維碼
隨時隨地手機看文章

1.寫在前面

學習單片機或者從事嵌入式開發(fā)的,對于EEPROM絕不會陌生,尤其的24系列的EEPROM很是經(jīng)典,如AT24C02、AT24C16等。 驅動起這個系列的EEPROM,可以說是輕而易舉,各類教程、源碼、驅動都可以輕松找到并作稍微改動即可使用。

2.EEPROM頁寫算法

驅動起一片EEPROM,實現(xiàn)的功能不外乎就是讀、寫,不多贅述。在寫過程中,有一個“頁寫”功能,如果是大量數(shù)據(jù)寫入,采用“頁寫”功能會大大提高效率。記得以前學習單片機的時候,遵循的是某開發(fā)板的教程,其中的“頁寫”算法過于復雜,包括現(xiàn)在看來依然是比較累贅,所以已經(jīng)把好多人搞懵逼。而且網(wǎng)絡上大部分的源碼幾乎都是大同小異,質量不算高。大體思路是這樣的:用邏輯語句實現(xiàn),檢查寫入總數(shù)據(jù)字節(jié)數(shù)是否大于一頁,開始地址是否為頁的開始,剩下未滿一頁的數(shù)據(jù)怎樣處理。邏輯上來說,這樣處理還是非常好理解,但顯得過于累贅。邏輯用數(shù)學語句描述,則是算法,下面則是這樣的實現(xiàn)。

工作后,從Linux系統(tǒng)的驅動源碼中發(fā)現(xiàn)了EEPROM的“頁寫”新方法,幾句代碼即把前面一堆邏輯描述清楚,第一次體會到算法的神奇之處。作了一些修改,關鍵代碼如下。


  1. char ee_24clxx_writebytes(u16 write_addr, char* pwrite_buff, u16 writebytes)  

  2. {  

  3.     u8   write_len,page_offset;  

  4.     char error = 0;  

  5.       

  6.     while(writebytes > 0)  

  7.     {  

  8.         page_offset = EE24CLXX_PAGESIZE - (write_addr % EE24CLXX_PAGESIZE); /*EE24CLXX_PAGESIZE為頁大小,如24c16為16*/  

  9.         write_len   = writebytes > page_offset ? page_offset : writebytes;  

  10.         i2c_24clxx_write(write_addr,pwrite_buff, write_len);           /*寫一頁函數(shù)*/  

  11.         writebytes   = writebytes - write_len;  

  12.         if(writebytes > 0)  

  13.         {  

  14.             pwrite_buff = pwrite_buff + write_len;  

  15.             write_addr  = write_addr + write_len;  

  16.             i2c_24clxx_waitstandby(0);                  /*頁寫判忙,FRAM則不用*/  

  17.         }  

  18.     }  

  19.     return error;  

  20. }  


3.參考源碼

[1]  https://github.com/Prry/drivers-for-mcu

關鍵字:EEPROM  AT24C16  頁寫算法 引用地址:EEPROM(AT24C16)頁寫算法

上一篇:關于STM8S IAR 無法下載程序,以及無法進去中斷的問題
下一篇:STM32F030 硬件I2C驅動 AT24C16

推薦閱讀

2018年上半年市場需求冷淡,面板需求低迷,智能手機面板供給整體處于供過于求的狀態(tài),進入下半年,隨著市場旺季到來,預計面板供需比進一步收窄,同時受到DDIC(驅動芯片)缺貨影響,面板價格開始走向平穩(wěn)或部分規(guī)格存在價格上漲的壓力。需求面:預計三季度全球智能手機的面板總需求約5.3億部,環(huán)比增長約31.4%。從需求面看,2018年上半年,全球智能手機成長...
清潔、物流、陪伴……機器人正在越來越多地應用在人們的日常生活中。如今,在北京的民警基層工作中也將出現(xiàn)機器人的身影。未來,當你走在北京各個地區(qū)的公安服務大廳、派出所,將可以看到警務機器人在24小時無人警務室值守,在公安服務大廳幫助市民咨詢和引導辦理戶政業(yè)務、出入境業(yè)務。在室外的小區(qū)、園區(qū)中,也將能看到和警車配色相近的機器人進行巡邏...
6月2日,三菱重工有限公司于宣布,已完成對加拿大飛機巨頭龐巴迪公司的小型客機“CRJ”的維護和銷售服務業(yè)務的收購。購買價格約為590億日元。6月1日,三菱重工在加拿大蒙特利爾成立了一家新公司“MHIRJ航空集團”,接管了維護和客戶支持業(yè)務。新成立的企業(yè)集團“MHIRJ航空集團”擁有約1300名員工。負責龐巴迪小型客機“CRJ”的維護,客戶支持和銷售等業(yè)務...
傳統(tǒng)上,我們通常對示波器的四個常規(guī)指標如帶寬,采樣率,存儲和觸發(fā)的重要性都有很深刻的認識,本文在此不再贅述。本文將就示波器的本底噪聲對高速串行信號眼圖的調試和測試的影響作一探討。首先我們來看看示波器的本底噪聲來自于哪里?示波器的本底噪聲典型的數(shù)字示波器的架構如下圖1示:圖1 示波器的典型結構圖示波器的模擬帶寬主要取決于衰減器,其主...

史海拾趣

問答坊 | AI 解惑

電路板設計求救?急〉〉〉〉〉〉。

小弟要設計一電路板,輸出要求bnc接口的,求助各位高手直接焊到板子上的bnc接口的型號,及封裝?先謝拉。…

查看全部問答∨

這樣的干擾怎么解決?請賜教

本人設計的工業(yè)儀表,遇到這樣的問題:輸入信號0-20MV。當用手觸摸輸入端子的時候,顯示值會波動,這是什么干擾(好象是串模干擾),如何解決?注明:信號是經(jīng)過了2個模擬開關(CD4051),由OP07放大 再采樣。…

查看全部問答∨

2007年大學生電子設計競賽作品選

本帖最后由 paulhyde 于 2014-9-15 04:16 編輯 2007年大學生電子設計競賽作品選  …

查看全部問答∨

怎樣寫testbench

前段時間看到有人在問,現(xiàn)分享下 有vhdl的testbench詳細例子,verilog的誰有,給分享下…

查看全部問答∨

實在不想干了,怎么找老板要年終獎

最近很郁悶,實在不想干了,想拿年終獎走人。省得年底又趕上春運高峰,想問老板要年終獎,怎么說比較好啊?         多謝多謝。…

查看全部問答∨

晶振的好壞鑒別方法

晶振的好壞鑒別方法…

查看全部問答∨

LPC1114資料匯總

LPC1114 datasheet深度解析LPC1100低功耗設計的七個秘密以LPC1100產品進行設計32位MCU開發(fā)全攻略上32位MCU開發(fā)全攻略下LPC1000 系列 Q&A及支持 …

查看全部問答∨

pxa3XX 從CF卡上啟動nk.bin 的bootloader

    請問各位大俠有誰做過pxa310或者pxa270的bootloader 要求從CF卡啟動nk.bin       我應該用什么軟件來編譯,用wce6.0 還是ARM提供的AXD     是不是wce6.0下生成bootimage.nb0 就是bootloader 我用仿 ...…

查看全部問答∨

STVP的缺陷!

經(jīng)過驗證,STVP軟件對STM32燒錄的支持有重大缺陷.版本是3.2.0 問題是 1.    當不使用STVP的"project"菜單建立并打開STP工程文件時,只通過configure選擇STLINK及STM32型號,然后通過open打開一個.HEX文件進行下載,可以燒錄STM32( ...…

查看全部問答∨

FATFS下寫中文文件亂碼的問題

我在SD卡里面創(chuàng)建一個“我們.txt”文件,結果在PC機上看到文件名為“컒쏇.txt”。 創(chuàng)建“我們.txt”文件,并給此文件里面寫一段中文,里面的中文都很正常。就是文件名為“컒쏇.txt”   不過用FileScanName函數(shù)可以 ...…

查看全部問答∨
小廣播
設計資源 培訓 開發(fā)板 精華推薦

最新單片機文章

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發(fā)圈

 
機器人開發(fā)圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 保德县| 凌云县| 襄汾县| 新泰市| 礼泉县| 肃宁县| 淮南市| 富宁县| 雅江县| 南和县| 呼伦贝尔市| 张北县| 南和县| 神木县| 西安市| 耿马| 彭州市| 忻城县| 邵阳县| 湖南省| 福鼎市| 庐江县| 呼和浩特市| 湘潭市| 长岛县| 印江| 拉孜县| 永胜县| 四川省| 兴山县| 洞头县| 秦皇岛市| 博乐市| 方城县| 海安县| 疏附县| 蓝山县| 偏关县| 青川县| 辽阳市| 贞丰县|