99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何進(jìn)行AT24C02存儲芯片的串行E2PROM讀寫

Wildesbeast ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2020-05-05 16:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

24C02中帶有片內(nèi)地址寄存器。每寫入或讀出一個(gè)數(shù)據(jù)字節(jié)后,該地址寄存器自動(dòng)加1,以實(shí)現(xiàn)對下一個(gè)存儲單元的讀寫。所有字節(jié)均以單一操作方式讀取。為降低總的寫入時(shí)間,一次操作可寫入多達(dá)8個(gè)字節(jié)的數(shù)據(jù)。

;這是將0600H地址中以下的8個(gè)數(shù)據(jù)寫到24C02的01H為首址單元中去的匯編程序

ORG 0000H

SCL BIT P3.4;定義24C02的串行時(shí)鐘

SDA BIT P3.5;定義24C02的串行數(shù)據(jù)線

LJMP START

START:LCALL STAR;調(diào)用

MOV R2,#08H;一個(gè)數(shù)據(jù)有8位

MOV DPTR,#0600H;定義源數(shù)據(jù)的位置

LOOP:MOV A,#00H

MOVC A,@A+DPTR

LCALL SDATA

LCALL ACK

JC LOOP

INC DPTR

DJNZ R2,LOOP

LCALL STOP;調(diào)用停止子程序

STAR:SETB SDA

SETB SCL

NOP

NOP

NOP

NOP

CLR SDA

NOP

NOP

NOP

NOP

CLR SCL

RET

SDATA:MOV R0,#08H

LOOP0:RLC A

MOV SDA,C

NOP

NOP

SETB SCL

NOP

NOP

NOP

NOP

CLR SCL

DJNZ R0,LOOP0

RET

ACK:SETB SDA

NOP

NOP

SETB SCL

NOP

NOP

NOP

NOP

MOV C,SDA

CLR SCL

RET

STOP:CLR SDA

NOP

NOP

NOP

NOP

SETB SCL

NOP

NOP

NOP

NOP

SETB SDA

NOP

NOP

NOP

NOP

RET

ORG 0600H

DB 0A0H,10H,01H,02H,03H,04H,05H,06H

END

讀寫子程序如下:

;寫串行E2PROM子程序EEPW

; R3=10100000(命令1010+器件3位地址+讀/寫。 器件地址一個(gè)芯片,是000)

; (R4)=片內(nèi)字節(jié)地址

; (R1)=欲寫數(shù)據(jù)存放地址指針

; (R7)=連續(xù)寫字節(jié)數(shù)n

EEPW: MOVP1,#0FFH

CLRP1.0;發(fā)開始信號

MOVA,R3;送器件地址

ACALL SUBS

MOVA,R4;送片內(nèi)字節(jié)地址

ACALLSUBS

AGAIN: MOVA,@R1

ACALL SUBS;調(diào)發(fā)送單字節(jié)子程序INC R1

DJNZR7,AGAIN;連續(xù)寫n個(gè)字節(jié)

CLR P1.0;SDA置0, 準(zhǔn)備送停止信號

ACALLDELAY ;延時(shí)以滿足傳輸速率要求

SETB P1.1 ;發(fā)停止信號

ACALLDELAY

SETB P1.0

RET

SUBS: MOVR0,#08H ;發(fā)送單字節(jié)子程序

LOOP: CLRP1.1

RLCA

MOVP1.0,C

NOP

SETBP1.1

ACALL DELAY

DJNZR0,LOOP ;循環(huán)8次送8個(gè)bit

CLRP1.1

ACALL DELAY

SETBP1.1

REP: MOVC,P1.0

JCREP;判應(yīng)答到否,未到則等待

CLR P1.1

RET

DELAY: NOP

NOP

RET

;讀串行E2PROM子程序EEPR

;(R1)=欲讀數(shù)據(jù)存放地址指針

;; R3=10100001(命令1010+器件3位地址+讀/寫。 器件地址一個(gè)芯片,是000)

;(R4)=片內(nèi)字節(jié)地址

;(R7)=連續(xù)讀字節(jié)數(shù)

EEPR: MOVP1,#0FFH

CLRP1.0;發(fā)開始信號

MOVA,R3;送器件地址

ACALL SUBS ;調(diào)發(fā)送單字節(jié)子程序

MOVA,R4;送片內(nèi)字節(jié)地址

