资源描述:
《电子科技大学中山学院微处理器实验报告 (7).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、微处理器实验报告班级13电科A姓名张益航学号2012010201070实验名称串口扩展实验实验时间2015年11月18日成绩教师签名批改时间报告内容一、实验目的和任务1、了解I2C串行通信的工作原理和信号标准。2、掌握AT24C64的工作原理和软件编程方法。二、实验原理简介I2C总线是Philips公司推出的二线制高性能串行总线,SDA为串行数据线,SCL为时钟号线;可以通过器件地址和器件上的子地址对从器件上的存储单元进行读写,并可以是多主模式的。AT24C64是一个I2C接口的EEPROM器件,共有6
2、4Kbit,可以分为256页,每一页有32字节。图3.7.1单片机与AT24C64连接原理图图3.7.2AT24C64页写时序图图3.7.3AT24C64随机读时序图图3.7.4AT24C64顺序读时序图三、实验设备1、PC机一台(已安装KeiluVision、STC_ISP等软件);2、ZSC-1单片机实验箱一台。四、实验内容和步骤1、向AT24C64从50H开始的10单元存入10个字符‘0’-‘9’。①在Keil9中编写源程序。参考程序如下(请将下划线部分补充完整):;向E2PROM的50H-59H
3、写入10个字节内容SDAEQUP3.3SCLEQUP3.6WNUMDATA40HWADDRDATA41HWBUFDATA42HRNUMDATA50HRADDRDATA51HRBUFDATA52HADDRSHEQU00HADDRSLEQU50HORG0000HAJMPMAINORG0040HMAIN:MOVSP,#5FHMOVWNUM,#10LCALLLDATAMOVWADDR,#0A0HMOVR1,#WBUFCALLWRNBMOVP0,#55HSJMP$LDATA:MOVDPTR,#TABMOVR1,#
4、WBUFMOVR7,#10MP1:MOVA,#0MOVCA,@A+DPTRMOV@R1,AINCDPTRINCR1DJNZR7,MP1RETTAB:DB"0123456789ABCDEF"$INCLUDE(I2C.ASM)ENDI2C:;起始信号STA:CLRSCLMOVR6,#5DJNZR6,$SETBSDAMOVR6,#5DJNZR6,$SETBSCL;起始条件建立时间大于4.7usMOVR6,#15DJNZR6,$9CLRSDAMOVR6,#15DJNZR6,$CLRSCL;钳住总线,准备发数据M
5、OVR6,#10DJNZR6,$RET;终止信号STP:CLRSDAMOVR6,#5DJNZR6,$SETBSCL;发送结束条件的时钟信号MOVR6,#15DJNZR6,$SETBSDA;结束总线MOVR6,#15DJNZR6,$CLRSCLMOVR6,#10DJNZR6,$SETBSCLRET;发送一个时钟脉冲信号SENDCLK:MOVR6,#40DJNZR6,$SETBSCLMOVR6,#25DJNZR6,$CLRSCLMOVR6,#10DJNZR6,$RET;发送应答位0ACK:CLRSDA;将S
6、DA置0LCALLSENDCLKRET;发送非应答位1NAS:SETBSDA;将SDA置1LCALLSENDCLKRET;应答位检查,正常应答时F0为1,否则为0ACKC:LCALLRBITRET;读一位数据到F0RBIT:MOVR6,#40DJNZR6,$SETBSDAMOVR6,#10DJNZR6,$SETBSCLMOVR6,#20DJNZR6,$MOVC,SDA9MOVF0,CCLRSCLMOVR6,#10DJNZR6,$RET;发送一个字节WRB:MOVR0,#8WLP1:RLCAMOVSDA,
7、CLCALLSENDCLKDJNZR0,WLP1LCALLRBITRET;读一个字节RDB:MOVR0,#8RLP1:LCALLRBITMOVC,F0RLCADJNZR0,RLP1RET;发送n个字节;R1--发送数据首地址;WNUM--发送字节数;WADDR--写寻址WRNB:LCALLSTAMOVA,WADDR;器件寻址CALLWRBJBF0,WFENDMOVA,#ADDRSH;地址高字节CALLWRBJBF0,WFENDMOVA,#ADDRSL;地址低字节CALLWRBJBF0,WFENDMOVR
8、7,WNUM;缓冲区字节数WRLP:MOVA,@R1;写入字节LCALLWRBJBF0,WFENDINCR1DJNZR7,WRLPWEND:LCALLSTPMOVR7,#00;延时X1:MOVR6,#00DJNZR6,$DJNZR7,X1RETWFEND:SETBSCLRET;读n个字节9;R1--存储数据首地址;RNUM--读字节数;RADDR--读寻址RDNB:LCALLSTAMOVA,WADDR;器件寻址LCALLWRBJBF0,RF