• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      構(gòu)建基于24XX系列存儲器通用函數(shù)庫的研究

      2015-04-24 07:49:33唐玉兵秦祖銘
      時代農(nóng)機(jī) 2015年4期
      關(guān)鍵詞:函數(shù)庫低電平高電平

      唐玉兵,秦祖銘

      (瀘州職業(yè)技術(shù)學(xué)院 電子工程系,四川 瀘州 646005)

      構(gòu)建基于24XX系列存儲器通用函數(shù)庫的研究

      唐玉兵,秦祖銘

      (瀘州職業(yè)技術(shù)學(xué)院 電子工程系,四川 瀘州 646005)

      24XX系列EEPROM存儲器是目前電子產(chǎn)品開發(fā)中使用頻率較高的存儲設(shè)備,文章通過構(gòu)建基于該存儲器的驅(qū)動函數(shù)和應(yīng)用函數(shù)庫,既可以提高產(chǎn)品開發(fā)速度,又可以提升存儲器的讀寫穩(wěn)定性。

      i2c EEPROM;存儲器;函數(shù)庫

      24系列EEPROM存儲器是現(xiàn)代電子產(chǎn)品中使用非常廣泛的一種基于I2C協(xié)議的存儲器。24XX系列存儲器容量多種多樣,從24C01的128字節(jié)到24C512的64K都有,可以滿足不同產(chǎn)品的需要。筆者產(chǎn)品開發(fā)時也經(jīng)常用到24系列存儲器,本文旨在構(gòu)建通用的24XX系列存儲器函數(shù)庫,不管程序大小,均可方便使用,以節(jié)約下次用到該類存儲器時的開發(fā)時間。

      函數(shù)庫構(gòu)建主要包括兩部分內(nèi)容,一部分為存儲器的基本I2C驅(qū)動函數(shù),另一部分則為使用存儲器時的應(yīng)用函數(shù)。

      1 24XX系列存儲器通用I2C驅(qū)動函數(shù)的構(gòu)建

      (1)24XX存儲器的I2C協(xié)議時序圖。I2C驅(qū)動程序的編寫需要仔細(xì)閱讀I2C協(xié)議的時序圖,如下圖1所示。根據(jù)時序圖,按照時序要求把SCL和SDA分別置高電平或者低電平,即可完成存儲器的操作,語言用匯編語言或者C語言均可。時序中包含了啟動時序,讀寫時序和結(jié)束時序。

      (2)I2C開始函數(shù)i2c_start。參見圖1中的start condition部分,先置SCL和SDA信號為高電平,延時一段時間后SDA置低電平,SCL再置低電平即可。根據(jù)時序,可以寫出下列啟動函數(shù),I2C結(jié)束函數(shù)也類似。函數(shù)操作流程內(nèi)容如下:

      SDA=1;SCL=1;SDA=0;SCL=0;

      (3)I2C寫入函數(shù)i2c_sendbyte。參見圖1中的SDA INPUT部分,此時需要數(shù)據(jù)SDA處于穩(wěn)定狀態(tài),當(dāng)SCL信號由高電平變?yōu)榈碗娖綍r,把SDA信號的電平狀態(tài)寫入I2C存儲器。根據(jù)時序可以寫出下列寫入一個字節(jié)的函數(shù),讀取函數(shù)的寫法參見時序圖也類似。函數(shù)操作流程內(nèi)容如下:

      2 24XX系列存儲器通用應(yīng)用函數(shù)庫的構(gòu)建

      該存儲器的應(yīng)用函數(shù)庫構(gòu)建,主要為了滿足不同產(chǎn)品開發(fā)的需求,根據(jù)讀寫方向,一般有以下幾種情況:從存儲器讀取到內(nèi)存;從內(nèi)存寫入存儲器;從存儲器一個地址寫入存儲器的另一個地址。根據(jù)數(shù)據(jù)類型,讀寫操作的數(shù)據(jù)可以是字節(jié)、字、雙字、字符串和任意用戶自定義數(shù)據(jù)類型。

      基于這種用途,該應(yīng)用函數(shù)庫主要構(gòu)建下列幾個核心函數(shù),即:字節(jié)讀取函數(shù)i2c_readbyte,字節(jié)寫入函數(shù)i2c_writebyte,字讀取函數(shù)i2c_readword,字寫入函數(shù)i2c_writeword,字符串讀取函數(shù)i2c_readstr,字符串寫入函數(shù)i2c_writestr,存儲器存儲區(qū)域初始化函數(shù)i2c_setn,存儲器塊數(shù)據(jù)讀出到內(nèi)存函數(shù)i2c_copytomem內(nèi)存塊寫入存儲器函數(shù)i2c_copyfrommem,存儲器片內(nèi)復(fù)制函數(shù)i2c_copy。下面選取部分函數(shù)構(gòu)建情況作以說明。

      (1)讀取字節(jié)函數(shù)。24系列存儲器的讀取包括順序讀取和隨機(jī)讀取兩種。按照容量不同,讀取有區(qū)別,24C02和24C01容量不大于256字節(jié),操作的地址為8位;24C04及其以上,容量大于256字節(jié),無法用8位地址,用的是16位地址操作。根據(jù)讀取存儲器的操作流程,可以寫出24C04以上類型的讀取函數(shù)。函數(shù)操作流程內(nèi)容如下:

      圖1 I2C協(xié)議時序圖

      24C04以下類型采用8位地址操作,在編寫隨機(jī)讀取函數(shù)時,只需要把函數(shù)中分兩次8位寫入的地址,改為寫入一次8位地址即可。

      (2)存儲器的頁操作,為了提升存儲器的讀寫速度,24xx系列大容量存儲器支持頁操作,一次可以操作64或者128字節(jié)。存儲器頁寫入函數(shù),對于寫入大量數(shù)據(jù)可以大大地提高操作速度。對于一片存儲區(qū)域,分三段,開始和結(jié)束時的不滿64字節(jié)直接寫入,中間部分按照每次64字節(jié)寫入。函數(shù)操作流程內(nèi)容如下:

      3 結(jié)語

      24系列eeprom存儲器在產(chǎn)品開發(fā)時使用率很高,通過對24系列函數(shù)庫的構(gòu)建,可以大大提升開發(fā)速度,而且可以提升存儲器讀寫穩(wěn)定性。對該產(chǎn)品應(yīng)用編程有一定的指導(dǎo)意義。

      A Research on the Establishment of the Universal Function Library of the Memory of 24XX series

      TANG Yu-bing,QIN Zhu-ming
      (Department ofElectronic Engineering,Luzhou Vocational and Technical College,Luzhou,Sichuan 646005,China).

      EEPROM memory of 24XX series is a memory device frequently applied in the development of electronic products,in this paper,the driving function library and application function library directing at this memory were created, which would not only enhance the development speed,but also improve memory’s read-write stability.

      i2c EEPROM;memory;function library

      TP333

      A

      2095-980X(2015)04-0043-02

      2015-02-15

      唐玉兵(1979-),男,四川宜賓人,大學(xué)本科,講師,主要研究方向:嵌入式開發(fā)。

      猜你喜歡
      函數(shù)庫低電平高電平
      數(shù)字電路中“邏輯非”的用法辨析
      一種基于FPGA的PWM防錯輸出控制電路
      鐵道車輛高/低電平信號智能發(fā)生器設(shè)計
      用于優(yōu)化雷達(dá)信號處理的VSIPL函數(shù)庫
      基于Python的開源GIS應(yīng)用開發(fā)
      Scratch求最值和平均值
      電腦報(2020年34期)2020-09-12 14:03:42
      TS-03C全固態(tài)PDM中波發(fā)射機(jī)開關(guān)機(jī)控制電路原理及故障分析
      科技傳播(2019年15期)2019-08-22 08:07:44
      基于BB60C的IQ數(shù)據(jù)采集與存儲系統(tǒng)設(shè)計
      2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
      DM 50KW中波廣播發(fā)射機(jī)欠推動故障分析
      阿尔山市| 万山特区| 阿勒泰市| 五大连池市| 德阳市| 当阳市| 天气| 团风县| 老河口市| 柞水县| 仁化县| 高要市| 沐川县| 临武县| 肥东县| 环江| 梨树县| 云龙县| 高唐县| 县级市| 鲁山县| 平利县| 合江县| 威宁| 华蓥市| 秦皇岛市| 望谟县| 东阳市| 贵阳市| 乌拉特前旗| 阜阳市| 广河县| 荆州市| 漠河县| 丰顺县| 依安县| 红安县| 安图县| 比如县| 托克托县| 拜城县|