久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 14640|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)24C02存儲器的數(shù)據(jù)復(fù)制器制作

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:76686 發(fā)表于 2015-4-12 02:56 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
       電子小制作24C02存儲器是基于I2C總線存儲器,是一種 采用I2C總線接口進(jìn)行數(shù)據(jù)存取的可擦除寫入存儲器件,廣泛應(yīng)用于音視頻設(shè)備之中。早期產(chǎn)品如M58655、PCF8581等等,現(xiàn)在大多使用24系列存 儲器件,如電視機(jī)中使用的24C02、24C04、24C08等等,用來存儲電視機(jī)收看節(jié)目使用的制式、語言、工作模式及頻道數(shù)據(jù)等信息。
       本文以24C02存儲器為例,介紹一下I2C總線存儲器的數(shù)據(jù)傳輸規(guī)范以及采用單片機(jī)對I2C總線存儲器進(jìn)行數(shù)據(jù)復(fù)制。
       圖為24C02存儲器的數(shù)據(jù)復(fù)制器電路原理圖。這種電路配合下文程序,可完成兩片存儲器N1、N2之間數(shù)據(jù)復(fù)制。程序設(shè)計(jì)以N2為讀取方,N1為寫入方,完成將存儲器N2中的數(shù)據(jù)復(fù)制到N1之中。




       24C02存儲器的數(shù)據(jù)復(fù)制器電路核心采用單片機(jī)電路89S51。一個(gè)完整的微機(jī)系統(tǒng)必須包括處理器、內(nèi)存(隨機(jī)存儲器)、ROM(程序存儲器)及輸入輸出接口這幾部分。所謂單片機(jī)就是將這幾部分集成到一塊電路中,從而形成一個(gè)完整的微機(jī)系統(tǒng),可以獨(dú)立完成一些較小的程序。現(xiàn)在單片機(jī)電路已經(jīng)很普遍了,遙控電視機(jī)中的微處理器就是一種最常見的單片機(jī)電路。單片機(jī)電路89S51內(nèi)部集成了128Byte的隨機(jī)存儲器RAM、4KByte的可擦寫程序存儲器ROM、P0-P3四個(gè)雙向輸入輸出端口、一個(gè)標(biāo)準(zhǔn)的異步通訊接口,用來與電腦COM口連接,進(jìn)行異步通訊。89S51并不具有標(biāo)準(zhǔn)的I2C總線通訊接口,這里僅通過軟件模擬,實(shí)現(xiàn)與標(biāo)準(zhǔn)I2C總線接口存儲器的數(shù)據(jù)通訊。
       存儲器N2、N1與單片機(jī)89S51通過SDA、SCL兩線,共同連接在一條I2C總線之上。N1的三位芯片地址線A0、A1、A2全部接地,N2的A0地址線則與正電源相接。這樣的連接可以為兩片同樣型號的存儲器設(shè)置了不同的芯片地址,這樣單片機(jī)就能通過芯片地址的不同對同一總線上的兩塊存儲器分別進(jìn)行讀寫操作了。存儲器N1、N2與電路的連接,采用插座方式。按放、拿取存儲器電路時(shí),需要使用開關(guān)“SW”將電源切斷,保證斷電操作。“復(fù)制”按鍵負(fù)責(zé)控制程序的運(yùn)行。
       連接好電路之后,接通電源,按動(dòng)“復(fù)制”鍵,程序進(jìn)入執(zhí)行,單片機(jī)依次讀取N2中的數(shù)據(jù),并將數(shù)據(jù)寫入到N1中,在這同時(shí)還將讀寫數(shù)據(jù)送入P0接口,通過P0接口的八只發(fā)光管顯示出來。數(shù)據(jù)復(fù)制完成后,發(fā)光管熄滅。
       24C02存儲器的數(shù)據(jù)復(fù)制器源程序
