757第七章I2C总线器件应用.ppt
《757第七章I2C总线器件应用.ppt》由会员分享,可在线阅读,更多相关《757第七章I2C总线器件应用.ppt(18页珍藏版)》请在三一办公上搜索。
1、http:/电子技术论坛 http:/电子发烧友,第七章 I2C总线器件应用,第一节 I2C总线器件应用概述,、I2C总线工作原理,1I2C总线系统结构,I2C总线系统结构如图7-1所示。,图7-1 I2C总线系统结构图,蓉率刽展悉痒享没纬听王作穆邪豫答棍溪具岔指恢纠摘市幂逸抒任镇抽芥757-第七章 I2C总线器件应用757-第七章 I2C总线器件应用,http:/电子技术论坛 http:/电子发烧友,其中,SCL是时钟线,SDA是数据线。总线上的各器件都采用漏极开路结构与总线相连,因此,SCL、SDA均需接上拉电阻,总线在空闭状态下均保持高电平。,2I2C总线工作方式图7-2为I2C总线上进
2、行一次数据传输的通信格式。,图7-2 I2C总线上进行一次数据传输的通信格式,发送启动信号:在SCL为高电平期间,SDA出现下降沿则为启动信号。发送寻址信号:寻址信号由一个字节构成,高7位为地址位,最低位为方向位。应答信号:它由接收设备产生,在SCL信号为高电平期间,接收设备将SDA拉为低电平,表示数据传输正确,产生应答。,正鼠蹦元掉巴热缺零那铺鬃供皿统痛栽膳圣埠桥凝沙吵予聊壶诽唉声鹰菌757-第七章 I2C总线器件应用757-第七章 I2C总线器件应用,http:/电子技术论坛 http:/电子发烧友,数据传输:主机发送寻址信号并得到从器件应答后,进行数据传输,每次一个字节。非应答信号:当主
3、机为接收设备时,主机对最后一个字节不应答,以向发送设备表示数据传送结束发送停止信号:在全部数据传送完毕后,主机发送停止信号,即在SCL为高电平期间,SDA上产生一上升沿信号。,二、I2C总线数据传输方式模拟,1、I2C总线软件包组成启动信号子程序STA 停止信号子程序STOP停止信号子程序STOP 发送应答位子程序MACK发送非应答位子程序MNACK 应答位检查子程序CACK单字节发送子程序WRBYT 单字节接收子程序RDBYTn字节发送子程序WRNBYT n字节接收子程序RDNBYT,2、软件包程序,3、软件包应用,鹅僻隙哪煞驯筑爪谆包蚊铸颈抠拉坑罢杨龋擂害汀场摹持肇逼冯沿速氧窒757-第七
4、章 I2C总线器件应用757-第七章 I2C总线器件应用,http:/电子技术论坛 http:/电子发烧友,写操作:MOV SLA,#SLAW;寻址从器件写地址 MOV NUMBYT,#n+1;确定写入字节数 LCALL WRNBYT;以单片机数据缓冲区起始地址MTD中内容为从器 件写入首址,连续向从器件写入MTD+1单元起始的 n个数据。读操作:MOV SLA,#SLAR;寻址从器件读地址 MOV NUMBYT,#n;确写读取字节数 LCALL RDNBYT;将从器件中指定地址开始n个数据读入单片机中以 MRD作为起始地址的缓冲区中。,医镀动咙伊题鳃用誓硼冯蜜兢祝筋新捶峨勋痒蝶题讼鄂炭仗开沪
5、杏杯菲丧757-第七章 I2C总线器件应用757-第七章 I2C总线器件应用,http:/电子技术论坛 http:/电子发烧友,第二节 E2PROM AT24C系列应用,一、E2PROM存储器24LC16B的特点 是一个具有I2C总线接口的串行E2PROM器件。可解决掉电数据保持问题,且硬件电路简单。可对所存数据保存100年,并可多次擦写,擦写次数可达10万次。,二、E2PROM存储器24LC16B的工作原理,1、引脚配置与引脚功能SCL:串行时钟输入端。SDA:串行数据输入/输出(或地址输入)端。WP:写保护输入端。用于硬件数据保护。A0、A1、A2:页面选择地址输入端。VCC:+5 V电源
6、端。VSS:接地端。,图7-3 24LC16B的引脚图,2、存储结构与寻址,24LC16B的存储容量为2K,内部分成8个存储区域,每个存储区容量为256个字节,操作时有芯片寻址及片内子地址寻址。,琶悄烯旁炮潭搽镇舀舰恿住摘准斥玩监毒噪蹿夏蚤咖注前邯曹冻孔菱吹吗757-第七章 I2C总线器件应用757-第七章 I2C总线器件应用,http:/电子技术论坛 http:/电子发烧友,芯片寻址:24LC16B的芯片地址为1010,其地址控制字格式为1010A2A1A0 R/W。其中A2、A1、A0为片内存储区域选择位,R/为芯片读写控制位,该位为0,表示对芯片进行写操作,该位为1,表示对芯片进行读操作
7、。,片内子地址寻址:芯片寻址可指定进行芯片读、写的8个存储区之一,具体寻址片内某个子地址(字节地址)另需一个字节的子地址,其寻址范围为00HFFH,3、读、写操作时序,字节写入:单片机在一次数据帧中只访问E2PROM一个单元。发送格式如下图所示:,页写入方式:单片机在一个数据写周期内可以访问1页E2PROM存储单元。页写入帧格式下图所示:,尹云邵吱帚感来润贷跳凛殊您钥厩淖鸳匀敦奎覆得擂喜终钱挠蓝即俞誊驼757-第七章 I2C总线器件应用757-第七章 I2C总线器件应用,http:/电子技术论坛 http:/电子发烧友,指定地址读操作:读指定地址单元的数据。读操作的数据帧格式如下图所示:,指定
8、地址连续读:此种方式的读地址控制与前面指定地址读相同。,篙橇汲桃擎谭慕获舵倦崖材枢殆题褐轮堕彩雨薛畦斜挞眨柠圾宛频塑酬恤757-第七章 I2C总线器件应用757-第七章 I2C总线器件应用,http:/电子技术论坛 http:/电子发烧友,三、读/写操作应用,下图为24LC16B芯片的应用电路。编写程序,将单片机内存中21H26H中数据发送到24LC16B中以00H为首址的6个连续存储单元中,并将写入数据读回到单片机以38H为首址的接收缓冲区中。,本例中定义P1.5脚为E2PROM数据线(SDA),P1.4脚为时钟控制(SCL),发送数据缓冲区首址为20H,接收数据缓冲区首址为38H。编写程序
9、如下:,茂嚣笛襄抑珠辖仆蜘班都灰丫佛透甩灌贿块仪龟淬蛀埠实省萎滩夜达贱鬃757-第七章 I2C总线器件应用757-第七章 I2C总线器件应用,http:/电子技术论坛 http:/电子发烧友,SDA BIT P1.5;定义数据/地址引脚SCL BIT P1.4;定义时钟引脚SLAW EQU 0A0H;定义器件写地址SLAR EQU 0A1H;定义器件读地址SLA EQU 30H;定义寻址字节(SLAW/R)存放单元MTD EQU 20H;定义发送数据缓冲区首址 MRD EQU 38H;定义接收数据缓冲区首址NUMBYT EQU 10H;定义读/写字节数存放单元MOV SP,#50H;置堆栈指针
10、MOV MTD,#00H;置24LC16B芯片内读/写数据起始子地址MOV SLA,#SLAW;置器件写地址MOV NUMBYT,#07H;置写入字节数(1个子地址字节,6个数据字节)CALL WRNBYT;写入数据CALL DELAY;写入延时10msMOV SLA,#SLAW;置器件写地址MOV NUMBYT,#01HCALL WRNBYT;写入读起始地址,即MTD中内容00HCALL DELAY;写入延时MOV SLA,#SLAR;置器件读地址MOV NUMBYT,#06H;置读出数据字节数CALL RDNBYT;读出数据END,参考程序:,遇努滨巢纲僚坟企壶芬漆哗蜘协胜澈衔效柳硅滴席炭
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 757 第七 I2C 总线 器件 应用
链接地址:https://www.31ppt.com/p-4722019.html