ACALL SUBS

MOVP1,#0FFH

CLRP1.0;再發(fā)開始信號

MOVA,R3

SETBACC.0;發(fā)讀命令

ACALL SUBS

MORE: ACALL SUBR

MOV@R1,A

INCR1

DJNZ R7,MORE

CLRP1.0

ACALL DELAY

SETB P1.1

ACALL DELAY

SETBP1.0 ;送停止信號

RET

SUBR: MOV R0,#08H ;接受單字節(jié)子程序

LOOP2: SETB P1.1

ACALL DELAY

MOVC,P1.0

RLCA

CLRP1.1

ACALL DELAY

DJNZ R0,LOOP2

CJNE R7,#01H,LOW

SETB P1.0;若是最后一個(gè)字節(jié)置A=1

AJMP SETOK

LOW: CLRP1.0;否則置A=0

SETOK: ACALL DELAY

SETB P1.1

ACALL DELAY

CLRP1.1

ACALL DELAY

SETBP1.0;應(yīng)答畢,SDA置1

RET

程序中多處調(diào)用了DELAY子程序(僅兩條NOP指令),這是為了滿足I2C總線上數(shù)據(jù)傳送速率的要求,只有當(dāng)SDA數(shù)據(jù)線上的數(shù)據(jù)穩(wěn)定下來之后才能進(jìn)行讀寫(即SCL線發(fā)出正脈沖)。另外,在讀最后一數(shù)據(jù)字節(jié)時(shí),置應(yīng)答信號為“1”,表示讀操作即將完成。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 存儲芯片
    +關(guān)注

    關(guān)注

    11

    文章

    935

    瀏覽量

    44167
  • AT24C02
    +關(guān)注

    關(guān)注

    0

    文章

    79

    瀏覽量

    24709
  • E2PROM
    +關(guān)注

    關(guān)注

    0

    文章

    29

    瀏覽量

    18965
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    半導(dǎo)體存儲芯片核心解析

    前言:什么是燒錄-義嘉泰帶你深度了解IC燒錄服務(wù): https://bbs.elecfans.com/jishu_2491063_1_1.html 1. 為什么需要存儲芯片? 計(jì)算機(jī)和人腦一樣,需要
    發(fā)表于 06-24 09:09

    求助,關(guān)于將固件編程到連接到CYUSB3014-BZXC的EEPROM中遇到的問題求解

    固件是否已正確寫入 I2C E2PROM (M24M02-DRMN6TP)。 我使用 USB 控制中心并按照以下步驟操作。 程序 ->FX3 -> I2C
    發(fā)表于 05-06 09:05

    基于APM32F407如何制作I2C EEPROM(AT24C02型號)的MDK-Keil下載算法

    基于APM32F407如何制作I2C EEPROM(AT24C02型號)的Keil下載算法,這樣在我們下載代碼時(shí)可以一鍵把數(shù)據(jù)燒錄到EEPROM中。
    的頭像 發(fā)表于 04-11 11:06 ?1224次閱讀
    基于APM32F407如何制作I<b class='flag-5'>2C</b> EEPROM(<b class='flag-5'>AT24C02</b>型號)的MDK-Keil下載算法

    【CW32模塊使用】AT24C02-EEPROM存儲

    可以在電腦上或?qū)S迷O(shè)備上擦除已有信息,重新編程。一般用在即插即用。AT24C02是一個(gè)2K位串行CMOS E2PROM, 內(nèi)部含有256個(gè)8位字節(jié),CATALYST公司的先進(jìn)CMOS
    的頭像 發(fā)表于 03-29 17:26 ?955次閱讀
    【CW32模塊使用】AT<b class='flag-5'>24C02</b>-EEPROM<b class='flag-5'>存儲</b>器

    DD10-36S24E3C2 DD10-36S24E3C2

    電子發(fā)燒友網(wǎng)為你提供AIPULNION(AIPULNION)DD10-36S24E3C2相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有DD10-36S24E3C2的引腳圖、接線圖、封裝手冊、中文資料、英文資料,DD10-36S24E3C2真值表,
    發(fā)表于 03-20 18:47
    DD10-36S<b class='flag-5'>24E3C2</b> DD10-36S<b class='flag-5'>24E3C2</b>

    DD6-05S24E3C2 DD6-05S24E3C2

    電子發(fā)燒友網(wǎng)為你提供AIPULNION(AIPULNION)DD6-05S24E3C2相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有DD6-05S24E3C2的引腳圖、接線圖、封裝手冊、中文資料、英文資料,DD6-05S24E3C2真值表,DD6
    發(fā)表于 03-20 18:46
    DD6-05S<b class='flag-5'>24E3C2</b> DD6-05S<b class='flag-5'>24E3C2</b>

    FK6-36S24E2C3 FK6-36S24E2C3

    電子發(fā)燒友網(wǎng)為你提供AIPULNION(AIPULNION)FK6-36S24E2C3相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有FK6-36S24E2C3的引腳圖、接線圖、封裝手冊、中文資料、英文資料,F(xiàn)K6-36S24E2C3真值表,F(xiàn)K6
    發(fā)表于 03-20 18:41
    FK6-36S<b class='flag-5'>24E2C</b>3 FK6-36S<b class='flag-5'>24E2C</b>3

    STM32F407的兩個(gè)USB口能否分別實(shí)現(xiàn)讀卡器和讀U盤的功能以及硬件IIC讀寫AT24C02?

    需求如下: 1.OTS_FS(PA 11,PA12)實(shí)現(xiàn)TF卡的讀卡器功能, 2.OTS_HS(PB14,PB15)實(shí)現(xiàn)讀寫U盤功能 3.硬件IIC(PB8,PB9)讀寫AT24C02
    發(fā)表于 03-11 06:23

    【AG32開發(fā)板體驗(yàn)連載】智能蒸烤箱--AG32VF407I2C總線測試

    E2PROM-24LC02BT的訪問,具體電路如下: 二、24LC02BT介紹 24LC02BT-I/SN是一款2Kb的EEPROM(電可擦除可編程只讀
    發(fā)表于 11-20 23:15

    數(shù)據(jù)保存100年!納祥科技國產(chǎn)EEPROM芯片NX24C02A,兼容替代AT24C02

    可擦可編程只讀存儲器。它是一種特殊的存儲芯片,它允許在有電源的情況下進(jìn)行多次擦除和編程操作,而數(shù)據(jù)一旦保存,即使斷電也不會丟失。因其具有存儲信息可靠性高、擦寫次數(shù)多的特點(diǎn),廣泛
    的頭像 發(fā)表于 11-14 01:08 ?1137次閱讀
    數(shù)據(jù)保存100年!納祥科技國產(chǎn)EEPROM<b class='flag-5'>芯片</b>NX<b class='flag-5'>24C02</b>A,兼容替代<b class='flag-5'>AT24C02</b>

    一文帶你了解什么是SD NAND存儲芯片

    單片機(jī)的開發(fā)上會對簡單的數(shù)據(jù)進(jìn)行存儲。   這里就以AT24C256存儲芯片來舉例,下圖是該芯片的內(nèi)部結(jié)構(gòu)圖 。   可以看出主要是以II
    發(fā)表于 11-13 15:20

    pcm2706的iic可以進(jìn)行寫操作嗎?

    pcm2706的iic 可以進(jìn)行寫操作嗎?比如說:pcm2706通過iic對外掛的 at24C02 存儲芯片進(jìn)行寫操作?
    發(fā)表于 11-08 07:48

    怎么將PPS中已經(jīng)編譯好的圖形才程序,燒寫到TLV320AIC3254EVM-K的E2PROM?

    怎么將PPS中已經(jīng)編譯好的圖形才程序,燒寫到板上的E2PROM???
    發(fā)表于 10-31 07:32

    英銳芯AD24C02_16-Byte(中性)

    AD24C02是一款串行電可擦除編程只讀存儲器(EEPROM)。存儲器可存儲256個(gè)字節(jié)數(shù)據(jù),分為16頁 每頁16字節(jié),隨機(jī)字尋址需要8位數(shù)
    發(fā)表于 09-09 15:08 ?0次下載

    存儲芯片有哪些類型

    存儲芯片,又稱為半導(dǎo)體存儲器,是以半導(dǎo)體電路作為存儲媒介的存儲器,廣泛應(yīng)用于計(jì)算機(jī)、消費(fèi)電子、智能終端、固態(tài)存儲硬盤等領(lǐng)域。按照不同的分類標(biāo)
    的頭像 發(fā)表于 07-24 16:40 ?5168次閱讀