Proteus仿真I2C存储器实验_精品文档.doc
- 文档编号:695300
- 上传时间:2022-10-12
- 格式:DOC
- 页数:6
- 大小:111KB
Proteus仿真I2C存储器实验_精品文档.doc
《Proteus仿真I2C存储器实验_精品文档.doc》由会员分享,可在线阅读,更多相关《Proteus仿真I2C存储器实验_精品文档.doc(6页珍藏版)》请在冰豆网上搜索。
Proteus仿真IC存储器实验
一、实验目的
1、了解I2C总线的工作原理
2、掌握I2C总线驱动程序的设计和调试方法
3、掌握I2C总线存储器的读写方法
二、实验说明
1、I2C总线常识
I2C总线上的每个器件均由一个存储于该器件中的唯一地址来识别,并可被用作一个发送器或接收器(视其功能而定)。
AT24C02是一个2K位串行EEPROM,内部含有256个8位字节,AT24C02有一个8字节页写缓冲器,该器件通过I2C总线接口进行操作。
引脚名称和功能如图1所示。
图124系例I2C存储器引脚说明
通过器件地址输入端A0、A1和A2可以实现将最多8个24C02器件连接到总线上。
2、I2C总线协议
(1)只有在总线空闲时才允许启动数据传送。
(2)在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态,不允
许有跳变。
时钟线为高电平时,数据线的任何电平变化将被看作总线的起始或停止
信号。
(3)起始信号,时钟线保持高电平期间,数据线电平从高到低的跳变作为IC总线的起始信号。
(4)停止信号,时钟线保持高电平期间,数据线电平从低到高的跳变作为IC总线的停止信号。
IC总线时序:
3、页写操作的数据帧结构
根据页缓冲区的大小,页写的字节数不能超过缓冲区大小。
如果在发送停止信号之前主器件发送超过缓冲区大小,地址计数器将自动翻转,先前写入的数据被覆盖。
如图2所示。
图2页写操作数据帧结构
三、实验内容
先搭建一个“IC存储器实验”的仿真电路,该单片机系统功能是采用页写的方式,把器件地址为A0H的24C02器件的片内50H地址开始的8个存储单元分别写入数据“00、11、22、、、、、、77”。
四、.参考硬件电路
五、参考汇编程序
SDAEQUP3.5 ;定义24c02的串行数据线
SCLEQUP3.4;定义24c02的串行时钟线
SNUMEQU40H
SLAWEQU41H
ORG0000H
AJMPMAIN
ORG0040H
MAIN:
MOVSP,#5FH
LCALLLDATA
MOVSLAW,#0A0H;24c02的器件地址
MOVSNUM,#9 ;要发送9个字节数据
MOVR1,#30H ;数据缓冲区的首地址
CALLWRNB ;调用发送n个字节的子程序
SJMP$
LDATA:
MOVR0,#30H ;片内ram的地址:
30H31H32H33H34H35H…..
MOV@R0,#50H ;存放的数据:
50H00H11H22H33H44H……
INCR0
MOV@R0,#00H
INCR0
MOV@R0,#11H
INCR0
MOV@R0,#22H
INCR0
MOV@R0,#33H
INCR0
MOV@R0,#44H
INCR0
MOV@R0,#55H
INCR0
MOV@R0,#66H
INCR0
MOV@R0,#77H
RET
;起始信号
STA:
SETBSDA
SETBSCL
NOP
NOP
CLRSDA
NOP
NOP
CLRSCL
RET
;终止信号
STP:
CLRSDA
SETBSCL
NOP
NOP
SETBSDA
NOP
NOP
CLRSDA
CLRSCL
RET
;发应答位"0"
ASK:
CLRSDA
SETBSCL
NOP
NOP
CLRSCL
SETBSDA
RET
;发非应答位"1"
NAS:
SETBSDA
SETBSCL
NOP
NOP
CLRSCL
CLRSDA
RET
;应答位检查,正常应答时F0标志为0,否则F0为1
ASKC:
SETBSDA
SETBSCL
CLRF0
MOVC,SDA
JNCCEND;应答位为1,不置位F0
SETBF0
CEND:
CLRSCL
RET
;发送到24c02一个字节,预发送的数据存于A中
WRB:
MOVR0,#08H
LOOP0:
RLCA
MOVSDA,C
NOP
NOP
SETBSCL
NOP
NOP
NOP
NOP
CLRSCL
DJNZR0,LOOP0
RET
;--------------------------------*
;*函数名称:
WRNB*
;*功能描述:
对E2PROM指定的页写入SNUM个字节的数据*
;*调用函数:
STAWRBASKCSTP*
;*入口条件:
SLAW--I2C器件写地址*
;*R1-片内RAM发送数据缓冲区的首地址*
;--------------------------------*
WRNB:
LCALLSTA
MOVA,SLAW
LCALLWRB;写器件的写地址
LCALLASKC
JBF0,WRNB
WLP:
;向E2PROM写入SNUM个字节的数据
MOVA,@R1
LCALLWRB
LCALLASKC
JBF0,WRNB
INCR1
DJNZSNUM,WLP
LCALLSTP
RET
END
六、思考练习题
1、请说说I2C总线的优点有哪些?
2、编写程序,将自己学号写入24C02地址为30H开始的存储单元。
3、编写程序,将写入24C02的数据读出。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Proteus 仿真 I2C 存储器 实验 精品 文档