;==============================
sda EQU p2.0
scl EQU p2.1
address EQU 08H
i2cdate EQU 09H
sbit p37=p3^7
sbit p36=p3^6
org 0000H
ljmp start
;======================== 存儲器寫
i2c_write:
i2c_write_a:
lcall i2c_start
mov a,r6
lcall i2c_send
lcall i2c_ack
Jc i2c_write_a
mov a,address
lcall i2c_send
lcall i2c_ack
mov a,i2cdate
lcall i2c_send
lcall i2c_ack
lcall i2c_stop
ret
;========================存儲器讀
i2c_read:
i2c_read_a:
lcall i2c_start
mov a,r2
lcall i2c_send
lcall i2c_ack
Jc i2c_read_a
mov a,address
lcall i2c_send
lcall i2c_ack
i2c_read_b:
lcall i2c_start
mov a,r4
lcall i2c_send
lcall i2c_ack
Jc i2c_read_b
i2c_rece:
lcall i2c_receive
mov i2cdate,a
lcall i2c_ack
lcall i2c_stop
ret
;=======================總線啟動(dòng)
i2c_start:
setb scl
setb sda
nop
nop
clr sda
nop
nop
clr scl
ret
;=======================總線停止
i2c_stop:
clr sda
nop
nop
setb scl
nop
nop
setb sda
ret
;======================存儲器應(yīng)答
i2c_ack:
setb sda
nop
nop
setb scl
Jb sda,i2c_ack0
clr c
sjmp i2c_ack_end
i2c_ack0:
setb c
i2c_ack_end:
nop
nop
clr scl
ret
;=====================發(fā)送八位數(shù)據(jù)
i2c_send:
mov b,#08H
i2c_send1:
rlc a
mov sda,c
setb scl
nop
nop
clr scl
djnz b,i2c_send1
ret
;====================接收八位數(shù)據(jù)
i2c_receive:
mov b,#08H
clr a
setb sda
i2c_receive_a:
setb scl
nop
nop
mov c,sda
rlc a
clr scl
djnz b,i2c_receive_a
ret
;=======================延時(shí)程序
delay:
mov r1,#255
djnz r1,$
ret
;===============256字節(jié)數(shù)據(jù)復(fù)制程序
copy:
mov r5,#0
s:
mov r2,#10100010b
mov r4,#10100011b
call i2c_read
mov i2cdate,a
mov p0,a
mov r6,#10100000b
call i2c_write
inc address
djnz r5, s
mov p0,#255
ret
;=========================主程序
start:
mov SP,#60H
mov p0,#255
mov p1,#255
mov p2,#255
mov p3,#255
mov address,#00H
wai:
jb p37,$
call delay
jnb p37,$
call copy
ljmp wai
end
       使用Keil軟件對24C02存儲器的數(shù)據(jù)復(fù)制器源程序進(jìn)行編譯,并寫入AT89S51之中,就可以對24C02存儲芯片進(jìn)行復(fù)制了。對匯編程序進(jìn)行相應(yīng)改動(dòng),還可以適應(yīng)所有24系列存儲器之間的數(shù)據(jù)復(fù)制。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:428569 發(fā)表于 2018-11-18 10:53 來自手機(jī) | 只看該作者
你好,你的聯(lián)系方式?
回復(fù)

使用道具 舉報(bào)

板凳
ID:72088 發(fā)表于 2018-11-18 11:42 | 只看該作者
陽光花園 發(fā)表于 2018-11-18 10:53
你好,你的聯(lián)系方式?

你要版權(quán)起訴嗎,我看過原版書籍
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日韩一区二区在线看 | 午夜不卡福利视频 | 久草福利 | 久久免费视频网 | 91一区二区 | 日本中文字幕日韩精品免费 | aⅴ色国产 欧美 | 久久国产精品一区二区三区 | 美女视频网站久久 | 伊人网站视频 | 欧美日韩在线观看一区二区三区 | 欧美日韩一区二区三区不卡视频 | 日韩久久综合 | 麻豆天堂 | 一区二区福利视频 | 麻豆一区 | www.se91| 中文字幕亚洲专区 | 国产亚洲精品精品国产亚洲综合 | 免费观看毛片 | 国产精品久久久 | 夜夜骚视频 | 国产一区二区精品 | 亚洲成人播放器 | 一区二区三区高清在线观看 | 久久久久一区 | 九九爱这里只有精品 | 久久大陆 | 亚洲av毛片成人精品 | 91精品国产91久久久 | 精品国产乱码久久久久久丨区2区 | 成人免费视频观看视频 | 欧美在线一区二区三区 | 成人欧美一区二区三区色青冈 | 欧洲亚洲视频 | 国产美女特级嫩嫩嫩bbb片 | 国产一区免费 | 麻豆精品久久 | 精品免费国产一区二区三区四区 | 国产一区二区在线观看视频 | 一区二区视频在线 |